저는 Tegra-K1 보드(Toradex Apalis-TK1)에서 Debian Jessie를 실행하고 있으며 CUDA Toolkit 7.0을 설치하고 nvidia_drivers.tbz2
다음에서 실행했습니다.제이슨 TK1 21.5팩.
지금은 이해
$ nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2015 NVIDIA Corporation
Built on Fri_Oct_16_15:23:46_CDT_2015
Cuda compilation tools, release 7.0, V7.0.70
$ cat /etc/ld.so.conf.d/nvidia-tegra.conf
/usr/lib/tegra
$ cat /etc/nv_tegra_release
# R21 (release), REVISION: 5.0, GCID: 7273100, BOARD: ardbeg, EABI: hard, DATE: Wed Jun 8 04:19:09 UTC 2016
50e7e42bde409d5ba0eb410d803b991cd6c4c32b */usr/lib/xorg/modules/extensions/libglx.so
cc612c5afcb8a76a5b847fc500d2354582d32abb */usr/lib/xorg/modules/drivers/nvidia_drv.so
e96a78d9c3947a980f065d96557f98c70500db17 */usr/lib/arm-linux-gnueabihf/tegra/libnvomxilclient.so
... and so on ...
나는 NVIDIA_CUDA-7.0_Samples
( make SMS=53
를 사용하여 )을 만들 수 있습니다연결 문제 방지), 하지만
1_Utilities/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
문제의 원인을 어떻게 좁힐 수 있습니까?
답변1
개발자 포럼을 참조한 후 오류 메시지가 정확하다는 사실을 알게 되었습니다(가끔 이런 일이 발생함). Cuda Toolkit 7에는 cuda 드라이버 버전 R23이 필요하지만 Tegra K1에 사용 가능한 최신 버전은 R21입니다.
따라서 이전 툴킷 버전이 필요하지만 NVIDIA 웹사이트에서는 버전 7만 다운로드할 수 있습니다. 이전 버전은 JetPack을 통해서만 액세스할 수 있지만 JetPack은 Ubuntu 전용입니다(Debian에는 설치할 수 없음).
하지만 그들은 나에게 문제를 해결하기 위한 지침을 제공했습니다.
- JetPack 2.3.1 다운로드
- 아카이브 내용을 추출합니다.
bash JetPack-L4T-2.3.1-linux-x64.run –noexec
- 바이너리를
_installer
찾을 수 있는 디렉토리 로 이동하세요.Chooser
./Chooser
-> libpng12를 요구할 수도 있으므로 이 라이브러리를 집에 설치하고export LD_LIBRARY_PATH+=:path_to_libpng/lib
다시 시도하십시오 ../Chooser
repository.json
GUI가 나타나지만 그것은 중요하지 않습니다. cuda와 같은 패키지에 대한 모든 링크가 포함된 파일이 생성되는 것을 볼 수 있습니다 . CUDA 버전에 해당하는 링크를 찾으세요.
.deb
json 파일에 제공된 URL에서 패키지를 다운로드하고 다음을 wget
사용하여 설치합니다.dpkg -i
apt update
apt search cuda
apt install ...
분명히 Nvidia는 우리가 TK1을 고수하는 대신 TX1과 TX2로 이동하기를 원합니다...