nnabla-ext-cudaのインストール時のエラーについて

143 views
Skip to first unread message

NikuQ

unread,
Jun 26, 2024, 2:56:52 AM6/26/24
to Neural Network Console Users (JP)
お世話になります、色々と試してみたのですが
nnabla-ext-cudaのcpplibのビルドにおいてDebugオプションをセットした場合に
どうしても特定のエラーが出てしまってビルドが成功しないため、ご助言をいただけると大変助かります。

ちなみにnnablaは
https://github.com/sony/nnabla/blob/master/doc/build/build_windows.md
の通りにビルド(Release Debug両方)に問題ありません。
nnabla-ext-cudaは
https://github.com/sony/nnabla-ext-cuda/blob/master/doc/build/build_windows.md
に従ってビルドしたときにコマンドプロンプトから
set build_type=Debug
としてビルドしたときにこのようなエラーが出ます(Releaseビルドは問題ありません)

------------------------------------------------------------------------------------------------------------------
cutensor_static.lib(permute_sm61_czz.cu.obj) : error LNK2038: '_ITERATOR_DEBUG_LEVEL' の不一致が検出されました。値 '0' が 2 の 値 'cuda_array.ob
j' と一致しません。 [C:\share\nnabla_win_vc16\nnabla-ext-cuda\build_120_8\src\nbla\cuda\nnabla_cuda_120_8.vcxproj]
cutensor_static.lib(permute_sm61_czz.cu.obj) : error LNK2038: 'RuntimeLibrary' の不一致が検出されました。値 'MD_DynamicRelease' が MDd_Dynami
cDebug の値 'cuda_array.obj' と一致しません。 [C:\share\nnabla_win_vc16\nnabla-ext-cuda\build_120_8\src\nbla\cuda\nnabla_cuda_120_8.vcxp
roj]
     ライブラリ C:/share/nnabla_win_vc16/nnabla-ext-cuda/build_120_8/bin/Debug/nnabla_cuda_120_8.lib とオブジェクト C:/share/nnabla_win_vc
  16/nnabla-ext-cuda/build_120_8/bin/Debug/nnabla_cuda_120_8.exp を作成中
LINK : warning LNK4098: defaultlib 'MSVCRT' は他のライブラリの使用と競合しています。/NODEFAULTLIB:library を使用してください。 [C:\share\nnabla_win_vc16\nna:
bla-ext-cuda\build_120_8\src\nbla\cuda\nnabla_cuda_120_8.vcxproj]
C:\share\nnabla_win_vc16\nnabla-ext-cuda\build_120_8\bin\Debug\nnabla_cuda_120_8.dll : fatal error LNK1319: 268 の不一致が検出 されました [
C:\share\nnabla_win_vc16\nnabla-ext-cuda\build_120_8\src\nbla\cuda\nnabla_cuda_120_8.vcxproj]
failed with error code 1.
-------------------------------------------------------------------------------------------------------------------
環境は以下の通りです

OS : Windows 11 Pro 64bit
Ver: 23H2

NVIDIA グラフィックスドライバー:552.55
CUDA-Toolkit:12.0    cuda_12.0.0_527.41_windows
cuDNN       :8.8     cudnn-windows-x86_64-8.8.0.121_cuda12-archive
--------------------
c:\>nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2022 NVIDIA Corporation
Built on Mon_Oct_24_19:40:05_Pacific_Daylight_Time_2022
Cuda compilation tools, release 12.0, V12.0.76
Build cuda_12.0.r12.0/compiler.31968024_0
---------------------------------------------------------------

Microsoft .NET SDK 8.0.302

Visual Studio Community2019
Ver:16.11.37
Visual Studio Build Tools 2019
Ver:16.11.37

Windows11 SDK(10.0.22000.0)



nnablaおよびnnabla-ext-cudaは最新のものを使用していますが
過去ソースやCUDA,cuDNNのバージョン違いのもの(CUDA11.6/cuDNN8.4)でも同じエラーが起きるので
私の環境に問題があるか、もしくはDebugオプションの指定の仕方に問題があるか、vs16に何か指定する箇所があるかではないかと思っていますが
解決方法が分からず八方ふさがりになっています。

どうぞよろしくお願い致します。
スクリーンショット 2024-06-26 155051.png
スクリーンショット 2024-06-26 155312.png

NikuQ

unread,
Oct 24, 2024, 3:31:03 AM10/24/24
to Neural Network Console Users (JP)
その後、いろいろと試しましたがCUDA11.0とcuDNN8.0.2でnnabla-ext-cuda-1.29.0まではDebugビルドを確認できました。
それ以降のnnabla-ext-cuda(1.30.0以降)はDebugビルドで同様のエラーがでてdllファイルが作成されません。
吐き出されたコメントを見るとcutensorのライブラリとの関連しているようですが、vc14のオプションを変更してもビルド不可です。
これらの現象を
にあげておいた方がよいのでしょうか?
cutensorの仕様だと回避不可だと思うのですがアドバイスいただけると嬉しいです。
よろしくお願い致します。

2024年6月26日水曜日 15:56:52 UTC+9 NikuQ:
Reply all
Reply to author
Forward
0 new messages