Ускорение поиска в массиве после обхода?
У меня большой 123МБint
массив, и он в основном используется так:
private static int[] data = new int[32487834];
static int eval(int[] c)
{
int p = data[c[0]];
p = data[p + c[1]];
p = data[p + c[2]];
p = data[p + c[3]];
p = data[p + c[4]];
p = data[p + c[5]];
return data[p + c[6]];
}
eval()
называется много (~ 50B раз) с разнымиc
и я хотел бы знать, если (и как) я мог бы ускорить это.
Я уже используюнебезопасная функция с фиксированным массивом это использует все процессоры. Это порт C #TwoPlusTwo 7 оценщик карт от RayW, Версия C ++ незначительно быстрее.
Можно ли использовать GPU для ускорения этого?