GPU Coder

 

GPU Coder

Generazione di codice CUDA per GPU NVIDIA

Report sulla generazione di codice che mostra il codice CUDA generato.

Generazione di codice CUDA da MATLAB

Compila ed esegui il codice CUDA generato dagli algoritmi MATLAB sulle GPU NVIDIA più diffuse, da schede RTX per desktop a data center e a piattaforme embedded Jetson e DRIVE. Distribuisci gratuitamente il codice generato senza royalty ai clienti.

Modello Simulink di un rilevatore di corsie e veicoli.

Generazione di codice CUDA da Simulink

Utilizza Simulink Coder con GPU Coder per generare codice CUDA dai modelli Simulink e distribuiscilo a GPU NVIDIA. Accelera le parti delle simulazioni Simulink onerose dal punto di vista computazionale su GPU NVIDIA.

Foto della piattaforma NVIDIA Jetson.

Distribuzione su NVIDIA Jetson e DRIVE

GPU Coder automatizza la distribuzione del codice generato sulle piattaforme NVIDIA Jetson e DRIVE. Accedi alle periferiche, acquisisci i dati dei sensori e distribuisci l’algoritmo alla scheda insieme al codice di interfaccia periferico per l’esecuzione autonoma.

Due viste della fotocamera del traffico stradale in un’applicazione per il rilevamento di veicoli e corsie in Simulink.

Generazione di codice per il Deep Learning

Distribuisci una serie di reti di Deep Learning predefinite o personalizzate su GPU NVIDIA. Genera codice per la pre-elaborazione e la post-elaborazione insieme alle proprie reti di Deep Learning addestrate per distribuire algoritmi completi.

Grafico a barre intitolato “Inferenza con ResNet-50” che mostra l’aumento delle immagini al secondo con l’utilizzo di tipi di dati FP32 e INT8.

Ottimizzazione del codice generato 

GPU Coder applica automaticamente ottimizzazioni come la gestione della memoria, la fusione di kernel e la regolazione automatica. Riduci il footprint di memoria generando codice INT8 o bfloat16. Aumenta ulteriormente le prestazioni tramite l’integrazione con TensorRT.

Un report dallo strumento GPU Coder Performance Analyzer che mostra informazioni di profilazione sul codice generato.

Profilazione e analisi del codice generato

Utilizza GPU Coder Performance Analyzer per profilare il codice CUDA generato e identificare opportunità di migliorare ulteriormente la velocità di esecuzione e il footprint di memoria.

Diagramma che mostra come funziona il pattern di progettazione per le operazioni di tipo “stencil” a livello concettuale.

Utilizzo di pattern di progettazione per incrementare le prestazioni

I pattern di progettazione, comprese le operazioni e le riduzioni di tipo “stencil”, vengono applicati automaticamente, quando disponibili, per aumentare le prestazioni del codice generato. È anche possibile richiamarli manualmente usando pragma specifici.

Report sulla generazione di codice che mostra la tracciabilità bidirezionale interattiva tra il codice MATLAB e il codice CUDA generato.

Registrazione di segnali, regolazione di parametri e verifica del comportamento del codice 

Utilizza GPU Coder con Simulink Coder per registrare segnali e regolare parametri in tempo reale. Aggiungi Embedded Coder per un tracciamento interattivo tra il codice MATLAB e il codice CUDA generato per verificare numericamente il comportamento del codice CUDA generato tramite il test SIL. 

Modello Simulink di un algoritmo di previsione ECG con GPU Coder e GPU NVIDIA utilizzati per una maggiore velocità.

Accelerazione delle simulazioni MATLAB e Simulink

Richiama il codice CUDA generato come una funzione MEX dal codice MATLAB per velocizzare l’esecuzione. Utilizza Simulink Coder con GPU Coder per accelerare le parti onerose dal punto di vista computazionale dei blocchi funzione MATLAB nei modelli Simulink su GPU NVIDIA.

“MATLAB ci ha messo a disposizione tutti gli strumenti di cui avevamo bisogno per procedere all’annotazione dei dati, alla scelta, ai test e alla regolazione del nostro modello di Deep Learning. In più, GPU Coder ci ha consentito di distribuirlo rapidamente sulle nostre GPU NVIDIA anche se la nostra esperienza in materia di GPU fosse limitata.”