Issue to remove generated mex file after Simulink Model execution in parfor

2 views (last 30 days)
I want to run a Simulink model inside a parfor loop.
Since the model involves code generation, each parallel iteration runs in a different temporary directory, as suggested in the related documentation. This is to avoid data concurrency issues.
In particular, after the execution of the model using the sim command, one wants to remove the temporary directory with its content, in order to avoid accumulating useless temp data.
However, when running rmdir(tmpdir,'s') I get the error
"C:\path\myModel_sfun.mexw64 could not be removed".
I tried adding the commands
munlock myModel_sfun.mexw64
fclose('all')
close_system(mymodel,0)
But this doesn't help. Any help? Thanks Luca

Accepted Answer

Friedrich
Friedrich on 19 Jul 2013
Hi,
try a
clear mex
before removing the directory.
  1 Comment
Luca Barbiero
Luca Barbiero on 19 Jul 2013
Thanks Friedrich, it works. Only,the keyword clear is underlined in red in the editor, and the reason is
"The function CLEAR might make an invalid workspace access inside PARFOR loop".
But apparently in this case it's ok. Luca

Sign in to comment.

More Answers (0)

Categories

Find more on Simulink Coder in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!