- 737 名前:734 [2009/06/21(日) 17:50:38 ]
- >>735
例えば、今は __global__ void test(int thread_size, int one_size, float *res_d) { int bx = blockIdx.x; int tx = threadIdx.x; int pos = bx * thread_size + tx; if (pos==0) res_d[pos] = cos(res_d[pos]); else res_d[pos] = sin(res_d[pos]); } このように、if文で0とN-1の場合だけ別の処理をするようにしているのですが、if文は遅くなるので、避けたいのですが。 具体的にやりたいのは、3次元の偏微分方程式を解く際の境界条件部分の計算です。 この場合各面、各辺、各頂点合わせてif文が20個以上になってしまいます。 何か良い方法はないでしょうか?
|

|