How to disable openMP with Matlab Coder?

19 Ansichten (letzte 30 Tage)
Matthias Frühwirth
Matthias Frühwirth am 7 Jun. 2016
Bearbeitet: Joe Barrus am 8 Jan. 2024
I want to use Matlab Coder to compile a function that will not profit much from multithreading. Although I use
codegen -O disable:openmp
the resulting C source includes omp.h and tries to find vcompXXX.dll when run.
How can I switch off OpenMP use completely?
System: Matlab Coder 2016a/Windows 10/Visual C++ 2013

Antworten (1)

Ryan Livingston
Ryan Livingston am 1 Mär. 2017
Try:
cfg = coder.config('dll');
cfg.EnableOpenMP = false;
codegen -config cfg ...
  3 Kommentare
Jingyang Yan
Jingyang Yan am 18 Feb. 2022
In MATLABT R2021b version, even I disable the OpenMP libarart if possible, the omp.h file is still included in the header files.
Joe Barrus
Joe Barrus am 8 Jan. 2024
Bearbeitet: Joe Barrus am 8 Jan. 2024
In MATLAB 2023b, with All Settings --> Advanced --> Enable OpenMP library if possible --> No, Coder still generates #include "omp.h" and generates omp_nest_lock_t variable.
If I generate a new Coder project file from scratch and select No to "Enable OpenMP library if possible" it seems to work, but changing that setting after initial creation does not seem to work.

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Code Generation finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by