Warum dauert meine Codegenerierung/mein Publish so lange?

Der Gesamtprozess der Generierung von instanziierbaren TcCOM Modulen durchläuft zwei Phasen. Zum einen die Codegenerierung und zum anderen den Publish-Prozess. Im diagnostic viewer von Simulink® wird Ihnen angezeigt:

################################################################################

### You can use the C++ project TctSmplTempCtrl.vcxproj to build the TcCOM module manually with Microsoft VisualStudio.
### Necessary source and project files have been generated successfully.
### Duration of the code generation (HH:MM:SS): 00:00:15
### Publishing TcCOM module ####################################################
### Configuration: "Debug" ### Platform(s): "TwinCAT RT (x86);TwinCAT RT (x64)"
### TwinCAT SDK: "C:\TwinCAT\3.1\SDK\"
### Platform Toolset: "Microsoft Visual C++ 2015 (V14.0)" (Automatically selected)
### Now you can instantiate the generated module in TwinCAT3 on the target platform(s) "TwinCAT RT (x86);TwinCAT RT (x64)".
### Publish procedure completed successfully for TwinCAT RT (x86);TwinCAT RT (x64)
### Duration of code generation and build (HH:MM:SS): 00:00:24
### Generating code generation report ###############################

Hinweise zur Dauer bei der Codegenerierung

Die Dauer der Codegenerierung hängt natürlich im hohen Maß von dem individuellen Modell ab und setzte sich aus der Codegenerierung des Simulink Coders sowie der Codegenerierung für das TcCOM Framework zusammen. Das TE1400 hat entsprechend nur Einfluss auf das TcCOM Framework.

Werden große Parameterlisten, z.B. Look-up-table als tunable markiert, wird in die zu erzeugende tmc-Datei der Look-up-table eingetragen, was unter Umständen zu erhöhten Zeiten bei der Codegenerierung führt.

Hinweise zur Dauer beim Publish-Prozess

Der Publish-Prozess setzt sich zusammen aus Kompilieren des C/C++ Codes mit dem MS Visual C++ Compiler, linken sowie kopieren der Moduldateien in das Publish Verzeichnis (<TwinCAT-Folder>\3.1\CustomConfig\Modules). Entsprechend ist für diesen Schritt die Leistungsfähigkeit des Compilers entscheidend, wobei diese von der Compiler Version oder auch von den Einstellungen (z. B. debug oder release) abhängt.

In Simulink® unter Tc Build ist es möglich für verschiedene Zielsysteme entsprechende binaries zu kompilieren. Diese werden in einem sukzessiven Prozess erstellt. Sollten Sie ein großes Modell bauen wollen, ist es ratsam hier nur für die Plattform(en) zu bauen, die Sie später auch nutzen.