I test the sample codes :
#include <cuda_runtime.h>
#include <iostream>
__global__ void myKernel() {
printf("Hello from thread %d\n", threadIdx.x);
}
int main() {
dim3 grid(1);
dim3 block(256);
cudaLaunchKernel((void*)myKernel, grid, block, nullptr, 0, 0);
cudaDeviceSynchronize();
return 0;
}
when i run this test, it hangs at:
(cuda-gdb) bt
#0 0x0000fffff6132aa4 in ?? () from /lib/aarch64-linux-gnu/libcuda.so.1
#1 0x0000fffff5f37e34 in ?? () from /lib/aarch64-linux-gnu/libcuda.so.1
#2 0x0000fffff6214dc0 in ?? () from /lib/aarch64-linux-gnu/libcuda.so.1
#3 0x0000fffff6215104 in ?? () from /lib/aarch64-linux-gnu/libcuda.so.1
#4 0x0000fffff5f4a4f8 in ?? () from /lib/aarch64-linux-gnu/libcuda.so.1
#5 0x0000fffff5ff4904 in ?? () from /lib/aarch64-linux-gnu/libcuda.so.1
#6 0x0000fffff5fe7be4 in ?? () from /lib/aarch64-linux-gnu/libcuda.so.1
#7 0x0000fffff5fe8544 in ?? () from /lib/aarch64-linux-gnu/libcuda.so.1
#8 0x0000fffff6169d64 in ?? () from /lib/aarch64-linux-gnu/libcuda.so.1
#9 0x0000fffff61708fc in ?? () from /lib/aarch64-linux-gnu/libcuda.so.1
#10 0x0000fffff6130474 in ?? () from /lib/aarch64-linux-gnu/libcuda.so.1
#11 0x0000fffff5f8358c in ?? () from /lib/aarch64-linux-gnu/libcuda.so.1
#12 0x0000fffff5f899cc in ?? () from /lib/aarch64-linux-gnu/libcuda.so.1
#13 0x0000fffff5ed8da0 in ?? () from /lib/aarch64-linux-gnu/libcuda.so.1
#14 0x0000fffff6024850 in ?? () from /lib/aarch64-linux-gnu/libcuda.so.1
#15 0x0000aaaaaaad7b18 in libcudart_static_5449a5077e9603031b6d1a024d25647afd27a0ba ()
#16 0x0000aaaaaaad7d6c in libcudart_static_ad9262876fc0252a7a95dbc876859d40746b0b56 ()
#17 0x0000aaaaaaad8918 in libcudart_static_19d132c815f85334ee1756d16281ce95ea02e148 ()
#18 0x0000aaaaaaaaf8f4 in libcudart_static_4d8b33a106dceb3c07a56e26de61f2d53bb62a68 ()
#19 0x0000aaaaaab03138 in cudaLaunchKernel ()
#20 0x0000aaaaaaaa9e60 in main () at /home/cmic/lktest.cu:13
Note: For my hw platform, there is no cache coherence support for AXI interconnet bus. I’m not sure that’s what’s causing the problem.