我想知道什么是JCuda项目的最佳调试器(如果存在)
我知道对于普通的CUDA应用程序,有cuda-gdb和cuda-memcheck等工具,我想知道我是否可以将它们中的任何一个或类似的用于JCuda项目。
谢谢!
答案 0 :(得分:4)
您应该能够使用常规CUDA调试器(例如Nsight或cuda-gdb)来调试JCuda应用程序中的GPU代码。您可以使用Java调试器(例如Eclipse)来调试Java代码。 没有调试器可以无缝地调试Java和CUDA代码。
答案 1 :(得分:1)
在Linux上,您可以使用Nvidia Nsight(cuda-gdb)。
设置启动可执行文件的调试会话:
=ARRAYFORMULA(TRANSPOSE(SPLIT(CONCATENATE(REPT(A1:A5&"",2)),"")))
或任何正确的路径/usr/bin/java
由于Java在内部使用分段错误有些过于巧妙的目的,因此您需要使用以下GDB选项创建一个文件,并将其指向“CUDA GDB init文件”。请注意,通过设置此选项,您将无法捕获自己的JNI代码中的分段错误错误。这应该不是问题。
-jar target/MyApp.jar
如果使用调试符号编译内核,则可以调试它们。