GPU编码器

NVIDIA GPU에활용할수있는CUDA코드생성

GPU编码器를사용하면MATLAB코드로부터최적화된CUDA코드를생성하여딥러닝,임베디드비전,자율시스템에활용할수있습니다。생성된코드는최적화NVIDIA CUDA라이브러리를호출하고,프로젝트에소스코드,정적라이브러리또는동적라이브러리로써통합시킬수있으며,NVIDIA特斯拉나的NVIDIA Tegra와같은GPU에프로토타이핑하는데사용할수있습니다。MATLAB내에서생성된CUDA를사용하여MATLAB코드에서계산집약적인부분을가속화할수있습니다。GPU编码器를이용하면MATLAB알고리즘과생성된코드에기존의CUDA코드를통합시킬수있습니다。

GPU编码器를嵌入式编码®와함께사용하여SIL(软件在半实物)테스팅을통해,생성된코드의결과를검증할수있습니다。

시작하기:

빠르고유연한CUDA코드생성

최적화CUDA코드생성。로열티없이코드배포。

로열티없이알고리즘배포

코드를생성하고컴파일하여데스크탑시스템,데이터센터,임베디드하드웨어등에널리사용되는NVIDIA GPU에서실행하십시오。생성된코드는로열티가없습니다。상용응용프로그램에서고객에게무료로배포할수있습니다。

갤러리탐색(이미지2개)

GPU编码器성공사례

다양한업계에종사하는엔지니어와과학자가어떻게GPU编码器를이용하여응용프로그램용CUDA코드를생성하는지살펴보십시오。

NVIDIA杰特森TX2에서자동결함점검을프로토타이핑하고있는空中客车公司。

지원되는툴박스및함수로부터코드생성

GPU编码器는다양하고폭넓은MATLAB언어기능을이용하여코드를생성합니다。설계엔지니어는이코드를이용해서더큰시스템의구성요소인알고리즘을개발할수있습니다。MATLAB및툴박스에는390개가넘는연산자및함수가포함되어있습니다。

코드생성을위한MATLAB언어및툴박스지원。

레거시코드통합

레거시코드통합기능을활용하여신뢰할수있는또는최적화수준이높은CUDA코드를MATLAB알고리즘에통합하고테스트한다음에,생성된코드에서해당CUDA코드를호출해보십시오。

생성된코드에기존CUDA코드를통합。

딥러닝네트워크에서CUDA코드생성

딥러닝툴박스를이용하여,학습된딥러닝네트워크를배포

엔드투엔드딥러닝알고리즘배포

深度学习工具箱™에있는RESNET-50,SegNet등학습된다양한딥러닝네트워크를NVIDIA GPU에배포하십시오。학습된딥러닝네트워크이외에도,전처리나후처리에사용되는코드를생성하여전체알고리즘을배포하십시오。

SegNet을비롯한학습된다양한딥러닝네트워크를배포합니다。

추론을위한최적코드를생성

GPU编码器는특정알고리즘과함께추론을실행하는데필요한코드만생성하기때문에,다른딥러닝솔루션에비해생성되는코드가작습니다。생성된코드는TensorRT™,cuDNN을비롯한최적화된라이브러리를호출합니다。

CuDNN을이용하여泰坦V GPU에서VGG-16으로단일이미지추론。

TensorRT를이용한최적화

고성능딥러닝추론옵티마이저이며런타임라이브러리인NVIDIA TensorRT와통합하는코드를생성합니다。INT8또는FP16데이터형을이용하여,표준FP32데이터형에비해성능을한층업그레이드합니다。

TensorRT와INT8데이터형을이용한실행속도개선

深度学习量化

量化你的深度学习网络INT8和分析量化权重和使用模型量化库支持包选定层的偏见精度的权衡。万博1manbetx

생성된코드최적화

GPU编码器에의해생성된코드는자동으로최적화가적용됩니다。설계패턴을활용하여성능을더욱개선할수있습니다。

CPU-GPU간데이터전달을최소화하고메모리활용을최적화

GPU编码器는MATLAB코드세그먼트를자동으로분석,식별,구분하여CPU또는GPU에서실행시킵니다。CPU와GPU간데이터복사횟수를최소화하는기능도있습니다。프로파일링툴을이용하여잠재적인기타병목현상을찾아냅니다。

잠재적인병목현상이표시된프로파일보고서。

최적화된라이브러리호출

GPU编码器를통해생성된코드는TensorRT,cuDNN,cuSolver,CUFFT,CUBLAS,推力등최적화된NVIDIA CUDA라이브러리를호출합니다。MATLAB툴박스함수에서생성된코드는가능할경우언제나,최적화된라이브러리에매핑됩니다。

생성된코드에기존CUDA코드를통합。

추가적인속도향상을위해설계패턴을활용

스텐실프로세싱과같은설계패턴은공유메모리를사용하여메모리대역폭을개선합니다。컨벌루션과같은특정한함수를사용하면자동으로적용됩니다。특수한프라그마를이용하여수동으로호출할수도있습니다。

스텐실프로세싱설계패턴。

하드웨어에서프로토타이핑

알고리즘을자동으로CUDA코드로변환시켜서하드웨어속도를높이십시오。

NVIDIA杰特森및DRIVE플랫폼에대한프로토타이핑

GPU编码器™의NVIDIA®GPU지원패키지를활용하여,생성된코드를자동으로NVIDIA杰特森™및DRIVE™플랫폼에크로스컴파일링하고배포하십시오。

NVIDIA杰特森플랫폼으로의프로토타이핑。

MATLAB및생성된코드로부터주변기기와센서에액세스

MATLAB으로부터NVIDIA타겟과원격통신을하여,웹캠과기타지원주변기기에서데이터를획득하여빠르게프로토타이핑을하십시오。단독실행을위해보드에제공하는주변기기인터페이스코드와함께알고리즘을구축하고배포하십시오。

MATLAB및생성된코드로부터주변기기와센서에액세스。

프로토타이핑에서시스템양산으로이동

GPU编码器와嵌入式编码®를이용하여,생성된CUDA코드와MATLAB코드를하나씩비교해가면서대화형으로추적하십시오。SIL(软件在半实物)및PIL(处理器在所述环)테스팅을이용하여,하드웨어에서실행중인생성된코드의결과를확인하십시오。

GPU编码器와嵌入式编码를활용한대화형추적가능성보고서。

알고리즘가속화

CUDA코드를생성하고컴파일하여MATLAB내부에서사용하십시오。

GPU를이용한알고리즘가속화

생성된CUDA코드를MATLAB코드에서MEX함수로서호출하여,실행속도를높이십시오。다만성능은MATLAB코드의내용에따라달라질수있습니다。생성된MEX함수를프로파일링하여병목현상을찾아내고최적화에집중하십시오。