Mehrkernprozessor-Ziele
Die Mehrkern-Programmierung bzw. die Modellierung für parallele Ausführung hilft Ihnen bei der Erstellung von Systemen, die für den Einsatz auf Mehrkernprozessoren und Mehrprozessorsystemen vorgesehen sind. Beispiele für solche Systeme sind Signalverarbeitungssysteme und Regelungssysteme für Anlagen. Simulink®-Partitionierungs- und Mapping-Techniken können Ihnen dabei helfen, typische Herausforderungen bei der Konzeption von Systemen für eine parallele Ausführung zu bewältigen.
Die Abbildung zeigt ein Systembeispiel mit mehreren Funktionen, die für die Ausführung auf einem CPU- und FPGA-basierten Multiprozessor-System konzipiert sind. Das System ist in mehrere Komponenten partitioniert, die dem CPU-Taskplaner oder dem FPGA zugeordnet sind.
Um mehr über die Grundlagen der Programmierung für Mehrkernprozessoren zu erfahren, siehe Concepts in Multicore Programming. Weitere Informationen über die Entwicklung von Systemen für eine parallele Ausführung in Simulink finden Sie unter Multicore Programming with Simulink.
Funktionen
Simulink.architecture.config | Create or convert configuration for concurrent execution |
Simulink.architecture.add | Add tasks or triggers to selected architecture of model |
Simulink.architecture.delete | Delete triggers and tasks from selected architecture of model |
Simulink.architecture.find_system | Find objects under architecture object |
Simulink.architecture.get_param | Get configuration parameters of architecture objects |
Simulink.architecture.importAndSelect | Import and select target architecture for concurrent execution environment for model |
Simulink.architecture.profile | Generate profile report for model configured for concurrent execution |
Simulink.architecture.register | Add custom target architecture to concurrent execution target architecture selector |
Simulink.architecture.set_param | Set architecture object properties |
Objekte
Simulink.GlobalDataTransfer | Configure concurrent execution data transfers |
Themen
Mehrkern-Programmierung in Simulink verstehen
- Concepts in Multicore Programming
Theory relevant to modeling for concurrent execution. - Multicore Programming with Simulink
Modeling for concurrent execution using Simulink. - Implicit and Explicit Partitioning of Models
Learn about the key differences between implicit and explicit partitioning. - Supported Targets for Multicore Programming
Deploy concurrent execution models to supported multicore targets. - Limitations with Multicore Programming in Simulink
Limitations and considerations when partitioning a model for concurrent execution.
Konfigurieren Ihres Modells
- Configure Your Model for Concurrent Execution
Learn how to configure your Simulink model to take advantage of concurrent execution.
- Specify a Target Architecture
Choose or define a target architecture for a model configured for concurrent execution. - Partition Your Model Using Explicit Partitioning
Add tasks, create partitions, and map individual tasks to partitions using explicit partitioning. - Configure Data Transfer Settings Between Concurrent Tasks
Specify options for handling data transfers between concurrently executing partitions.
Implementierung von Parallelität in Simulink
- Implement Data Parallelism in Simulink
This example shows how to implement data parallelism for a system in a Simulink model. - Implement Task Parallelism in Simulink
This example shows how to implement task parallelism for a system represented in a Simulink® model. - Implement Pipelining in Simulink
This example shows how to implement pipelining for a system represented in a Simulink® model.
Codegenerierung
- Optimize and Deploy on a Multicore Target
Configure a model for concurrent execution using explicit partitioning and deploy it to a target. - Assign Tasks to Cores for Multicore Programming
This example shows how to take advantage of executing code on a multicore processor by graphical partitioning.