【问题标题】:How to write the CMakeLists.txt file when use cuda-gdb?使用 cuda-gdb 时如何编写 CMakeLists.txt 文件?
【发布时间】:2022-08-15 19:45:34
【问题描述】:

我的 CMakeLists.txt:

cmake_minimum_required(VERSION 3.16)
project(cmake_and_cuda CUDA CXX C)
find_package(CUDA REQUIRED)

set(CMAKE_CUDA_COMPILER /usr/local/cuda-11.4/bin/nvcc)
set(CMAKE_CUDA_FLAGS ${CMAKE_CUDA_FLAGS} \" -g -G \")  # enable cuda-gdb

cuda_add_executable(a a.cu)

我的 cuda 代码:

#include<stdio.h>
__global__ void helloFromGPU(void){
    printf(\"Hello  thread %d!\\n\",threadIdx.x);
}

int main(void){

    helloFromGPU<<<1,10>>>();
    cudaDeviceReset();
    return 0;
}

然后我用CUDA-gdb在函数helloFromGPU(void)处添加断点,但是我无法进入内核函数helloFromGPU(void),函数结束处程序中断。

我认为cmake文件没有正确写入,我该如何修改它?

    标签: cmake cuda cuda-gdb


    【解决方案1】:

    设置“CUDA_NVCC_FLAGS”如下:

    set(
            CUDA_NVCC_FLAGS
            ${CUDA_NVCC_FLAGS};
            -g -G
    )
    

    【讨论】:

      猜你喜欢
      • 2020-01-13
      • 1970-01-01
      • 2018-09-20
      • 1970-01-01
      • 2021-01-22
      • 2019-04-16
      • 1970-01-01
      • 2020-09-08
      相关资源
      最近更新 更多