I will mention that the code compiles to .mex just fine using R2024b. It's only when compiling to C/C++ where the compiler runs away, uses all memory, then errors our.
R2024b Codegen runs out of memory. R2018a compiles to .mex and .C++ without issues.
3 views (last 30 days)
Show older comments
I have cut down a code base to a single function that compiles to .mex and to .cpp just fine using R2018a. However, using R2024b (which I just got), the compiler runs a long time, but eventually runs out of memory and errors out.
I have looked at the coder.config('mex') and coder.config('lib') outputs for both versions, and I don't see anthing obvious.
I have attached the short test bench I used: RxTB.m, the .mat file it loads (OFDMRxSave.mat), and the problemmatic code, OFDMRxR1.m
Again, this compiles fine under R2018a, but fails using R2024b, with no changes to anything, including the .prj file. However, I cannot attach the .prj file, because the file type is not allowed by this APP.
5 Comments
Answers (1)
Subhajyoti
on 22 Oct 2024
Edited: Subhajyoti
on 22 Oct 2024
It is my understanding that you are able to generate the MEX files for your code. But when you are trying to generate C/C++ files, it is throwing out of memory error.
This error is due to implicit expansion operation occurring during run-time.
Refer to following MathWorks Documentation link to know more about ‘Optimize Implicit Expansion in Generated Code’ in MATLAB:
While generating MEX file, the MATLAB Coder generates C or C++ files (as mentioned in code-generation parameter) and the MEX file acts like an API between MATLAB and the C/C++ file. You can also use these C/C++ files directly as a workaround for code-generation error. The C/C++ build files are generated in the following path:
./codegen/mex/OFDMRxR1/
Additionally, you can refer to the following resources to know more about Analysis and Generation of C/C++ Code from MATLAB Code Using "MATLAB Coder":
0 Comments
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!