MATLAB Coder

BEDEUTENDES UPDATE

 

MATLAB Coder

Generierung von C und C++ Code aus MATLAB Programmcode

Screenshot von generiertem C Code für eine Matrix-Multiplikationsoperation.

Ausführung in jeder Umgebung

Verwenden Sie einen beliebigen C/C++ Compiler, um Ihren generierten Code zu kompilieren und auf jeder beliebigen Hardware auszuführen, von Desktop-Systemen über mobile Geräte bis zu Embedded Hardware. Der generierte Code ist lizenzgebührenfrei – Sie können ihn Ihren Kunden für kommerzielle Anwendungen kostenlos zur Verfügung stellen.

Ein Athlet startet ein Rennen mit überlagerter Posenschätzung.

Verwendung von Funktionen aus Toolboxen

Verwenden Sie die MATLAB Coder App oder entsprechende Befehlszeilenfunktionen, um mit MATLAB-Produkten Code für die Signalverarbeitung, Computer Vision, Deep Learning, Steuerungssysteme und andere Anwendungen zu generieren.

Vier verschiedene Embedded-Entwicklungsboards.

Prototyping auf Embedded Hardware

Mit der automatischen Konvertierung Ihres Algorithmus nach C/C++ erreichen Sie schnell das Hardwarestadium. Nutzen Sie jedes gewünschte Zielgerät, indem Sie den generierten Code manuell in Ihre Anwendung integrieren. Automatisieren Sie den Prozess für Raspberry Pi mit dem MATLAB Support Package for Raspberry Pi.

MATLAB-Code, der ein einfaches Klassenobjekt implementiert, und gleichwertiger generierter C++ Klassencode.

Bereitstellen von C++ Code aus MATLAB

Generieren Sie C++ Klassen aus Klassen in Ihrem MATLAB Programmcode, einschließlich Wertklassen, Handle-Klassen und System objects. Kompilieren Sie den generierten Code in C++ Bibliotheken oder ausführbare Dateien und integrieren Sie sie in Ihre vorhandene C++ Anwendung.

Screenshot des generierten C-Codes, einschließlich Aufrufen von OpenMP.

Optimierung von generiertem Code

Generieren Sie SIMD-Anweisungen, parallelisieren Sie Schleifen mit Multicore-OpenMP-Code und rufen Sie optimierte Bibliotheken wie LAPACK, BLAS und FFTW auf. Verwenden Sie die Anweisungen mit Embedded Coder, um prozessorspezifischen intrinsischen Code für eine noch schnellere Ausführung zu generieren.

Diagramme von EEG-Zeitreihendaten während eines epileptischen Anfalls, vor dem Anfall und im Normalzustand neben den entsprechenden Skalogrammen.

Deep Learning-Netze und Machine Learning-Modelle einsetzen

Stellen Sie eine Vielzahl trainierter Netzwerke (wie ResNet-50 und MobileNet-v2), Support Vector Machine (SVM)-Modelle und Entscheidungsbaummodelle zusammen mit Vorverarbeitungs- und Nachverarbeitungslogik auf jeder CPU bereit, einschließlich Intel®- und ARM® Cortex®-Prozessoren.

Screenshot, der die interaktive Rückverfolgbarkeit zwischen MATLAB-Code und generiertem C/C++ Code zeigt.

Integration in Software

Sie können MATLAB-Algorithmen in Form von C/C++ Quellcode oder Bibliotheken in Ihrer Softwareumgebung wiederverwenden. Der generierte Code verwendet C/C++ Typen auf natürliche Weise und kann Ihre vorhandenen vertrauenswürdigen C/C++ Funktionen aufrufen, wodurch die Integration mit externem Code vereinfacht wird.

Screenshot der MATLAB Coder-App während der Verifikation von Code für MEX-Funktionen.

Wiederverwendung von MATLAB-Tests in generiertem Code

Sie können vorhandene MATLAB-Tests wiederverwenden, um das Verhalten von generiertem Code in der interaktiven MATLAB-Umgebung zu verifizieren. Verwenden Sie das MATLAB-Unit-Test-Framework, um schnell einen umfangreichen Satz von Regressionstests zu entwickeln, mit denen Sie Ihren generierten C/C++ Code überprüfen können.

Screenshot der Profilinformationen für eine generierte MEX-Funktion.

Beschleunigen von Algorithmen

Rufen Sie generierten Code in Form von MEX-Funktionen über Ihren MATLAB Programmcode auf, um die Ausführung zu beschleunigen. Profilieren Sie die generierten MEX-Funktionen, um Engpässe zu identifizieren und Optimierungsbemühungen zu fokussieren.

„Dank MATLAB und Embedded Coder konnten wir die Zeit, die wir für die Fertigstellung des Projekts benötigten, von 24 auf 12 Monate verkürzen – ohne weitere Ingenieure ins Team aufzunehmen.“

Kostenlose Testversion anfordern

30 Tage kostenlos ausprobieren.


Weitere Informationen anfordern

Lassen Sie uns wissen, wie wir Ihnen helfen können.