NVIDIA Jetson TX2 간단 사용기

category 컴퓨터.전자기기 2019.05.04 11:15

안녕하세요? 아래의 글에 이어서 작성합니다.






1. OS 와 SDK 설치는 꼭 리얼 머신에서..


리얼 머신에서 설치를 진행하니 문제 없이 정상적으로 OS 가 설치되었습니다.


중간에 Ubuntu 설정 과정이 있음으로 꼭 화면 출력과 키보드 마우스 연결이 필요합니다.


이후, SDK 설치를 진행하시면 됩니다.


GPU 를 사용하는 작업을 하시려면 SDK 설치가 필수적입니다.





2. 기본적인 설정


본래 TK1 에서는 apt upgrade 를 돌려버리면 죽어버리는 문제가 있었지만, JetPack 일정 버전 부터는 문제 없이 업글이 가능합니다. 그리고 간단한 SSH 서버 설정을 한 다음 로그인에 성공하였습니다.


Connecting to 192.168.0.58:22...

Connection established.

To escape to local shell, press 'Ctrl+Alt+]'.


Welcome to Ubuntu 18.04.2 LTS (GNU/Linux 4.9.140-tegra aarch64)


 * Documentation:  https://help.ubuntu.com

 * Management:     https://landscape.canonical.com

 * Support:        https://ubuntu.com/advantage


This system has been minimized by removing packages and content that are

not required on a system that users do not log into.


To restore this content, you can run the 'unminimize' command.


0 packages can be updated.

0 updates are security updates.



The programs included with the Ubuntu system are free software;

the exact distribution terms for each program are described in the

individual files in /usr/share/doc/*/copyright.


Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by

applicable law.


root@djjproject-tx2:~#





3. HDMI 그래픽 환경


우분투 UI 가 이전의 ubuntu-desktop UI 입니다. 야밤에 친구 연구실에서 OS 를 올리느라 사진을 찍지 못했습니다. 정말 피곤했네요. 


UI의 경우 그래픽 3D 가속이 되는 상태입니다. 그런데 크롬 브라우저에서 OpenGL 은 작동하나 비디오 가속 재생은 미지원 상태입니다. 혹시나 Kodi 를 설치해 보았으나 SW 로 가속이 되는 상태입니다.


차후에 미디어센터 겸 + 트랜스코딩 서버에 대한 부분으로 검토를 진행 예정입니다.


한편, 화면을 보면서 작업하는 것을 매우 싫어하기 때문에 쉘로만 진행하고 카메라 영상을 보는 그런 것 제외 모두 쉘로만 작업합니다.





4. 간단한 리소스 확인


EMMC 5.1 32기가 / 램8기가 / armv8 64비트 쿼드코어 + 데네버 듀얼코어 사양입니다.


램8기가 라는 부분은 이때까지 4기가 인줄 알았는데 놀라운 부분이였습니다.


root@djjproject-tx2:~# df -h

Filesystem      Size  Used Avail Use% Mounted on

/dev/root        28G   13G   14G  48% /

devtmpfs        3.9G     0  3.9G   0% /dev

tmpfs           3.9G  4.0K  3.9G   1% /dev/shm

tmpfs           3.9G   20M  3.9G   1% /run

tmpfs           5.0M  4.0K  5.0M   1% /run/lock

tmpfs           3.9G     0  3.9G   0% /sys/fs/cgroup

tmpfs           787M     0  787M   0% /run/user/0

tmpfs           787M   20K  786M   1% /run/user/120


root@djjproject-tx2:~# cat /proc/cpuinfo 

processor : 0

model name : ARMv8 Processor rev 3 (v8l)

BogoMIPS : 62.50

Features : fp asimd evtstrm aes pmull sha1 sha2 crc32

CPU implementer : 0x41

CPU architecture: 8

CPU variant : 0x1

CPU part : 0xd07

CPU revision : 3



한가지 특이한 점은 데네버 코어를 어떻게 쓰는 것인지 모르겠습니다. tegrastats 를 보면 CPU가 꺼져 있다고 나옵니다. 


작업량이 커지면 알아서 켜지는 것인지는 조금 공부를 해봐야 알 것 같네요 ㅎㅎ.. 


root@djjproject-tx2:/usr/local# tegrastats

RAM 626/7860MB (lfb 1656x4MB) CPU [3%@345,off,off,0%@345,1%@345,3%@345] EMC_FREQ 1%@408 GR3D_FREQ 0%@114 APE 150 PLL@28.5C MCPU@28.5C PMIC@100C Tboard@26C GPU@27C BCPU@28.5C thermal@27.9C Tdiode@25.25C VDD_SYS_GPU 154/154 VDD_SYS_SOC 308/308 VDD_4V0_WIFI 0/0 VDD_IN 962/962 VDD_SYS_CPU 153/153 VDD_SYS_DDR 133/133

RAM 627/7860MB (lfb 1656x4MB) CPU [3%@499,off,off,0%@499,0%@499,0%@499] EMC_FREQ 1%@408 GR3D_FREQ 0%@114 APE 150 PLL@28.5C MCPU@28.5C PMIC@100C Tboard@26C GPU@27C BCPU@28.5C thermal@27.9C Tdiode@25C VDD_SYS_GPU 154/154 VDD_SYS_SOC 308/308 VDD_4V0_WIFI 0/0 VDD_IN 924/943 VDD_SYS_CPU 153/153 VDD_SYS_DDR 114/123

RAM 627/7860MB (lfb 1656x4MB) CPU [1%@345,off,off,0%@345,0%@345,0%@345] EMC_FREQ 15%@40 GR3D_FREQ 0%@114 APE 150 PLL@28.5C MCPU@28.5C PMIC@100C Tboard@26C GPU@27C BCPU@28.5C thermal@27.9C Tdiode@25.25C VDD_SYS_GPU 154/154 VDD_SYS_SOC 308/308 VDD_4V0_WIFI 0/0 VDD_IN 847/911 VDD_SYS_CPU 153/153 VDD_SYS_DDR 95/114

RAM 626/7860MB (lfb 1656x4MB) CPU [5%@345,off,off,0%@345,0%@345,0%@345] EMC_FREQ 15%@40 GR3D_FREQ 0%@114 APE 150 PLL@28.5C MCPU@28.5C PMIC@100C Tboard@26C GPU@27C BCPU@28.5C thermal@27.9C Tdiode@25.25C VDD_SYS_GPU 154/154 VDD_SYS_SOC 308/308 VDD_4V0_WIFI 0/0 VDD_IN 847/895 VDD_SYS_CPU 153/153 VDD_SYS_DDR 95/109

RAM 626/7860MB (lfb 1656x4MB) CPU [0%@345,off,off,0%@345,0%@345,0%@345] EMC_FREQ 15%@40 GR3D_FREQ 0%@114 APE 150 PLL@28.5C MCPU@28.5C PMIC@100C Tboard@26C GPU@27C BCPU@28.5C thermal@27.9C Tdiode@25.25C VDD_SYS_GPU 154/154 VDD_SYS_SOC 308/308 VDD_4V0_WIFI 0/0 VDD_IN 847/885 VDD_SYS_CPU 153/153 VDD_SYS_DDR 95/106





5. 차후 확인할 방향


항상 인공지능 기술에 대해서 겉핧기로 공부를 하고 있다보니.. 무얼 해봐야 하는지 잘 모르겠습니다.


한편으로, 국내에서는 무언가 실질적인 이야기를 할수 없는..  내부적으로 어떻게 데이터 연산이 되는지에 대해 말을 할 수 없다는 것이 너무 아쉬웠습니다. 이론적으로 수학적으로.. 많이 설명이 되어 있지만, 실제로 데이터가 어떻게 들어가서 연산이 되는지에 대한 정보가 많이 부족합니다.


제 수준도 많이 부족하고 인공지능 부분에서 라이브러리를 잘 쓰는 방법만 익히고 그에 대한 간단한 수학적인 지식만 머리에 넣다보니 전반적인 이해가 부족한것 같습니다.


그래서 일단은 요즘 뜨고 있는 프로젝트를 바로 작성하여 구동해 볼 수 있도록 환경을 구축하고, 샘플 코드를 작동시켜 보는 것으로 마무리를 하려고 합니다.


일단 환경 구축까지 문서화 해두고 차후 그 환경으로 개발을 진행할 경우 빠르게 작업환경이 구성가능하게 만들어 두려고 합니다.


대략적으로 TX2 에서 해볼만한 프로젝트를 아래와 같이 생각해 보았습니다. 절대 유의미한 프로젝트를 만들어내는것이 목표가 아닙니다 ㅎㅎ


1. Tensorflow 구동 + CUDA 연동 (다른 라이브러리도 있지만 주력으로 다룹니다)

2. tegra-docker 사용

3. gstreamer 하드웨어 가속 (+ GstCUDA)

4. v4l2 Camera API 사용

5. OpenCV 환경 구축 및 샘플 프로젝트

6. Caffe / pyTorch / TensorRT (본인도 잘 모릅니다 ㅎㅎ.. 일단 해보는걸로..)

7. 사물 인식 Yolo

8. Kodi 미디어 센터

9. 기타 IO 체크 (USB3 / SATA / PCI)


요정도 돌려볼 예정입니다.


차후 글로 뵙겠습니다. ㅎㅎ


감사합니다.


댓글을 달아 주세요