MATLAB Function Versus MATLAB S-Function (processing speed)

2 ビュー (過去 30 日間)
Ivan
Ivan 2013 年 2 月 25 日
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?

回答 (1 件)

Kaustubha Govind
Kaustubha Govind 2013 年 2 月 25 日
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 件のコメント
Ivan
Ivan 2013 年 2 月 26 日
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?

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeSimulink Coder についてさらに検索

製品

Community Treasure Hunt

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

Start Hunting!

Translated by