Parallel processing 有人能帮我理解矢量化吗?
我真的很想把我的头绕在矢量化上,但我似乎不理解它。我不知道我是否不懂如何矢量化,或者我是否不懂正在使用的数组表示法。我与学校合作的一个循环示例如下:Parallel processing 有人能帮我理解矢量化吗?,parallel-processing,vectorization,Parallel Processing,Vectorization,我真的很想把我的头绕在矢量化上,但我似乎不理解它。我不知道我是否不懂如何矢量化,或者我是否不懂正在使用的数组表示法。我与学校合作的一个循环示例如下: for (M=0; M< number_of_iterations/2; M++){ for (i=2; i<n-1; i++) for (j=1; j<n-1; j++) y[i][j]= (x[i-1][j]+x[i][j-1]+x[i+1][j]+x[i][j+1]+x[i-2]
for (M=0; M< number_of_iterations/2; M++){
for (i=2; i<n-1; i++)
for (j=1; j<n-1; j++)
y[i][j]= (x[i-1][j]+x[i][j-1]+x[i+1][j]+x[i][j+1]+x[i-2][j])/5.;
for(M=0;M<迭代次数/2;M++){
对于(i=2;i假设x
和y
是完全不重叠的不同数组,则不存在相关性。x
从不更改,所有计算的结果仅取决于x
。任何计算都不取决于先前计算的结果
该循环中使用的计算和赋值可以以任何顺序和并发方式进行。首先,我建议您使用brakets{}来组织代码行并更好地理解它。
第二,看看这一页:
Thirg,总是从简单的例子开始,以免混淆