同じCUDAソースファイル内で、異なるものを計算する2つのグローバル関数を別々に書くことはできますか?このようなもの:同じCUDAソースファイル内の複数のグローバル関数
__global__ void Ker1(mpz_t *d,mpz_t *c,mpz_t e,mpz_t n)
{
int i=blockIdx.x*blockDim.x + threadIdx.x;
mpz_powm (d[i], c[i], e, n);
}
__global__ void Ker2(mpz_t *d,mpz_t *c,mpz_t d, mpz_t n)
{
int i=blockIdx.x*blockDim.x + threadIdx.x;
mpz_powm(c[i], d[i],d, n);
}
int main()
{
/* ... */
cudaMemcpy(decode_device,decode_buffer,memSize,cudaMemcpyHostToDevice);
Ker1<<<dimGrid , dimBlock >>>(d_device,c_device,e,n);
Ker2<<<dimGrid , dimBlock>>>(c_device,d_device,d,n);
cudaMemcpy(decode_buffer,decode_device,memSize,cudaMemcpyDeviceToHost);
}
もしそうなら、あなたはどうしますか?
タグをスパムしないでください。 – Olaf
ただ試してみてください... – tera
同じソースファイルに書かれた別のカーネルに関する質問に答えようとしました。しかし、次回は質問を改善することを検討してください。 – Taro