MATLAB Coder

 

MATLAB Coder

Generierung von C- und C++-Code aus MATLAB-Code

 

MATLAB Coder™ generiert aus MATLAB®-Code C- und C++-Code für eine Reihe unterschiedlicher Hardwareplattformen, von Desktop-Systemen bis hin zu Embedded-Hardware. Er unterstützt einen Großteil der MATLAB-Sprache und eine große Auswahl von Toolboxen. Sie können den generierten Code als Quellcode, statische Bibliotheken oder dynamische Bibliotheken in Ihre Projekte integrieren. Der generierte Code ist lesbar und plattformunabhängig. Sie können Ihren vorhandenen C-Code und Ihre vorhandenen C-Bibliotheken integrieren, um die wichtigen Teile Ihres Algorithmus besonders effizient zu gestalten oder um Code wiederzuverwenden, dem Sie vertrauen. Sie können den generierten Code auch als MEX-Funktion paketieren, die in der MATLAB-Umgebung für die Verifikation oder die Beschleunigung der Laufzeit verwendet werden kann.

Embedded Coder® erweitert MATLAB Coder für den Produktionseinsatz und unterstützt die Anpassung von Code, zielspezifische Optimierungen, die Rückverfolgbarkeit von Code sowie die Verifikation mit Software-in-the-Loop (SIL) und Processor-in-the-Loop (PIL).

Um vollständige Anwendungen bereitzustellen, einschließlich der Benutzeroberflächen, verwenden Sie das MATLAB Compiler SDK™.

 

Ausführung in jeder Umgebung

Generieren Sie lesbaren und plattformunabhängigen ANSI C-Quellcode. Stellen Sie Code lizenzgebührenfrei bereit.

Lizenzgebührenfreie Bereitstellung von Algorithmen

Sie können jeden C-Compiler verwenden, um Ihren generierten Code zu kompilieren und auf jeglicher Hardware auszuführen, von Desktop-Systemen über mobile Geräte bis hin zu Embedded-Hardware. Der generierte Code ist lizenzgebührenfrei. Sie können ihn Ihren Kunden in gewerblichen Anwendungen ohne entsprechende Gebühren bereitstellen.

Generierter Code für eine Matrizen-Multiplikation.

Erfolgsberichte zu MATLAB Coder

Erfahren Sie, wie Ingenieure und Wissenschaftler in einer Reihe unterschiedlicher Branchen MATLAB Coder verwenden, um  C-Code für ihre Anwendungen zu generieren.

Bewegungsanalyse-Algorithmen von dorsaVi für Medizin und Sport.

Unterstützte Toolboxen und Funktionen

MATLAB Coder generiert Code aus einer großen Auswahl von MATLAB-Funktionen, die von Entwicklungsingenieuren zum Entwickeln von Algorithmen als Komponenten größerer Systeme verwendet werden. Dazu gehören mehr als 1900 Funktionen und Operatoren aus MATLAB und zugehörigen Toolboxen.

Unterstützung der MATLAB-Sprache und -Toolboxen für die Codegenerierung.

Erstellung von Prototypen auf Hardware

Gelangen Sie schnell zur Implementierung auf Hardware, indem Sie Ihren Algorithmus automatisch in C konvertieren.

Erstellung von Prototypen auf Desktop- und Cloud-Plattformen

Verwenden Sie die MATLAB Coder-App oder entsprechende Befehlszeilen-Funktionen, um schnell Code für Ihre Signalverarbeitungs-, Computer-Vision-, Deep-Learning-, Regelungssystem- oder sonstige Anwendungen zu generieren und um den Code dann für Ihre Hardware zu kompilieren.

Schnelle Erstellung von Prototypen für Algorithmen auf Desktop- und Cloud-Plattformen.

Erstellung von Prototypen auf Embedded- und Mobil-Plattformen

Nutzen Sie jedes gewünschte Zielgerät, indem Sie den generierten Code manuell in Ihre Anwendung integrieren. Automatisieren Sie den Prozess für den Raspberry Pi™ mit dem MATLAB Support Package für Raspberry Pi.

Schnelle Erstellung von Prototypen für Algorithmen auf Embedded- und Mobil-Plattformen.

Übergang vom Prototyp zur Produktion

Verwenden Sie MATLAB Coder mit Embedded Coder®, um Code zu generieren, der prozessorspezifische Instruktionen nutzt. Diese können schneller ausgeführt werden als standardmäßiger ANSI/ISO C- oder C++-Code.

Laufzeitprofil des generierten eigenständigen Codes.

Integration in Software

Sie können MATLAB-Algorithmen als C-Code in Ihrer Softwareumgebung wiederverwenden.

Generierung von Code mit einfachen, leicht zu integrierenden Schnittstellen

Der generierte Code verwendet C-Typen auf natürliche Weise und vereinfacht die Integration in externen Code. Sie können generierten Code als Quellcode oder in Form von Bibliotheken integrieren. Vertrauenswürdige C-Bibliotheken oder -Komponenten können in MATLAB eingebunden werden, um auf Originaltreue zu testen. Sie werden ebenfalls automatisch vom generierten Code aus aufgerufen.

Interaktiver Rückverfolgbarkeitsbericht mithilfe von MATLAB Coder mit Embedded Coder.

Leistungsoptimierung für generierten Code

Nutzen Sie Optimierungen, um Kompromisse zwischen der Ausführungsgeschwindigkeit, der Arbeitsspeichernutzung, der Lesbarkeit und der Plattformunabhängigkeit anzupassen. Verwenden Sie Profiling-Tools, um Engpässe zu identifizieren. Um die Leistung weiter zu erhöhen, generieren Sie Mehrkern-OpenMP-Code und rufen optimierte Bibliotheken wie LAPACK, BLAS und FFTW auf, sofern verfügbar.

Beispiel für generierten Code mit Aufrufen von OpenMP.

Wiederverwenden von MATLAB-Tests für generierten Code vor der Integration

Sie können vorhandene MATLAB-Tests wiederverwenden, um das Verhalten von generiertem Code in der interaktiven MATLAB-Umgebung zu verifizieren. Mit dem MATLAB Unit Testing Framework können Sie schnell einen umfangreichen Satz an Regressionstests entwickeln, mit denen der generierte C-Code verifiziert werden kann.

Verifizieren des Verhaltens des generierten Codes, bevor Sie ihn in Ihre Anwendung integrieren.

Beschleunigen von Algorithmen

Generieren Sie C-Code und kompilieren Sie ihn zur Verwendung in MATLAB.

Beschleunigen von Algorithmen auf CPUs

Sie können generierten Code in Form von MEX-Funktionen von Ihrem MATLAB-Code aus aufrufen, um die Ausführung zu beschleunigen. Die Leistung hängt dabei jedoch von Ihrem MATLAB-Code ab. Sie können ein Profiling für generierte MEX-Funktionen durchführen, um Engpässe zu identifizieren und Ihre Optimierungsanstrengungen passend auszurichten.

Profiling von MEX-Funktionen zur Identifizierung von Leistungsengpässen.

Beschleunigung von Algorithmen mit GPUs

Verwenden Sie die Parallel Computing Toolbox™, um die Ausführung von Algorithmen in MATLAB zu beschleunigen. Verwenden Sie GPU Coder™, um CUDA-Code für die Beschleunigung der Laufzeit oder Verteilung zu generieren, der auf jeder modernen NVIDIA®-GPU ausgeführt werden kann.

Beschleunigung von Algorithmen mit GPUs.

Neue Funktionen

Codegenerierung für Deep-Learning-Netze

Generierung von C++-Code für Inferenzen aus einem trainierten Convolutional Neural Network

Zeilenorientiertes Array-Layout

Vereinfachung der Anbindung des generierten Codes an C-Umgebungen, indem Arrays im zeilenorientierten Layout gespeichert werden

Dünnbesetzte Matrizen

Generierung von Code für den Backslash-Operator

MEX-Profiling

Anzeigen der Ausführungszeiten generierter MEX-Funktionen im MATLAB Profiler

Codegenerierung für die Statistics and Machine Learning Toolbox™

Aktualisieren eines bereitgestellten SVM-Modells ohne Neugenerierung von Code

Codegenerierung für die Sensor Fusion and Tracking Toolbox™

Generierung von Code für die Beschleunigung der Laufzeit und Verteilung Ihres Algorithmus

Details zu diesen Merkmalen und den zugehörigen Funktionen finden Sie in den Versionshinweisen.

Die Vorteile der Generierung von C-Code aus MATLAB

Lesen Sie Tipps und Best Practices für die Arbeit mit MATLAB Coder und erfahren Sie mehr über erfolgreiche Anwendungen generierten Codes durch Unternehmen wie Delphi, Baker Hughes, iSonea und dorsaVi.

Kostenlose Testversion anfordern

Eine 30-tägige Erkundungsreise in greifbarer Nähe.

Jetzt downloaden

Bereit zum Kauf?

Angebot anfordern und entdecken Sie Erweiterungsprodukte.

Studieren Sie?

Fordern Sie die MATLAB und Simulink Student Software an.

Weitere Informationen