MATLAB Function Versus MATLAB S-Function (processing speed)

2 visualizzazioni (ultimi 30 giorni)
My problem is a simple example in the picture.
Top S-function written in C++. Lower Matlab function written in Matlab. Blocks of the same function, but the top is 4 times faster! Why? Maybe this is due to the creation of the wrapper in the case of the lower block? M-code consists of five lines, and 800 lines of the wrapper. wrapper slows down speed of model?

Risposte (1)

Kaustubha Govind
Kaustubha Govind il 25 Feb 2013
It could be that you have Enable debugging/animation enabled in the 'Simulation Target' pane of the Configuration Parameters window. If you disable this (and perhaps even overflow detection and memory integrity checking), it should cut down the size of the generated code, and improve the speed of the MATLAB Function block.
  1 Commento
Ivan
Ivan il 26 Feb 2013
In my model Enable debugging/animation disable.
The question is why the S-function block is faster than block Matlab function.
The problem of automatic generation of sub-optimal complex wrapper?
Matlab interpreter, and each line of Matlab code, it converts the C code using the wrapper, which reduces the speed of the model?

Accedi per commentare.

Categorie

Scopri di più su Simulink Coder in Help Center e File Exchange

Prodotti

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by