Code ran by (C++ API call) engEvalString() is slower

9 ビュー (過去 30 日間)
Zohar
Zohar 2017 年 4 月 23 日
回答済み: Zohar 2017 年 4 月 24 日
I noticed something disturbing. Executing Matlab code from C++ with the API call to engEvalString() runs twice as slow than running it within matlab.
I profiled and also manually timed the code. It's just Matlab basic operations and it has nothing to do with the overhead calling it from outside.
To emphasize, I'm NOT talking about the overhead of the API call. I am measuring the time of the pure Matlab code itself (running within the engine), and it runs slower.
(I'm using Matlab R2016a.)

採用された回答

Zohar
Zohar 2017 年 4 月 24 日
I found the problem. Before running eval, there was a separate eval of:
clear functions;
This cleared Yalmip's init, and there was a Yalmip overhead re-initializing.

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeDeploy to C++ Applications Using mwArray API (C++03) についてさらに検索

タグ

製品

Community Treasure Hunt

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

Start Hunting!

Translated by