GPU Coder

 

GPU Coder

NVIDIA GPU에서 사용 가능한 CUDA 코드를 생성

MATLAB에서 CUDA 코드 생성

MATLAB 알고리즘으로부터 생성된 CUDA 코드를 데스크탑 RTX 카드부터 데이터 센터, 임베디드 Jetson 및 DRIVE 플랫폼에 이르기까지 널리 쓰이는 NVIDIA GPU에 대해 컴파일하고 실행할 수 있습니다. 생성된 코드는 고객에게 사용료 없이 무료로 배포할 수 있습니다.

Simulink에서의 CUDA 코드 생성

GPU Coder와 Simulink Coder를 함께 사용하여 Simulink 모델로부터 CUDA 코드를 생성하고 NVIDIA GPU에 배포할 수 있습니다. NVIDIA GPU에서 Simulink 시뮬레이션의 계산 집약적 부분을 가속화할 수 있습니다.

NVIDIA Jetson 및 DRIVE로의 배포

GPU Coder는 생성된 코드를 NVIDIA Jetson 및 DRIVE 플랫폼에 배포하는 작업을 자동화합니다. 주변기기에 액세스하고 센서 데이터를 수집하며 알고리즘과 주변기기 인터페이스 코드를 보드에 배포하여 단독으로 실행할 수 있습니다.

딥러닝에 사용 가능한 코드 생성

미리 정의되거나 사용자 지정된 다양한 딥러닝 신경망을 NVIDIA GPU에 배포할 수 있습니다. 훈련된 딥러닝 신경망과 더불어 전처리나 후처리에 사용되는 코드를 생성하여 전체 알고리즘을 배포할 수 있습니다.

생성된 코드 최적화 

GPU Coder는 메모리 관리, 커널 융합, 자동 조정을 포함한 최적화를 자동으로 적용합니다. INT8 또는 bfloat16 코드를 생성하여 메모리 사용량을 줄일 수 있습니다. TensorRT와 통합하여 성능을 더욱 향상할 수 있습니다.

생성된 코드의 프로파일링 및 분석

GPU 성능 분석기를 사용하여 생성된 CUDA 코드를 프로파일링하고 실행 속도와 메모리 사용량을 더욱 개선할 기회를 식별할 수 있습니다.

설계 패턴을 사용한 성능 향상

가능하다면 스텐실 처리 및 축소를 포함한 설계 패턴이 자동으로 적용되어 생성된 코드의 성능을 향상할 수 있습니다. 특정 프라그마를 사용하여 직접 호출할 수도 있습니다.

신호 기록, 파라미터 조정 및 코드 동작 검증 

Simulink Coder와 GPU Coder를 함께 사용하면 실시간으로 신호를 기록하고 파라미터를 조정할 수 있습니다. MATLAB과 생성된 CUDA 코드 간의 대화형 방식 추적을 위해 Embedded Coder를 추가하여 생성된 CUDA 코드의 동작을 SIL 테스트를 통해 수치적으로 검증할 수 있습니다. 

MATLAB 및 Simulink 시뮬레이션 가속화

생성된 CUDA 코드를 MATLAB 코드로부터 MEX 함수로서 호출하여 실행 속도를 높일 수 있습니다. GPU Coder와 Simulink Coder를 함께 사용하면 NVIDIA GPU에서 Simulink 모델에 있는 MATLAB Function 블록의 계산 집약적 부분을 가속화할 수 있습니다.

“데이터 주석부터 딥러닝 모델의 선택, 훈련, 테스트, 미세 조정에 이르기까지, MATLAB에는 우리에게 필요한 모든 툴이 있었습니다. 또한 GPU Coder 덕분에 GPU 관련 경험이 부족했어도 NVIDIA GPU로의 배포를 신속히 진행할 수 있었습니다.”

Valerio Imbriolo, Drass Group

GPU Coder에 대해 더 알아보고 싶으십니까?