Research Article
Adaptation of MPDATA Heterogeneous Stencil Computation to Intel Xeon Phi Coprocessor
Algorithm 1
Part of MPDATA implementation.
//stage 1 | for i-dim | for j-dim | for k-dim | f1[i][j][k] = xIn[i][j][k] * max(0.0, u1[i][j][k]) | - xIn[i-1][j][k] * (-min(0.0, u1[i][j][k])); | //stage 2 | for i-dim | for j-dim | for k-dim | f2[i][j][k] = xIn[i][j][k] * max(0.0, u2[i][j][k]) | - xIn[i][j-1][k] * (-min(0.0, u2[i][j][k])); | //stage 3 | for i-dim | for j-dim | for k-dim | f3[i][j][k] = xIn[i][j][k] * max(0.0, u3[i][j][k]) | - xIn[i][j][k-1] * (-min(0.0, u3[i][j][k])); | //stage 4 | for i-dim | for j-dim | for k-dim | xOut[i][j][k] = xIn[i][j][k] - (f1[i+1][j][k] | - f1[i][j][k] + f2[i][j+1][k] - f2[i][j][k] | + f3[i][j][k+1] - f3[i][j][k])/h[i][j][k]; | /*⋯*/ |
|