web-dev-qa-db-ja.com

Nvidia CUDAランタイムエラー

Ubuntu 16.04にドライバーバージョン384.90のNvidia GT630グラフィックカードがあります。 CUDA 9ツールキットを正常にインストールしました。サンプルフォルダーのdeviceQueryが渡されました。出力は次のとおりです。

~/NVIDIA_CUDA-9.0_Samples/1_Utilities/deviceQuery$ ./deviceQuery 
./deviceQuery Starting...

 CUDA Device Query (Runtime API) version (CUDART static linking)

Detected 1 CUDA Capable device(s)

Device 0: "GeForce GT 630"
  CUDA Driver Version / Runtime Version          9.0 / 9.0
  CUDA Capability Major/Minor version number:    2.1
  Total amount of global memory:                 4022 MBytes (4217110528 bytes)
MapSMtoCores for SM 2.1 is undefined.  Default to use 64 Cores/SM
MapSMtoCores for SM 2.1 is undefined.  Default to use 64 Cores/SM
  ( 2) Multiprocessors, ( 64) CUDA Cores/MP:     128 CUDA Cores
  GPU Max Clock rate:                            1400 MHz (1.40 GHz)
  Memory Clock rate:                             667 Mhz
  Memory Bus Width:                              128-bit
  L2 Cache Size:                                 131072 bytes
  Maximum Texture Dimension Size (x,y,z)         1D=(65536), 2D=(65536, 65535), 3D=(2048, 2048, 2048)
  Maximum Layered 1D Texture Size, (num) layers  1D=(16384), 2048 layers
  Maximum Layered 2D Texture Size, (num) layers  2D=(16384, 16384), 2048 layers
  Total amount of constant memory:               65536 bytes
  Total amount of shared memory per block:       49152 bytes
  Total number of registers available per block: 32768
  Warp size:                                     32
  Maximum number of threads per multiprocessor:  1536
  Maximum number of threads per block:           1024
  Max dimension size of a thread block (x,y,z): (1024, 1024, 64)
  Max dimension size of a grid size    (x,y,z): (65535, 65535, 65535)
  Maximum memory pitch:                          2147483647 bytes
  Texture alignment:                             512 bytes
  Concurrent copy and kernel execution:          Yes with 1 copy engine(s)
  Run time limit on kernels:                     Yes
  Integrated GPU sharing Host Memory:            No
  Support Host page-locked memory mapping:       Yes
  Alignment requirement for Surfaces:            Yes
  Device has ECC support:                        Disabled
  Device supports Unified Addressing (UVA):      Yes
  Supports Cooperative Kernel Launch:            No
  Supports MultiDevice Co-op Kernel Launch:      No
  Device PCI Domain ID / Bus ID / location ID:   0 / 1 / 0
  Compute Mode:
     < Default (multiple Host threads can use ::cudaSetDevice() with device simultaneously) >

deviceQuery, CUDA Driver = CUDART, CUDA Driver Version = 9.0, CUDA Runtime Version = 9.0, NumDevs = 1
Result = PASS

ただし、他のサンプルをビルドして実行しようとすると、次のランタイムAPIエラー18が発生します。ウィンドウが点滅し、すぐに閉じます。

./boxFilter Starting...

Loaded './data/lenaRGB.ppm', 1024 x 1024 pixels

Found 1 CUDA Capable device(s) supporting CUDA

Device 0: "GeForce GT 630"
  CUDA Runtime Version     :    9.0
  CUDA Compute Capability  :    2.1

Found CUDA Capable Device 0: "GeForce GT 630"
Setting active device to 0
boxFilter_kernel.cu(348) : CUDA Runtime API error 18: invalid texture reference.

他のサンプルでは:

simpleGL (VBO) starting...

MapSMtoCores for SM 2.1 is undefined.  Default to use 64 Cores/SM

これをどうやって解決しますか?ドライバーのインストールに問題がありますか?

1
Heethesh

GeForce GT630のSMコアは64個未満です。SM2.1のMapSMtoCoresは未定義です。 64コア/ SMを使用するデフォルト310の魔女が48コアしか所有していないという同じ問題がありました。 cuda 9.0では、プログラムのコンパイルは正常に実行されますが、エラーが発生し、カードが64コアを所有していないため実行できません。 cuda 8.0 https://developer.nvidia.com/cuda-toolkit-archive に戻り、ローカルインストーラーからインストールして、アップグレード時にcuda 9.0に戻らないようにする必要があります。お使いのシステム... cuda 9.0が必要な場合、64コア/ SM以上の新しいnvidiaカードを購入する必要があります

それが役立つことを願っています

1
fcc

Fermiサポート(CUDA Capability Major/Minor version number: 2.X)CUDA 9から削除されました: http://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html#unsupported-features

そのため、CUDA 8に戻る必要があります。

0
Sethos II