New Simulink versions (2012b and newer, ver 8.x) hanging/slow when copying blocks or editing model
7 views (last 30 days)
Show older comments
In the last few months both my home and personal PCs have been updated to new Win7 64-bit machines. I have an i7 at home and an i5 at work. I am running MATLAB 2012b (64-bit) at work and the same (I think) at home. Bags of memory (16GB and 8GB respectively).
I am getting very high latencies when I try to do operations such as copy-pasting blocks in Simulink. Doing CTRL-C on a block and then CTRL-V often sends the MATLAB process off, gobbling up 100% of one of my i5 cores or i7 hyperthreads, for up to a minute (or more occasionally). The wait times when developing code are just horrendous. It is much slower than the process for editing similar code under 32-bit systems on older MATLAB 32-bit versions. What's happened between 2011 (32-bit) and 2012b?
Some of my models are quite large and I make extensive use of a Simulink library (my own) which was 10MB as a mdl but now ~1MB as an slx. I wondered whether changing all my models from old .mdls to .slxs might bring the performance back to something like what it was under 2011 (and previous) versions, but it seems to make no difference. Win7, 64-bit, i5 and i7 with 2012+ is much much slower than 32-bit 2011 versions, for all Simulink editing functions. Why?
I just tried to run the model advisor on my ~1MB simulink library to search for any disabled links, but that seems to just hang 2012b with MATLAB using 100% of 1 core, stuck on "updating model heirarchy". I waited 5 minutes but it never moved.
Its particularly frustrating because the mouse pointer never changes to an hourglass or anything. You don't know what MATLAB is doing except by watching an independent CPU-monitoring application. For instance, after CTRL-C, you need to wait for MATLAB CPU activity to drop to zero, (1-60 second wait?) before pressing CTRL-V. If you don't wait and press CTRL-V too early, nothing appears to happen. If you do CTRL-V again, then EVENTUALLY, you get more than one new block.
I'm on Win7 (Pro at home I think) and Win7 Enterprise at work. Both 64 bit.
What's going on with this. Should I try 2013 versions? Has anyone else had problems with 2012 and are there any known fixes for such slow editing processes in 2013 versions?
6 Comments
J
on 5 Sep 2014
I have seen later versions of MATLAB just behave dog-slow for a variety of functions. I'm not sure what the cause of it is, but I suspect it's adding perceived required functionality with little thought given to error handling or efficiency. It's just really slow.
The change to the .slx (intentionally to hide the model structure and make it harder to view internals) has also caused problems. Hopefully, MathWorks will spend the time and money to clean up the code some release.
Answers (13)
John B
on 7 Feb 2014
I have noticed the same issue (using R2013a). I just submitted a bug report to Tech Support - we'll see if they have anything to say about it.
4 Comments
John B
on 13 Feb 2014
I got a response from Technical Support. The gist of it is that they are aware of the issue. They suggested that as a workaround, we use ctrl + (click and drag) instead of ctrl+c after selecting a block or blocks. Apparently, the click and drag method has a different internal implementation than using the clipboard.
They asked me to provide an example model to help them investigate. Unfortunately, it will be a couple of weeks until I can do so. If any of you would like to open a support ticket and can provide an example to them right now, please do so. If you include a link to this page on MATLAB Answers, they should be able to route your ticket to the same people that are handling mine. Regardless, I will supply them with an example as soon as I can.
Jamie Wardlaw
on 12 Feb 2014
I just browsed over this posting and I have had similar latencies running 2013b (8.2.0.701) on Windows 7.
Previously I had used pre 2010 versions of Matlab and simulink and never ever experienced latencies with cutting and pasting. Latencies are also present when working with bus signals and opening closing mask dialogs.
Right now, I have to say that 2013b has been on the whole a dissapointing experience.
2 Comments
Andreas Goser
on 13 Jan 2014
Sorry to see nobody responded in November or circled back with the community about results working with Technical Support.
I recall issue with R2012b in larger models. "Large" in this case was multiple layers of subsystems and many many subsystems. The issues I have seen to that time were gone or at least mitigated with R2013a.
1 Comment
Andreas Goser
on 13 Jan 2014
I see you contacted Technical Support with regards to another issue in R2013b. So beside that, how is the issue of this posting in 13b?
Dan
on 5 Apr 2014
I called this in as a serious issue and even made a sample model with script that demonstrates the problem and benchmark of behavior in new version vs. old versions with classic Simulink editor. I was basically told that they are aware and working it.
I personally believe that the quality of Simulink has decreased in recent releases. The new features are nice but are reminiscent of R14 and all the pain that came a long with that. In general, the developers need to use their own tools and issues like this would be recognized and worked prior to a release. I'm not too sure why the quality has decreased but it's sad that a company that claims a DO-178 capable toolset cannot even manage and rapidly fix the major bugs that are introduced into every one of their tools.
I can confirm that long pauses, freezes, and unrecognized/missed-clicks happen in pretty much all their newer versions regardless of OS. Ever change a signal in a bus selector recently?
0 Comments
Johan
on 22 Apr 2014
I am experiencing the exact same problem as Andrew explains and it is really slowing down development. I end up keep hitting "save" (and saving the model takes some time) because I know that Matlab can go unresponsive at any moment (copy of blocks, attaching bus selectors/creators etc). Running Matlab 2013A at the moment but experienced the same problem in 2012B and 2013B. This problem needs a resolution.
0 Comments
Fred Otth
on 13 May 2014
I have a problem that I think is related. I have a very large model that has a few thousand inputs. I create the input sources for the model with an m-function. The m-function places source blocs, bus creators and output ports in an model and connects all the blocks. In Matlab 2009a it took about 20 seconds, and in R2012b it takes about 15 minutes. Has anyone else ran into a similar problem? Did you find a solution?
0 Comments
Matthieu
on 1 Aug 2014
So disappointed with this behavior, but glad to see i'm not alone!!
I just wanted to add that i have the same problem when i want to save my model: usually it takes 2 to 5 seconds... Sometimes more than 45mn !!! It seems like Matlab hangs for a while, and comes back to life after a while... This could be 5mn to open a Goto/From block to much more just to save my model.
I'm running 2012b, earlier on XP, now on W7, same behavior.
I'm really upset to see Matlab is not solving the issue. I propose that all our companies to send the bill to Matlab to compensate waste of time of their engineers. They will probably react more quickly!!
Cheers! (and patience is a vertue... hahaha)
0 Comments
Karel
on 24 Sep 2014
Edited: Karel
on 24 Sep 2014
Allmost all people of our company have the slow copy paste issue. Win7 64 bit 2013b. Any solution? Are there improvements for this behaviour in 2014a ?
1 Comment
Gregory
on 30 Jan 2015
Edited: Gregory
on 30 Jan 2015
the same for us on Win7 64 bits, with "Matlab R2013a 64bits" or "Matlab R2013a 32bits"
And antother thing : "Save As" Simulink model seems to lead to the same problem : CPU high, Matlab blocked (15 min to save as a model .mdl, 3 Mo), But no problem with Save.
Vivek
on 17 Feb 2014
I observed another thing while performing a copy/paste. The CPU usage of Matlab jumps to about 25%. I have a 4 core processor and this means that one core is being used at 100%. This seems to happen during many other functions such as bus-selector open/close or when you have dynamic masks that change the subsystem contents etc.
The problem is also that at 25% CPU usage, it seems to get stuck. I'm not sure if there is a way to have matlab use more than one core? I even have the priority set to real-time. No change. @John B, thanks for the tip. Right click drag or ctrl+drag works much better.
3 Comments
Vivek
on 18 Feb 2014
Andrew,
This is so unfortunate. I have my own set of libraries and they are in the path and within the simulink library browser. They are also not on any network drive, all local. I use masked library blocks that run initialization code and dynamically name blocks/signals within them. With this release r2012b its just a complete dog. Sometimes it works really well, other times it gets stuck on 25% and nothing I do gets it out of there. Ctrl+C no use. I finally have to end up ending the process and losing all my work unless Matlab in its infinite wisdom somehow decided to autosave my model before getting stuck in this loop. This sort of stuff never ever happened on r2011a. Ah maybe it's sounding like a broken record at this time since all posts on this thread are saying almost the same thing. I think the root cause is probably
1. The alternate code path for copy and paste when we do a ctrl_drag vs Ctrl+V/C
2. Library searches and general editing is horribly slow.
I just hope the resolution to all of this is someting like checking the setting where it says "make Simulink better"!!
J
on 5 Sep 2014
That's sad that you have to pay MathWorks additional money just to get a product that takes advantage of modern computing abilities. Hopefully, that will change in the future.
Johan
on 3 Jun 2014
This bugfix solved the problem with slow buses (bus creators and bus selectors) in the model i am working with in Matlab 2013A. The bugfix is related to how Matlab handles bus signals:
1 Comment
Vivek
on 8 Aug 2014
Well, if you do this, it screws up the properties of bus signals. It doesn't open up the "signal hierarchy viewer" properly and also some of the properties of the signals are not populated properly when you look at the signal properties in the command line.
Vivek
on 30 Oct 2014
I switched to r2014a and I have to say it is a whole lot better than R2012 or r2013. It's faster, no copy-paste issues, library inclusions seems great and without lag. So far so good.
0 Comments
See Also
Categories
Find more on Sources in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!