我对内核函数中的 char 类型有疑问。我想将大字符类型拆分为小字符类型。
__global__ void kernelExponentLoad(char* BiExponent,int lines){
// BiExponent is formed from 80x100000 numbers
const int numThreads = blockDim.x * gridDim.x;
const int threadID = blockIdx.x * blockDim.x + threadIdx.x;
for (int k = threadID; k < 100000; k += numThreads){
char* cstr = new char[80];
for(int i=0; i<80; i++){
cstr[i] = BiExponent[(k*80)+i];
...
delete[] cstr;
}
}
}
这是我的解决方案不起作用 - 内核在启动后崩溃(停止工作)。“char *BiExponent”中的数据正常(函数 printf 工作正常)。