web-dev-qa-db-ja.com

Ubuntu 16.04にCUDA 8をインストールする際の問題-proc / driver / nvidiaフォルダーがない

Ubuntu 16.04 LTSにNVIDIA CUDA 8.0をインストールしようとしていますが、NVIDIAから Linuxインストールガイド を実行しても動作しません。

詳細はこちらです。

私はラップトップAcer Aspire VXを持っています。Windows10に付属しており、Ubuntuのデュアルブートインストールを行いました。ハードウェアは、NVIDIA GeForce 1050を搭載したIntel Core i5 7300HQです。

インストール前のアクションとその出力:

$ lspci | grep -i nvidia
01:00.0 3D controller: NVIDIA Corporation Device 1c8d (rev a1)


$ uname -m && cat /etc/*release
x86_64
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=16.04
DISTRIB_CODENAME=xenial
DISTRIB_DESCRIPTION="Ubuntu 16.04.3 LTS"
NAME="Ubuntu"
VERSION="16.04.3 LTS (Xenial Xerus)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 16.04.3 LTS"
VERSION_ID="16.04"
HOME_URL="http://www.ubuntu.com/"
SUPPORT_URL="http://help.ubuntu.com/"
BUG_REPORT_URL="http://bugs.launchpad.net/ubuntu/"
VERSION_CODENAME=xenial
UBUNTU_CODENAME=xenial


$ gcc --version
gcc (Ubuntu 5.4.0-6ubuntu1~16.04.4) 5.4.0 20160609
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

$ uname -r
4.10.0-33-generic

ここまでは大丈夫でした。また、 guide のパスごとにインストールします。 Linux x86_64マシン用のNVIDIAサイトからファイル。debをダウンロードしました。

  1. $ Sudo dpkg -i /home/marlosdamasceno/Downloads/cuda-repo-ubuntu1604-8-0-local-ga2_8.0.61-1_AMD64.deb
  2. $ Sudo apt-get update
  3. $ Sudo apt-get install cuda

それも大丈夫でした。 Patch 2(2017年6月26日リリース)をインストールしたことを説明します。手順は次のとおりです。

  1. $ Sudo dpkg -i /home/marlosdamasceno/Downloads/cuda-repo-ubuntu1604-8-0-local-cublas-performance-update_8.0.61-1_AMD64.deb
  2. $ Sudo apt-get update
  3. $ Sudo apt-get upgrade cuda

ここまではすべて問題ありません。したがって、インストール後のアクションに従います。

$ export PATH=/usr/local/cuda-8.0/bin${PATH:+:${PATH}}

$ nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2016 NVIDIA Corporation
Built on Tue_Jan_10_13:22:03_CST_2017
Cuda compilation tools, release 8.0, V8.0.61

$ cuda-install-samples-8.0.sh /home/marlosdamasceno/

OK、すべてが再び大丈夫に見えますが、ここに最初の問題がありました、ドライバーをチェックしていたとき、nvidiaのすべてにフォルダがありませんでした。

$ cat /proc/driver/nvidia/version

cat:/ proc/driver/nvidia/version:そのようなファイルやディレクトリはありません

これがフォルダーの印刷です:https://ibb.co/cWjpTa

フォルダ上の唯一のものはrtcファイルです。

続けようとして、サンプルのmakeステップを実行しました。私はこれを得た:

/usr/bin/ld: cannot find -lnvcuvid
collect2: error: ld returned 1 exit status
Makefile:381: recipe for target 'cudaDecodeGL' failed
make[1]: *** [cudaDecodeGL] Error 1
make[1]: Leaving directory '/home/marlosdamasceno/NVIDIA_CUDA-8.0_Samples/3_Imaging/cudaDecodeGL'
Makefile:52: recipe for target '3_Imaging/cudaDecodeGL/Makefile.ph_build' failed
make: *** [3_Imaging/cudaDecodeGL/Makefile.ph_build] Error 2

さらに、deviceQueryを実行すると、このメッセージが表示されました。

./deviceQuery Starting...

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

cudaGetDeviceCount returned 35
-> CUDA driver version is insufficient for CUDA runtime version
Result = FAIL

さらに、ここに役立つコマンドと出力がいくつかあります。

このコマンドを入力しても何も起こりません。

$ lsmod | grep nvidia

別のコマンド。

$ nvidia-smi
nvidia-smi: command not found

別のコマンド。

$ Sudo lshw -c video
*-display               
       description: 3D controller
       product: NVIDIA Corporation
       vendor: NVIDIA Corporation
       physical id: 0
       bus info: pci@0000:01:00.0
       version: a1
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress bus_master cap_list
       configuration: driver=nouveau latency=0
       resources: irq:318 memory:a3000000-a3ffffff memory:90000000-9fffffff memory:a0000000-a1ffffff ioport:4000(size=128)
  *-display
       description: VGA compatible controller
       product: Intel Corporation
       vendor: Intel Corporation
       physical id: 2
       bus info: pci@0000:00:02.0
       version: 04
       width: 64 bits
       clock: 33MHz
       capabilities: pciexpress msi pm vga_controller bus_master cap_list rom
       configuration: driver=i915 latency=0
       resources: irq:319 memory:a2000000-a2ffffff memory:b0000000-bfffffff ioport:5000(size=64) memory:c0000-dffff

質問があります。

Secure Bootを有効にしていますが、それは可能ですか?

コマンドからのパスファイルexport PATH =/usr/local/cuda-8.0/bin $ {PATH:+:$ {PATH}}は常に自己消去を続けます。コマンド$ nvcc --versionを実行すると、メッセージが表示されます。

The program 'nvcc' is currently not installed. You can install it by typing: Sudo apt install nvidia-cuda-toolkit 

どうすればパスを設定してそのまま維持できますか?

ステップがありませんか?

助けてくれてありがとう!

1

Ubuntuの新しいファラに多くの努力をした後、私はそれを機能させました!!!

@ ubfan1は、彼がコマンドlshw -c videoを言ったときに助けてくれました。NVIDIAのドライバーで実行していないことを知るために必要なヒント.

その後、成功せずにインストールを試みました(セキュアブートがオフになりました)。このエラーが発生しました:システムは低グラフィックモードで実行されています」( この質問を参照 )。そのため、コマンド** Alt + Ctrl + F1 *を使用して起動し、以下のコマンドを使用してNVIDIAからすべてのファイルを削除しました。

Sudo apt-get remove --purge nvidia-*

これでデスクトップに戻り、UbuntuのSystem Settingsツールを使用してドライバーをインストールできました(ソフトウェアとアップデート->追加のドライバー-> NVIDIAバイナリの使用-nvidia-375からのバージョン375.82(オープンソース)印刷物を参照:

NVIDIA Driver

システムを再起動すると、すべてがインストールされました!!!その後、サンプル内のビンからコマンド./ deviceQueryをテストし、PASS!をテストしました。

./deviceQuery Starting...

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

Detected 1 CUDA Capable device(s)

Device 0: "GeForce GTX 1050"
  CUDA Driver Version / Runtime Version          8.0 / 8.0
  CUDA Capability Major/Minor version number:    6.1
  Total amount of global memory:                 4041 MBytes (4237426688 bytes)
  ( 5) Multiprocessors, (128) CUDA Cores/MP:     640 CUDA Cores
  GPU Max Clock rate:                            1493 MHz (1.49 GHz)
  Memory Clock rate:                             3504 Mhz
  Memory Bus Width:                              128-bit
  L2 Cache Size:                                 524288 bytes
  Maximum Texture Dimension Size (x,y,z)         1D=(131072), 2D=(131072, 65536), 3D=(16384, 16384, 16384)
  Maximum Layered 1D Texture Size, (num) layers  1D=(32768), 2048 layers
  Maximum Layered 2D Texture Size, (num) layers  2D=(32768, 32768), 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: 65536
  Warp size:                                     32
  Maximum number of threads per multiprocessor:  2048
  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): (2147483647, 65535, 65535)
  Maximum memory pitch:                          2147483647 bytes
  Texture alignment:                             512 bytes
  Concurrent copy and kernel execution:          Yes with 2 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
  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 = 8.0, CUDA Runtime Version = 8.0, NumDevs = 1, Device0 = GeForce GTX 1050
Result = PASS

学んだ教訓

CUDAをインストールする前に、NVIDIAのすべてのドライバーが正常に動作していることを確認してください! @ ubfan1のようにインストールすることができます link .

次のコマンドを実行して、インストールがデフォルトで実行されているかどうかを確認します。

$ cat /proc/driver/nvidia/version
NVRM version: NVIDIA UNIX x86_64 Kernel Module  375.82  Wed Jul 19 21:16:49 PDT 2017
GCC version:  gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.4)

$ Sudo lshw -c video
[Sudo] password for marlosdamasceno: 
  *-display               
       description: 3D controller
       product: NVIDIA Corporation
       vendor: NVIDIA Corporation
       physical id: 0
       bus info: pci@0000:01:00.0
       version: a1
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress bus_master cap_list
       configuration: driver=nvidia latency=0
       resources: irq:321 memory:a3000000-a3ffffff memory:90000000-9fffffff memory:a0000000-a1ffffff ioport:4000(size=128)
  *-display
       description: VGA compatible controller
       product: Intel Corporation
       vendor: Intel Corporation
       physical id: 2
       bus info: pci@0000:00:02.0
       version: 04
       width: 64 bits
       clock: 33MHz
       capabilities: pciexpress msi pm vga_controller bus_master cap_list rom
       configuration: driver=i915 latency=0
       resources: irq:318 memory:a2000000-a2ffffff memory:b0000000-bfffffff ioport:5000(size=64) memory:c0000-dffff

$ lsmod | grep nvidia
nvidia_uvm            647168  0
nvidia_drm             45056  2
nvidia_modeset        790528  5 nvidia_drm
nvidia              12701696  85 nvidia_modeset,nvidia_uvm
drm_kms_helper        151552  2 i915,nvidia_drm
drm                   352256  6 i915,nvidia_drm,drm_kms_helper


$ nvidia-smi
Fri Sep  8 19:47:17 2017       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 375.82                 Driver Version: 375.82                    |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  GeForce GTX 1050    Off  | 0000:01:00.0     Off |                  N/A |
| N/A   49C    P0    N/A /  N/A |    536MiB /  4041MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID  Type  Process name                               Usage      |
|=============================================================================|
|    0       996    G   /usr/lib/xorg/Xorg                             271MiB |
|    0      1827    G   compiz                                         177MiB |
|    0      2351    G   ...el-token=FDDD25D3486FDA0AB5CD0952493279C6    86MiB |
|    0     14381    G   unity-control-center                             1MiB |
+-----------------------------------------------------------------------------+

セキュアブートを確認するだけで実行できます。

$ mokutil --sb-state
SecureBoot enabled
3

パスを永続的に設定するには:

$ gedit〜/ .bashrc

ファイルがロードされます。そのファイルで一番下に移動し、これを貼り付けます::

export PATH =/usr/local/cuda-8.0/bin:$ PATH

保存して閉じます。

3
Saurabh