运行示例CUDA应用程序的正确方法?
我正试图在Ubuntu 16.04 ARM上启动示例cuda应用程序运行示例CUDA应用程序的正确方法?,cuda,Cuda,我正试图在Ubuntu 16.04 ARM上启动示例cuda应用程序vectorAdd。我使用.cu文件进入目录,运行sudo make,然后运行/vectorad。结果是 [Vector addition of 50000 elements] Copy input data from host memory to CUDA device CUDA kernel launch with 196 blocks and 256 threads Copy output data from CUDA d
vectorAdd
。我使用.cu
文件进入目录,运行sudo make
,然后运行/vectorad
。结果是
[Vector addition of 50000 elements]
Copy input data from host memory to CUDA device
CUDA kernel launch with 196 blocks and 256 threads
Copy output data from CUDA device to the host memory
Test PASSED
Done
这是运行此应用程序的正确方法吗?如果是的话,为什么我不能输入两个样本向量数据,并看到像常规C或C++程序那样的输出?非常感谢您的帮助。不要将此示例视为“通过
std::cin输入向量”程序:向量是在运行时生成的,只要GPU正确求和,它们的值就无关紧要
// Initialize the host input vectors with random values
for (int i = 0; i < numElements; ++i)
{
h_A[i] = rand()/(float)RAND_MAX;
h_B[i] = rand()/(float)RAND_MAX;
}
//使用随机值初始化主机输入向量
对于(int i=0;i
结果随后也会在CPU上进行验证
这是运行此应用程序的正确方法吗
是的,它符合我刚才写的。因为这就是示例代码的编写方式。如果您是一名程序员,您可以很容易地进入并修改代码,使其按照您建议的方式运行。不管怎样,您运行代码的方法是正确的。有没有办法让我检查结果是否得到验证,或者测试通过了行本身是否与验证相符?@sam:您可以阅读代码而不是提问here@sam阅读源代码:如果CPU验证成功,它将打印测试通过
。