6/25/2019

JetPack 4.2 Jetson AGX Xavier 설정

1. HW 기본구성 

Jetson TX2와 유사하며, 대신 USB가 USB Ctype으로 변경됨






관련기본자료
  https://developer.nvidia.com/embedded/jetson-agx-xavier-developer-kit#resources

1.1 HW 기본준비사항 


  • Cable  연결준비 
  1. HDMI Cable을 연결 (모니터)
  2. USB Type C Cable을 Front 에 연결하고 Host PC 연결 
  3. USB Type C Gender를 Rear 에 연결 (USB Keyboard, Mouse 연결) 
  4. Power Cable 선택해서 연결 
  5. RJ45 Cable 연결 ( 인터넷가능,  설치시 NTP 및 지역설정이 자동가능)

EVM의 그림 Manual을 보면 쉽게 이해가 간다.

  • Recovery Mode 
  1. Connect the developer kit as described above. It should be powered off.
  2. Press and hold down the Force Recovery button.
  3. Press and hold down the Power button.
  4. Release both buttons.


  https://developer.download.nvidia.com/assets/embedded/secure/jetson/xavier/docs/jetson_agx_xavier_developer_kit_user_guide.pdf?oLT9U58VWURXZ4bx9Lh9P8vtyo8p1k4KGZVZqvhEsqbfbRj-9t16t2VYuFUCAgFJeobfGdnvMx3UWXHMRQohXTPND1dBpHxSnEA-dPISTYz02FVZv-ptPBjTSmeoGL1uGXl_u8zXw5ne6Vwbq0atMkEu1aOzzoj9OQRZYax8wiE-vCVn0QQTViaJDL1XZuhWit39z61Q4g

1.2 Jetson Board HW 비교 

Jetson TX2와 Jetson AGX Xavier를 간단히 변경사항을 정리해보자.

  1. CPU: ARM Core 구성이 변경되었지만, 다른 SoC에서 보지 못한 구성이라 아래 링크
  2. GPU: Pascal -> Volta 변경 및 64 Tensor Cores 지원
  3. DL : Deep Learning Accelerator 기존 Jetson TX2는 Software로 지원했지만, HW지원 아래 링크
  4. VISION: Hw적으로 지원 
  5. Encoder/Decoder: 성능향상 
  6. Camera : 대역폭 뿐만아리라 MIPI Lane이 늘어나서 더 많은 Camera지원
  7. Display: DP도 지원
  8. Storage : eMMC ->UFS  ( 아래 사이트는 eMMC라고 하는데, UFS로 변경)  
  9. 성능 1.3 TFLOPS -> 32 TFLOPS 변경 

일단 성능만 비교해도, Jetson TX2와 Jetson AGX Xavier와는 차이가 많이 나며, CPU 구성과 Cache Memory도 압도적으로 많이 변경되었으며,
지금까지 TensorRT 의 DLA 기능을 SW로 사용했다면, Jetson AGX Xavier는 HW적으로 지원을 해주는 것 같다.

Jetson Board 정보
  https://elinux.org/Jetson

Jetson AGX Xavier 정보
  https://elinux.org/Jetson_AGX_Xavier

ARM Carmel (12nm 공정)
  https://en.wikichip.org/wiki/nvidia/microarchitectures/carmel

NVDLA ( NVIDIA Deep Learning Accelerator)
  http://nvdla.org/
  http://nvdla.org/primer.html

AGX Xavier TRM
  https://developer.download.nvidia.com/assets/embedded/secure/jetson/xavier/docs/Xavier_TRM_DP09253002.pdf?wSzYDPx04Z3AssWO020RVOjv4PfAZD3duF_eQ9BhXqsQnKoccaHD1fJCHSbPkQ1JuhYbFVNLP9c4c6eqjRdNd7f4qfBjlgr_z8OZ-CPek0Y-Op7SllE-SHmowasgffcPbQiOrOkZ_yJDDJo-UNoqSjbq4oIP6ZEL6Hq_Cl8-ZGM3dA

  https://developer.download.nvidia.com/assets/embedded/secure/jetson/xavier/docs/JetsonXavierSOMDataSheet_v0.9.pdf?ULgdLa4-gDpY7tntg6DYmCQ5a8DfXuzQYw1zkZmZ5uSP9T7aBKPfVQkbbXSAE7DVFn0StLsQ5P2sC3Izyt0ojEAEvXHw5sWdUESOoZimytwvkHfQmg-BSTQ1fQoX7MTxxa97gE9e4SRayA1WH0Nf0D5TQeqtYOenAXa6Guz_7BM-wWU7bde6Mxx4

  http://karekinada.na.coocan.jp/Jetson/Xavier.doc/1-6_Xavier_Soc/index.html

2. SW 설치 JetPack 4.2 설치

이미 Jetson TX2로 인하여, JetPack 4.2는 설치가 되어있으며, 추가적으로 이를 설치를 진행을 하면된다.


  • 기존 설치와 동일 
  1. Recovery Mode 진입 
  2. SDKManager 설치진행 
  3. Board는 AGX Xavier 확인 (자동으로 잡히는 것 같음)


$ lsusb   // NVIDIA 연결확인 
..
Bus 001 Device 055: ID 0955:7019 NVidia Corp.

$ sdkmanager   // GUI 로 설치 진행 


  • 설치사항 확인  (기존과 동일)
  1. Jetson OS 가 설치 후 HDMI 연결하여 Ubuntu 설정 후 SSH 연결
  2. Jetson SDK Components ( SSH 연결된 후 설치가능)


아래 Message는 Jetson OS만 설치되어으며, 반드시 HDMI로 연결 후 Ubunutu 설정


  • Jetson Xavier 에서 Ubunut에서 update/upgrade 동일진행
$ sudo apt update
$ sudo apt upgrade

시간이 많이 걸림



  • Host PC 변경사항 확인

$ tree -L 2 ~/nvidia/nvidia_sdk
/home/jhlee/nvidia/nvidia_sdk
├── JetPack_4.2_Linux
│   └── documentations
├── JetPack_4.2_Linux_P2888    // Jetson AGX Xavier 새로 생김 
│   └── Linux_for_Tegra
└── JetPack_4.2_Linux_P3310   // Jetson TX2
    └── Linux_for_Tegra


$  ls ~/Downloads/nvidia/sdkm_downloads/                    // Jetson SDK component 파일 부분 확인 
Jetson_Linux_R32.1.0_aarch64.tbz2                                libopencv-dev_3.3.1-2-g31ccdfe11_arm64.deb
NVIDIA_Nsight_Graphics_2018.7.L4T.25921359.deb                   libopencv-python_3.3.1-2-g31ccdfe11_arm64.deb
NsightSystems-linux-public-2019.3.2.12-510a942.deb               libopencv-samples_3.3.1-2-g31ccdfe11_arm64.deb
Tegra_Linux_Sample-Root-Filesystem_R32.1.0_aarch64.tbz2          libopencv_3.3.1-2-g31ccdfe11_arm64.deb
Tegra_Multimedia_API_R32.1.0_aarch64.tbz2                        libvisionworks-repo_1.6.0.500n_arm64.deb
cuda-repo-cross-aarch64-10-0-local-10.0.166_1.0-1_all.deb        libvisionworks-sfm-repo_0.90.4_arm64.deb
cuda-repo-l4t-10-0-local-10.0.166_1.0-1_arm64.deb                libvisionworks-tracking-repo_0.88.2_arm64.deb
cuda-repo-ubuntu1604-10-0-local-10.0.166-410.62_1.0-1_amd64.deb  python-libnvinfer-dev_5.0.6-1+cuda10.0_arm64.deb
devtools_docs.zip                                                python-libnvinfer_5.0.6-1+cuda10.0_arm64.deb
graphsurgeon-tf_5.0.6-1+cuda10.0_arm64.deb                       python3-libnvinfer-dev_5.0.6-1+cuda10.0_arm64.deb
libcudnn7-dev_7.3.1.28-1+cuda10.0_arm64.deb                      python3-libnvinfer_5.0.6-1+cuda10.0_arm64.deb
libcudnn7-doc_7.3.1.28-1+cuda10.0_arm64.deb                      sdkmanager_0.9.12-4180_amd64.deb
libcudnn7_7.3.1.28-1+cuda10.0_arm64.deb                          sdkml3_jetpack_l4t_42.json
libnvinfer-dev_5.0.6-1+cuda10.0_arm64.deb                        tensorrt_5.0.6.3-1+cuda10.0_arm64.deb
libnvinfer-samples_5.0.6-1+cuda10.0_all.deb                      uff-converter-tf_5.0.6-1+cuda10.0_arm64.deb

  • Jetson AGX Xavier Backup (현재 지원안됨)
상위 Jetson TX2 Tree에서 진행을 해도 마찬가지로 동일하게 Backup을 진행했지만, 에러발생 (주소를 Jetson TX2 바꿔도 동일하게 에러발생)

$ cd ~/nvidia/nvidia_sdk/JetPack_4.2_Linux_P2888/Linux_for_Tegra 

$ lsusb // 반드시 Jetson 연결 확인 후, Recovery Mode 변경
..
Bus 001 Device 055: ID 0955:7019 NVidia Corp.

$ sudo ./flash.sh -r -k APP -G cloneX.img  jetson-xavier mmcblk0p1    // Jetson AGX Xavier의 APP Partition Image를 Backup  (cloneX.img) ( Filesystem)

$ ls   // 파일 두 개 확인
cloneX.img  cloneX.img.raw  

상위와 같이 Xavier로도 주소를 변경하여도, 상위 Backup이 제대로 동작이 안됨
  https://devtalk.nvidia.com/default/topic/1039548/jetson-agx-xavier/xavier-cloning/

JetPack 4.2 설치방법
  https://ahyuo79.blogspot.com/2019/05/jetpack-42.html

2.1  AGX Power MODEL

Jetson TX2와 동일하게 아래와 같이 설정하여, CPU Clock 과 Power Management를 변경이 가능하다.

  • Maximum Performance
$ sudo nvpmodel -m 0 
$ jetson_clocks.sh


  • Check Power Model 

$ sudo /usr/sbin/nvpmodel -q    // check current model 
NV Power Mode: MODE_15W
2

nvpmodel 의  clock 및 power
Mode ID0123456
Power BudgetEDP10W15W30W30W30W30W
Online CPU8248642
CPU Max Frequency (MHz)2265.6120012001200145017802100
GPU Max Frecuency (MHz)1377520670900900900900
DLA Max Frequency (MHz)1395.25507501050105010501050
PVA Cores2011111
PVA Max Frequency (MHz)10880550760760760760
Max Frequency2133106613331600160016001600

nvpmodel 과 jetson_clock 관련설명
  https://www.jetsonhacks.com/2018/10/07/nvpmodel-nvidia-jetson-agx-xavier-developer-kit/
  https://developer.ridgerun.com/wiki/index.php?title=Xavier/JetPack_4.1/Performance_Tuning/Tuning_Power