공식(Deep Dive) 무료 공개 아키텍쳐이다. Convolution Core Single Data Processor Planar Data Processor Channel Data Processor Dedicated Memory and Data Reshape Engines Deep Learning Accelerator Throughput https://en.wikichip.org/wiki/nvidia/tegra/xavier Amazon EC2 실제 Product로 검증되어서 출시된것이 Jetson Xavier이다. 공식문서 컨텐츠 공식 사이트: http://nvdla.org/ Working with DLA 보면 코드가 있다. Jetpack에 있는 Doc.을 보고 TensorRT에서 어떻게 NVDLA를 사용할 수 있는지 알 수 있다. 하드웨어 구성요소 소프트웨어 Xavier DLA는 코딩이 가능한가? [1] 공식 깃허브: https://github.com/nvdla/ [2] DEVIEW2018: https://tv.naver.com/v/4580068 [3] NVidia TensorRT: High-performance deep learning inference accelerator (TensorFlow Meets): https://www.youtube.com/watch?v=G_KhUFCUSsYNVDLA: NVIDIA Deep Learning Accelerator (DLA) 개론
http://nvdla.org/primer.html
이것을 통해 딥러닝 추론 가속기의 디자인 표준을 제공하는 목적을 가진다.Accelerating Deep Learning Inference using NVDLA
NVDLA
하드웨어는 다음의 컴포넌트들을 포함하고 있다.정보
The other accelerators on-die is the deep learning accelerator (DLA) which is actually a physical implementation of the open source Nvidia NVDLA architecture. Xavier has two instances of NVDLA which can offer a peak theoretical performance of 5.7 teraFLOPS (half precision FP) or twice the throughput at 11.4 TOPS for int8.
11.4 TOPS (int8)
5.7 TFLOPS (FP16)Sample Platforms
Simulation
FPGA
F1
environmentXavier
DLA (FP16 at this time)을 지원하며 이것을 TensorRT에서 사용할 수 있도록 지원 한다.공식 문서
http://nvdla.org/contents.포럼 DLA 사용
./sample_mnist --useDLACore=1
jsteward@jetson-0423718016929:~/Work/tensorrt/bin$ ./sample_mnist --useDLACore=1
Building and running a GPU inference engine for MNIST
WARNING: Default DLA is enabled but layer prob is not running on DLA, falling back to GPU.
WARNING: Default DLA is enabled but layer (Unnamed Layer* 9) [Constant] is not running on DLA, falling back to GPU.
WARNING: (Unnamed Layer* 10) [ElementWise]: DLA cores do not support SUB ElementWise operation.
WARNING: Default DLA is enabled but layer (Unnamed Layer* 10) [ElementWise] is not running on DLA, falling back to GPU.
Segmentation fault (core dumped)
즉 CUDA와 다르게 막 쓸 수는 없고 DLA는 TensorRT를 통해서만 사용할 수 있다.
https://docs.nvidia.com/deeplearning/sdk/tensorrt-developer-guide/index.html#dla_topic
https://devtalk.nvidia.com/default/topic/1041768/jetson-agx-xavier/tensorrt-5-docs-and-examples/post/5284437/#5284437Convolution Core
: 서로 다른 크기로 지원Single Data Point Processor
: activation function을 위한 방법이다. linear와 non-linear모두를 지원한다.Planar Data Processor
: pooling을 위한것Cross-Channel Data Processor
: local normalization을 위한것 같다.Data Reshape Engines
: 텐서 복사나 리쉐입을 위한 memory to meory transformation acceleration. 즉, splitting, slicing, merging, contraction, reshape transpose.Bridge DMA
: 시스템 DRAM사이에서의 데이터 전송을 관장한다.Compilation tools:
(model conversion).Runtime environment:
(run-time software to load and execute entworks on NVDLA).
https://devtalk.nvidia.com/default/topic/1041868/jetson-agx-xavier/nvdla-programming-interface/NVDLA의 전력 소모
참고자료
'AI > NVIDIA' 카테고리의 다른 글
TensorRT 개론 및 Docker기반 실행 (0) | 2021.02.04 |
---|---|
TensorRT이용한 Xavier DLA (NVDLA) 실행 (4) | 2019.02.08 |
NVIDIA AI Tech Workshop at NIPS 2018 -- Session3: Inference and Quantization (0) | 2019.02.06 |
DeepStream을 통한 low precision YOLOv3 실행 (0) | 2019.01.24 |
YOLOv3 on Jetson AGX Xavier 성능 평가 (2) | 2019.01.10 |