
분명히 저는 멍청한 우분투 사용자이므로 제가 할 수 있는 끔찍한 실수나 제가 갖고 있지 않은 지식이 필요한 경우를 용서해주세요 :D
예상되는 동작
Dell XPS13
최근에 마녀에 설치된 노트북을 실행하고 있습니다 . 외부 디스플레이의 출력을 이상적으로 사용하여 eGPU에서 Ubuntu 20.04 focal
비디오 경험을 향상시키고 싶습니다 .Nvidia GTX 1660 SUPER
Razor Core X
실제 행동
외부 디스플레이에 검은색 화면 외에는 아무 것도 성공적으로 표시되지 않았습니다.
내가 시도한 것
BIOS에서 Thunderbolt 지원을 활성화하고 보안이 필요하지 않도록 설정하여 연결하자마자 인식됩니다. ubuntu-driver devices
주로 nvidia 드라이버의 440 버전인 목록에 있는 드라이버를 설치했습니다.
ubuntu-drivers devices
== /sys/devices/pci0000:00/0000:00:1c.4/0000:03:00.0/0000:04:01.0/0000:06:00.0/0000:07:01.0/0000:08:00.0 ==
modalias : pci:v000010DEd000021C4sv00001462sd0000C758bc03sc00i00
vendor : NVIDIA Corporation
model : TU116 [GeForce GTX 1660 SUPER]
manual_install: True
driver : nvidia-driver-440 - distro non-free recommended
driver : nvidia-driver-440-server - distro non-free
driver : xserver-xorg-video-nouveau - distro free builtin
실행했는데 sudo ubuntu-driver autoinstall
비밀번호 reboot
를 올바르게 입력했는데도 로그인 화면이 계속 다시 나타납니다.
eGPU를 분리하면 로그인 화면을 통과할 수 있습니다.
다시 연결하고 실행하면 nvidia-smi
다음과 같은 결과가 나타납니다.
sudo nvidia-smi
[sudo] password for andrei:
Tue Sep 8 17:55:42 2020
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 440.100 Driver Version: 440.100 CUDA Version: 10.2 |
|-------------------------------+----------------------+----------------------+
| 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 166... Off | 00000000:3C:00.0 Off | N/A |
| 0% 40C P0 12W / 130W | 0MiB / 5944MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: GPU Memory |
| GPU PID Type Process name Usage |
|=============================================================================|
| No running processes found |
+-----------------------------------------------------------------------------+
기타 참고사항:
- 나는 어떤이 없습니다
/etc/X11/xorg.conf
- 모양
/usr/lib/modprobe.d/nvidia-graphics-drivers.conf
은 다음과 같습니다:
blacklist nouveau
blacklist lbm-nouveau
alias nouveau off
alias lbm-nouveau off
나는 또한 달리고 nvidia-settings
이것을 얻습니다 :
ERROR: Unable to load info from any available system
(nvidia-settings:4382): GLib-GObject-CRITICAL **: 18:09:30.505: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
** Message: 18:09:30.507: PRIME: Requires offloading
** Message: 18:09:30.507: PRIME: is it supported? yes
** Message: 18:09:30.534: PRIME: Usage: /usr/bin/prime-select nvidia|intel|on-demand|query
** Message: 18:09:30.534: PRIME: on-demand mode: "1"
** Message: 18:09:30.534: PRIME: is "on-demand" mode supported? yes
외부 디스플레이에 출력이 없습니다.
우분투 그래픽 드라이버 저장소도 추가 sudo apt-add-repository ppa:graphics-drivers/ppa
하고 새로 권장되는 드라이버로 제시된 상위 프로세스를 반복했지만 nvidia-driver-450
결과는 비슷했습니다. 주로 로그인할 수 없거나 로그인 화면이 깜박이고 슬프게도 외부 비디오 카드를 통한 출력이 없었습니다.
egpu-switcher
또한 'nvidia-config which , I guess mainly tried to create/modify the
/etc/X11/xorg.conf' 를 사용해 보았지만 외부 디스플레이에 출력이 전혀 없었습니다(기능적입니다 :). 왜냐하면 동일한 케이블이 내 노트북에 직접 연결될 때 작동하기 때문입니다.
누구든지 나와 언급된 모든 하드웨어 및 소프트웨어에 대해 이 고난을 해피엔딩 방식으로 끝낼 수 있는 방법을 제안할 수 있다면 매우 감사하겠습니다 :)
감사합니다!
업데이트
실행 중은 nvidia-settings
다음을 기록합니다.
ERROR: Unable to load info from any available system
(nvidia-settings:20812): GLib-GObject-CRITICAL **: 01:58:56.002: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
** Message: 01:58:56.005: PRIME: Requires offloading
** Message: 01:58:56.005: PRIME: is it supported? yes
** Message: 01:58:56.039: PRIME: Usage: /usr/bin/prime-select nvidia|intel|on-demand|query
** Message: 01:58:56.039: PRIME: on-demand mode: "1"
** Message: 01:58:56.039: PRIME: is "on-demand" mode supported? yes
답변1
오랜 전투 끝에 저는 실제로 다음 댓글을 통해 문제 기반을 해결할 수 있었습니다.https://forums.developer.nvidia.com/t/nvidia-xconfig-doesnt-do-what-i-want-it-to-nor-does-nvidia-settings/107883/7
xorg.conf
따라서 이러한 맥락에서는 도움이 될 수 없다는 것을 이해하는 것이 중요하다고 생각합니다 . 아무리 노력해도 xorg.conf
.
나에게 도움이 된 것은 다음과 같습니다.
- 시도했을 수 있는 모든 nvidia 항목을 제거하십시오: sudo apt --purge delete 'nvidia-*'
- nvidia 웹사이트에서 최신 nvidia 드라이버를 다운로드하여 실행 가능하게 만듭니다.
- 복구 모드에서(또는 ax 서버를 실행하지 않고) 재부팅하고 시스템에서 GPU를 찾을 수 없다는 메시지가 표시되더라도 드라이버 설치 프로그램을 실행하세요.
/etc/X11/xorg.conf
가지고 있는 것을 모두 삭제하세요reboot
보통nvidia-prime
아직 설치되지 않았다면 설치하세요 .sudo prime-select nvidia
/usr/share/X11/xorg.conf.d/10-amdgpu.conf
다음으로 교체 드라이버 업데이트modesetting
Section "OutputClass"
Identifier "AMDgpu"
MatchDriver "amdgpu"
Driver "modesetting"
EndSection
- 다음과 같이 업데이트하세요.
Section "OutputClass"
Identifier "nvidia"
MatchDriver "nvidia-drm"
Driver "nvidia"
Option "AllowEmptyInitialConfiguration"
ModulePath "/usr/lib/x86_64-linux-gnu/nvidia/xorg"
Option "PrimaryGPU" "Yes"
Option "AllowExternalGpus" "True"
EndSection
- 다음을 포함
optimus.desktop
하는 두 개의 파일을 만듭니다 ./etc/xdg/autostart/
/usr/share/gdm/greeter/autostart/
[Desktop Entry]
Type=Application
Name=Optimus
Exec=sh -c "xrandr --setprovideroutputsource modesetting 0; xrandr --auto"
NoDisplay=true
X-GNOME-Autostart-Phase=DisplayServer
(@generix가 거기에 있다고 말하지만 modesetting NVIDIA-0;
나에게는 그런 식으로 작동하지 않았습니다. 그러나 에서는 작동합니다 modesetting 0;
)
reboot
다음을 실행하여 모든 것이 양호한지 테스트하십시오.
__NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia glxinfo | grep vendor
nvidia에서 행을 반환하지 않으면 좋지 않습니다. 제 경우에는 다음을 얻습니다.
server glx vendor string: NVIDIA Corporation
client glx vendor string: NVIDIA Corporation
OpenGL vendor string: NVIDIA Corporation
또 다른 확인 사항은 실행하면 nvidia-smi
최소한 일부 프로세스가 나열된다는 것입니다.
그리고 원하는 대로 외부 디스플레이의 nvidia gpu에서 신호를 얻습니다. :)
감사해요 ;)
답변2
또한 발견됨해결책by @bluehipy는 Ubuntu 20.04를 실행하는 Acer Predator Helios 300이 외부 모니터와 작동하도록 하고 문제를 일으키는 딥 러닝 작업을 위해 NVIDIA/CUDA 스택을 올바르게 설치하는 데 매우 도움이 되었습니다.
실제로 Acer Predator Helios 300을 반환하고 eGPU가 포함된 Dell XPS 13이 기계 학습/데이터 과학 모델을 로컬에서 디버깅하고 실제로 클라우드에서 교육할 때 "씬 클라이언트" 유형의 워크플로에서 작동할 수 있는지 확인할 때 이 스레드를 발견했습니다.
그렇다면 다른 사람이 노트북을 작동시키는 데 어려움을 겪고 있다면 원래 지침에 약간의 수정을 가하는 것이 좋을까요?
전제 조건:
sudo apt install gcc make mesa-utils mpich
NVIDIA 드라이버 설치
나에게 도움이 된 것은 다음과 같습니다.
시도했을 수 있는 모든 NVIDIA 항목을 제거하십시오.
sudo apt --purge remove nvidia-*
원래 지침에는 최신 드라이버를 다운로드하라고 되어 있지만 다음에서 드라이버 버전을 찾아볼 수도 있습니다.최신 CUDA 툴킷그러니 물건을 설치할 때 그것이 무엇인지 확인하십시오. 최신 NVIDIA 드라이버에서 작동할 수 있습니까? 당신은오래된 드라이버를 확인해보세요CUDA 툴킷 드라이버 버전과 일치할 가능성이 가장 높습니다. 예를 들어 이 지침이 제공되는 당시 일치하는 버전은 470.57.02(NVIDIA-Linux-x86_64-470.57.02.run)였습니다.
복구 모드에서(또는 ax 서버를 실행하지 않고) 재부팅하고 시스템에서 GPU를 찾을 수 없다고 표시되는 경우에도 드라이버 설치 프로그램을 실행합니다(루트로 드롭, 예:
cd ../home/username/Downloads
및./NVIDIA-Linux-x86_64-470.74.run
)./etc/X11/xorg.conf
가지고 있는 것을 모두 삭제하세요재부팅 (
e
Ubuntu의 grub 메뉴를 누르고nomodeset
마지막에)아직 설치되지 않은 경우 nvidia-prime을 설치하십시오.
sudo prime-select nvidia
/usr/share/X11/xorg.conf.d/10-amdgpu.conf
다음으로 드라이버 교체 업데이트modesetting
Section "OutputClass"
Identifier "AMDgpu"
MatchDriver "amdgpu"
Driver "modesetting"
EndSection
sudo gedit /usr/share/X11/xorg.conf.d/10-nvidia.conf
다음과 같이 nvidia 구성 파일( )을 생성합니다 .
Section "OutputClass"
Identifier "nvidia"
MatchDriver "nvidia-drm"
Driver "nvidia"
Option "AllowEmptyInitialConfiguration"
ModulePath "/usr/lib/x86_64-linux-gnu/nvidia/xorg"
Option "PrimaryGPU" "Yes"
Option "AllowExternalGpus" "True"
EndSection
10 다음을 포함 optimus.desktop
하는 두 개의 파일을 만듭니다 ./etc/xdg/autostart/
/usr/share/gdm/greeter/autostart/
[Desktop Entry]
Type=Application
Name=Optimus
Exec=sh -c "xrandr --setprovideroutputsource modesetting 0; xrandr --auto"
NoDisplay=true
X-GNOME-Autostart-Phase=DisplayServer
그럽 수정그래서 nomodeset은 항상 거기에 있습니다:
sudo gedit /etc/default/grub
재부팅
다음을 실행하여 모든 것이 양호한지 테스트합니다.
__NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia glxinfo | grep vendor
nvidia-smi
적어도 일부 프로세스가 나열되는지 확인하십시오 .
| NVIDIA-SMI 470.57.02 Driver Version: 470.57.02 CUDA Version: 11.4 | GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M.
| 0 NVIDIA GeForce ... Off | 00000000:01:00.0 On | N/A
| N/A 42C P8 14W / N/A | 264MiB / 5946MiB | 1% Default
CUDA 툴킷 설치
최신 CUDA 툴킷지시 당시 cuda_11.4.2_470.57.02_linux.run
NVIDIA 드라이버를 다시 설치하지 않고 설치 되었습니다.
wget https://developer.download.nvidia.com/compute/cuda/11.4.2/local_installers/cuda_11.4.2_470.57.02_linux.run
sudo sh cuda_11.4.2_470.57.02_linux.run
CUDA 설치 확인
보다https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#install-samples
전제 조건:(모든 샘플을 올바르게 컴파일하려는 경우)에서:
sudo apt-get install g++ freeglut3-dev build-essential libx11-dev \
libxmu-dev libxi-dev libglu1-mesa libglu1-mesa-dev libfreeimage-dev
예를 들어 ./deviceQuery
다음을 반환합니다.
CUDA Device Query (Runtime API) version (CUDART static linking)
Detected 1 CUDA Capable device(s)
Device 0: "NVIDIA GeForce RTX 3060 Laptop GPU"
CUDA Driver Version / Runtime Version 11.4 / 11.4
CUDA Capability Major/Minor version number: 8.6
Total amount of global memory: 5947 MBytes (6235422720 bytes)
(030) Multiprocessors, (128) CUDA Cores/MP: 3840 CUDA Cores
GPU Max Clock rate: 1425 MHz (1.42 GHz)
...
deviceQuery, CUDA Driver = CUDART, CUDA Driver Version = 11.4, CUDA Runtime Version = 11.4, NumDevs = 1
Result = PASS
cudnn 설치
가이드 보기https://docs.nvidia.com/deeplearning/cudnn/install-guide/index.html
CUDA 11.4용 cuDNN v8.2.4(2021년 9월 2일) 다운로드
-> Linux용 cuDNN 라이브러리(x86_64), 예:cudnn-11.4-linux-x64-v8.2.4.15.tgz
답변3
Ubuntu Mate 20.4를 실행하는 NUC와 NVidia RTX 2060 Super를 사용하는 Razor Core X를 사용하여 유사한 설정을 가지고 있습니다.
기본적으로 나는 당신과 같은 지점에 있었고 아무것도 작동하지 않았습니다. 그런 다음 뭔가를 엉망으로 만들고 Ubuntu를 다시 설치해야했습니다. 하지만 eGPU 케이스를 꽂은 상태에서 이 작업을 수행했습니다. 설치 중에 NVidia 440 드라이버가 자동으로 설치되었습니다.
이때 다음과 같은 게시물을 발견했습니다.
https://egpu.io/forums/thunderbolt-linux-setup/ubuntu-19-04-easy-to-use-setup-script-for-your-egpu/
저장소에 제공된 스크립트를 사용하여 마침내 GPU를 작동시킬 수 있었습니다! CUDA에 액세스할 수 있고 eGPU와 함께 두 개의 외부 모니터를 사용할 수도 있습니다.
이 스크립트가 당신에게도 도움이 되기를 바랍니다. 행운을 빌어요.