私は123MBの大きな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()
は多くの場合(約500億回)呼び出されますが、c
速度を上げることができるかどうか(およびその方法)を知りたいと思います。
私はすでに、すべてのCPUを使用する固定配列で安全でない関数を使用しています。これは、RayWによるTwoPlusTwo 7カードエバリュエーターのC#ポートです。C++バージョンはわずかに高速です。
GPUを使用してこれを高速化できますか?