How to increase maximum number of open files for code generation

3 views (last 30 days)
Dear
How to increase maximum number of open files for code generation.
It looks like there is fix number for maximum number of open files = 20.
If you open more then 20 files, you will recieve error "For code generation, maximum number of open files is 20."
it looks that this limit is setup in autogenerated file fileManager.c
Could you let me know how I can setup coder to allow e.g. 25 files?
Thanks
Milos

Answers (1)

Prateek
Prateek on 24 Nov 2022
Edited: Prateek on 24 Nov 2022
Hello Milos,
MATLAB places a limit of up to 20 open files in order to conserve static memory allocation.
It would be ideal to limit the number of files open simultaneously to 20. There is no limit to the number of files you can write, only to the number of files you can open at the same time.
This limit can be changed, but at your own risk. To do so, follow these instructions:
  1. Change MATLAB directory to /matlab/%release%/toolbox/eml/lib/matlab/iofun/private/
  2. Open “fileManager.m
  3. Locate the function “MAXFILES” (In MATLAB R2022a, go to line 325). This function contains the following code:
n = coder.const(FIDCLS(20));
4. Edit this to the number you need. It can be up to 125.
5. Save this file and restart MATLAB.
Please note that this change needs to be re-implemented after every MATLAB update.
Hope this helps.
Regards,
Prateek
  2 Comments
Milos Sotak
Milos Sotak on 8 Sep 2023
Hi Prateek,
How it works in 2023a?
There is no file “fileManager.m” in directory /matlab/%release%/toolbox/eml/lib/matlab/iofun/private/
Regards,
Milos

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!