我目前有一个类似这样的并行for循环:
int testValues[16]={5,2,2,10,4,4,2,100,5,2,4,3,29,4,1,52};
parallel_for (1, 100, 1, [&](int i){
int var4;
int values[16]={-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1};
/* ...nested for loops */
for (var4=0; var4<16; var4++) {
if (values[var4] != testValues[var4]) break;
}
/* ...end nested loops */
}
我已经尽力优化到了极限,唯一能做的就是增加更多资源。
我想利用GPU并行处理任务。我读过类似这样的 embarrassingly parallel 任务可以很有效地利用现代GPU。
使用任何语言,如何最简单地将GPU用于类似这样的简单并行for循环?
我对GPU架构或本地GPU代码一无所知。
parfor
)和Nvidia CUDA GPU上的矩阵数学。这两个都相对容易,只需要对现有的MATLAB代码进行适度的更改即可。 - Li-aung Yip