例如, cudaMalloc((void**)&device_array, num_bytes);
之前已经问过这个问题,回复是"因为cudaMalloc返回错误代码",但是我没有得到它 - 什么有双指针与返回错误代码有什么关系?为什么一个简单的指针不能完成这项工作?
如果我写
cudaError_t catch_status;
catch_status = cudaMalloc((void**)&device_array, num_bytes);
Run Code Online (Sandbox Code Playgroud)
错误代码将被放入catch_status,并返回一个指向分配的GPU内存的简单指针就足够了,不应该吗?