私は初めて次のマルチGPUCUDAコードを持っています:
int main( void ) {
int count;
cudaGetDeviceCount( &count );
float** gtt = new float*[count];
for (int i=0; i< count; i++) {
cudaSetDevice(i);
int j;
cudaGetDevice(&j);
printf("get device %d\n",j);
cudaMalloc((void**)>t[i], 2*sizeof(float));
cudaFree(gtt[i]);
}
}
同じノードで3つのデバイスが見つかりましたが、実行中の2番目のGPUでセグメント障害が発生しました。私は4010のCUDAバージョンと2.0の計算能力を持っています。