Cmake
にcuda
カーネルモジュールを埋め込んだCプロジェクトがあります。
表示するために--ptxas-options=-v
のみをnvcc
に渡したいスレッドあたりのレジスタ使用数およびブロックあたりの共有メモリ使用量。
nvcc
のCmake
にフラグを渡す方法を検索することで、解決策を見つけました。
add_compile_options(myprog
PRIVATE
$<$<COMPILE_LANGUAGE:C>:-Wall>
$<$<COMPILE_LANGUAGE:CUDA>:-Arch=sm_20 -ptxas-options=-v>
)
しかし、これは私に上記のプロパティを表示しませんでした。これらのフラグはnvcc
に正しく渡されていないと思います。
--ptxas-options=-v
をnvcc
コンパイラに渡すにはどうすればよいですか?
どうですか?...
find_package( CUDA REQUIRED )
set( CUDA_NVCC_FLAGS "${CUDA_NVCC_FLAGS}" "--ptxas-options=-v" )
include_directories( ${CUDA_INCLUDE_DIRS} )
cuda_add_library( kernel_lib ${sources} )
オンラインでCMakeCUDAのドキュメントも確認できます... https://cmake.org/cmake/help/latest/module/FindCUDA.html