회사에서 Jetson Orin을 사용하게 되었는데 Jetson 시리즈는 일반 GPU 세팅과는 좀 달라서 많이 애먹었습니다.
한번 거하게 세팅한 것을 날린 뒤로 도커를 써야겠다 결심하고 Nvidia-docker에 머리를 박으면서 정리해보려 합니다.
Docker 설치
Jetson 시리즈는 os를 설치하면 기본적으로 Docker가 설치되어 있지만 USER를 자동으로 Docker 그룹에 포함시키지는 않는다고 합니다.
Root 권한 설정
로그아웃하고 재 로그인하면 된다고 하는데 저는 그냥 깔끔하게 sudo reboot 했습니다.
sudo usermod -aG docker $USER
Swap 메모리 설정
Swap memory를 6GB로 설정하는 작업입니다. Opencv 4.5 설치시 6GB 이상으로 늘려야된다고 합니다. 이전 버전 설치시 4GB로 진행하면 됩니다.
sudo systemctl disable nvzramconfig
sudo fallocate -l 6G /mnt/6GB.swap
sudo chmod 600 /mnt/6GB.swap
sudo mkswap /mnt/6GB.swap
Swap 설정하고 부팅시 다시 로드하기 위해 /etc/fstab에 적용합니다.
sudo vim /etc/fstab
그리고 아래 줄을 fstab 파일 밑에 추가합니다.
/mnt/6GB.swap swap swap defaults 0 0
sudo reboot 을 하고 적용이 잘 되었는지 확인합니다.
free -m
이제 Docker Image를 다운 받거나 Docker 파일을 만들어 필요한 것을 설치하면 됩니다.
저는 필요한게 많아서 Docker 파일을 만들도록 하겠습니다.
Docker Image 생성
하루종일 삽질하던 중에 jetson-inference 라는 좋은 github를 발견했습니다.
Docker Image 생성이고 뭐고하기전에 이미 다 세팅이 되어서 docker build하고 run만하면 바로 실행되더군요!
https://github.com/dusty-nv/jetson-inference/blob/master/docs/aux-docker.md
GitHub - dusty-nv/jetson-inference: Hello AI World guide to deploying deep-learning inference networks and deep vision primitive
Hello AI World guide to deploying deep-learning inference networks and deep vision primitives with TensorRT and NVIDIA Jetson. - GitHub - dusty-nv/jetson-inference: Hello AI World guide to deployin...
github.com
자신의 Jetpack에 맞게 Container Tag를 변경하고 실행하면 됩니다.
한번 docs를 보면서 하시는 것을 추천드립니다.
git clone --recursive --depth=1 https://github.com/dusty-nv/jetson-inference
cd jetson-inference
docker/run.sh
아래 블로그도 제게 많은 도움이 되었네요
Jetson Nano Tensor RT 세팅 가이드
이번에 회사에서 Jetson Nano를 활용할 일이 있어서, 환경을 세팅해봤습니다. 세팅 방법을 설명하는 글들을 보다보니, 국내 블로그 글들은 2023년 4월 14일, 지금 상황에서 적용하면 다 오류가 발생했
code.debro.co.kr
Jetson에 대해 더 정리가 되면 다시 정리해서 올리겠습니다.