トピックが述べているように、デバッガーを動作させることができません。以下は、実行した一連の手順です。
注: Cuda 5.0 がインストールされており、NSight ビジュアル スタジオ エディション 3.0 がインストールされています。GPU単体でデバッグできるようになったと聞いたことがあります。5.0 は問題ないと思いますが、5.5 のリリース候補版は必要ありませんか?
1)サイトの指示に従って、コードを次のように変更しました。
CudafyModes.Target = eGPUType.Cuda;
CudafyModes.DeviceId = 0;
CudafyTranslator.Language = eLanguage.Cuda;
CudafyModule km = CudafyTranslator.Cudafy(eArchitecture.sm_20);
//Included this line.
CudafyTranslator.GenerateDebug = true;
_gpu = CudafyHost.GetDevice(eGPUType.Cuda);
_gpu.LoadModule(km);
2) この直後にブレークポイントを設定します。
3) ブレークポイントに到達すると、デバッグを停止しました。
4) ソリューション エクスプローラーで [すべてのファイルを表示] を選択すると、「CUDAFYSOURCETEMP.cu」ファイルが見つかりました。
5) 右クリックして [プロジェクトに追加] を選択します。
6) NSIGHT HUD Launcher 3.0 を開きます。
7) 次のように設定します。
8) [OK] をクリックします。
9) CUDAFYSOURCETEMP.cu をダブルクリックし、コードにブレークポイントを設定します。
10) NSight Monitor に移動し、[NSight Monitor Ooption] -> CUDA をクリックして、次のように設定します。
11) VS2010 に戻り、NSight-> Start Cuda Debugging を選択します。
それが完了したら、カーソルを変数の上に置き、ブレークポイントに到達したら何も表示されません。何かを示しているのは、blockDim、blockIdx、および threadIdx だけです。
また、CUDA WarpWatch1 ウィンドウを開き、変数を入力しましたが、「名前 "num2" を解決できませんでした。
ステップか何かが欠けていますか?
編集コンパイル中の出力ウィンドウからの出力は次のとおりです。
スレッド 'vshost.LoadReference' (0x1f78) はコード 0 (0x0) で終了しました。'FrazerMann.Profiler.UserInterface.vshost.exe' (Managed (v4.0.30319)): Loaded 'C:\Users\FrazMann\Desktop\Market Adj Entry CUDA - MK2\FrazerMann.Profiler.UserInterface\bin\x64\Debug\ FrazerMann.Profiler.UserInterface.exe'、シンボルが読み込まれました。'FrazerMann.Profiler.UserInterface.vshost.exe' (Managed (v4.0.30319)): Loaded 'C:\Users\FrazMann\Desktop\Market Adj Entry CUDA - MK2\FrazerMann.Profiler.UserInterface\bin\x64\Debug\ Cudafy.NET.dll」「FrazerMann.Profiler.UserInterface.vshost.exe」(マネージド (v4.0.30319)): ロードされた「C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Numerics\v4.0_4.0.0」 .0__b77a5c561934e089\System.Numerics.dll'、シンボルの読み込みをスキップしました。モジュールが最適化され、デバッガー オプション ' ジャスト マイ コード」が有効になっています。'FrazerMann.Profiler.UserInterface.vshost.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.Net\assembly\GAC_64\System.Data.OracleClient\v4.0_4.0.0.0__b77a5c561934e089\System .Data.OracleClient.dll'、シンボルの読み込みをスキップしました。モジュールが最適化され、デバッガー オプションの [Just My Code] が有効になります。'FrazerMann.Profiler.UserInterface.vshost.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.Net\assembly\GAC_64\System.Web\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Web .dll」「FrazerMann.Profiler.UserInterface.vshost.exe」(マネージド (v4.0.30319)): ロードされた「C:\Windows\Microsoft.Net\assembly\GAC_64\System.Transactions\v4.0_4.0.0.0__b77a5c561934e089\ System.Transactions.dll'、シンボルの読み込みをスキップしました。モジュールが最適化され、デバッガー オプションの [Just My Code] が有効になります。'FrazerMann.Profiler.UserInterface.vshost.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.Net\assembly\GAC_64\System.EnterpriseServices\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.EnterpriseServices .dll'、シンボルの読み込みをスキップしました。モジュールが最適化され、デバッガー オプションの [Just My Code] が有効になります。'FrazerMann.Profiler.UserInterface.vshost.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.Net\assembly\GAC_64\System.EnterpriseServices\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.EnterpriseServices .Wrapper.dll'、シンボルの読み込みをスキップしました。モジュールが最適化され、デバッガー オプションの [Just My Code] が有効になります。「FrazerMann.Profiler.UserInterface.vshost.exe」(マネージド (v4.0.30319)): 「匿名でホストされた DynamicMethods アセンブリ」「FrazerMann.Profiler.UserInterface.vshost.exe」を読み込みました (マネージド (v4.0.30319)): 「C:\Windows\Microsoft.Net\assembly\GAC_MSIL\Accessibility\v4.0_4.0.0 を読み込みました。 0__b03f5f7f11d50a3a\Accessibility.dll' 'FrazerMann.Profiler.UserInterface.vshost.exe' (マネージド (v4.0.30319)): ロードされた 'C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Data.SqlXml\v4.0_4 .0.0.0__b77a5c561934e089\System.Data.SqlXml.dll'、シンボルの読み込みをスキップしました。モジュールが最適化され、デバッガー オプションの [Just My Code] が有効になります。'FrazerMann.Profiler.UserInterface.vshost.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Xaml\v4.0_4.0.0.0__b77a5c561934e089\System.Xaml .dll'、シンボルの読み込みをスキップしました。モジュールが最適化され、デバッガー オプションの [Just My Code] が有効になります。'FrazerMann.Profiler.UserInterface.vshost.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.ComponentModel.Composition\v4.0_4.0.0.0__b77a5c561934e089\System .ComponentModel.Composition.dll'、シンボルの読み込みをスキップしました。モジュールが最適化され、デバッガー オプションの [Just My Code] が有効になります。'FrazerMann.Profiler.UserInterface.vshost.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.Net\assembly\GAC_MSIL\Microsoft.Build.Framework\v4.0_4.0.0.0__b03f5f7f11d50a3a\Microsoft .Build.Framework.dll'、シンボルの読み込みをスキップしました。モジュールが最適化され、デバッガー オプションの [Just My Code] が有効になります。「FrazerMann.Profiler.UserInterface.vshost.exe」(マネージド (v4.0.30319)): 'C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Runtime.Caching\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Runtime.Caching.dll' を読み込み、シンボルの読み込みをスキップしました。モジュールが最適化され、デバッガー オプションの [Just My Code] が有効になります。'FrazerMann.Profiler.UserInterface.vshost.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Web.ApplicationServices\v4.0_4.0.0.0__31bf3856ad364e35\System .Web.ApplicationServices.dll''FrazerMann.Profiler.UserInterface.vshost.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.DirectoryServices.Protocols\v4. 0_4.0.0.0__b03f5f7f11d50a3a\System.DirectoryServices.Protocols.dll'、シンボルの読み込みをスキップしました。モジュールが最適化され、デバッガー オプションの [Just My Code] が有効になります。'FrazerMann.Profiler.UserInterface.vshost.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.DirectoryServices\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.DirectoryServices .dll'、シンボルの読み込みをスキップしました。モジュールが最適化され、デバッガー オプションの [Just My Code] が有効になります。FrazerMann.Profiler.UserInterface.TaskManager x threadIdx x blockIdx x blockDim Length Length x threadIdx x blockIdx x blockDim Length x threadIdx x blockIdx x blockDim GetLength x threadIdx x blockIdx x blockDim QuickSortOfValues1 x threadIdx x blockIdx x blockDim QuickSortOfValues1 QuickSortOfValues1 FrazerMann.Profiler.UserInterface. TaskManager/o__SiteContainer0 コンパイラ バージョン: v5.0 Net\assembly\GAC_MSIL\System.DirectoryServices\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.DirectoryServices.dll'、シンボルの読み込みをスキップしました。モジュールが最適化され、デバッガー オプションの [Just My Code] が有効になります。FrazerMann.Profiler.UserInterface.TaskManager x threadIdx x blockIdx x blockDim Length Length x threadIdx x blockIdx x blockDim Length x threadIdx x blockIdx x blockDim GetLength x threadIdx x blockIdx x blockDim QuickSortOfValues1 x threadIdx x blockIdx x blockDim QuickSortOfValues1 QuickSortOfValues1 FrazerMann.Profiler.UserInterface. TaskManager/o__SiteContainer0 コンパイラ バージョン: v5.0 Net\assembly\GAC_MSIL\System.DirectoryServices\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.DirectoryServices.dll'、シンボルの読み込みをスキップしました。モジュールが最適化され、デバッガー オプションの [Just My Code] が有効になります。FrazerMann.Profiler.UserInterface.TaskManager x threadIdx x blockIdx x blockDim Length Length x threadIdx x blockIdx x blockDim Length x threadIdx x blockIdx x blockDim GetLength x threadIdx x blockIdx x blockDim QuickSortOfValues1 x threadIdx x blockIdx x blockDim QuickSortOfValues1 QuickSortOfValues1 FrazerMann.Profiler.UserInterface. TaskManager/o__SiteContainer0 コンパイラ バージョン: v5.0 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.0\bin\nvcc -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.0\include" -m64 -arch=sm_20 "C :\Users\FrazMann\Desktop\Market Adj Entry CUDA - MK2\FrazerMann.Profiler.UserInterface\bin\x64\Debug\CUDAFYSOURCETEMP.cu" -o "C:\Users\FrazMann\Desktop\Market Adj Entry CUDA - MK2\ FrazerMann.Profiler.UserInterface\bin\x64\Debug\CUDAFYSOURCETEMP.ptx" --ptx CUDAFYSOURCETEMP.cu tmpxft_000010d0_00000000-5_CUDAFYSOURCETEMP.cudafe1.gpu tmpxft_000010d0_00000000-10_CUDAFYSOURCETEMP.cudafe2.cudafe
'FrazerMann.Profiler.UserInterface.vshost.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Dynamic\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Dynamic .dll'、シンボルの読み込みをスキップしました。モジュールが最適化され、デバッガー オプションの [Just My Code] が有効になります。