MATLAB Answers

New Simulink versions (2012b and newer, ver 8.x) hanging/slow when copying blocks or editing model

27 views (last 30 days)
Andrew Roscoe
Andrew Roscoe on 11 Nov 2013
Edited: Gregory on 30 Jan 2015
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

Show 3 older comments
Vivek
Vivek on 6 Feb 2014
Hi Everyone, Have you been able to find out the cause of this problem and how to resolve it? I just upgraded to Matlab r2013a from r2011a and it has been mostly a disaster w.r.t copy/paste. It takes way too long and sometimes I have to force quit the matlab process. I am running Win7-64 bit and Java 1.7.0_51-b13. I have also made the 3GB switch for individual processes and set the PC's power plan to "maximum performance" and also increased the paging size significantly. I also maxed out the Java heap allocation withing Matlab. I can't think of anytihng else I should be doing. Any ideas? Thanks! Vivek
Andrew Roscoe
Andrew Roscoe on 13 Aug 2014
I was using some big models and libraries again the last few days, having upgraded to r2014a. I didn't seem to come across this issue any more. Perhaps it is fixed in r2014a?
What I do have is a new explorer problem in windows 7 with big "slx" libraries, that means I cannot use the "slx" format any more, and have had to revert to ".mdl" format. This seems to be a brand new windows problem (recent update?) and has nothing to do with SIimulink itself (I don't think).
J
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.

Sign in to comment.

Answers (13)

John B
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

Show 1 older comment
Andrew Roscoe
Andrew Roscoe on 11 Feb 2014
Glad to know I am not alone. I can't believe that hundreds of others don't see this, unless it is clearly linked to the use of ".lib" libraries, and perhaps very few people make use of their own ".lib" files.
Seems like MATLAB 2012b (ver 8) onwards is great if you just want to develop a simple model, or you want to run a big model, but if you want to DEVELOP a BIG model with library links and hierarchical subsystems using your own library links, then the 2012b and 2013 (ver 8x) versions are a big backwards step compared to the pre-2012b (ver 7x) versions. It doesn't sound like anyone at MATLAB knows why, either. For me, there's no explanation of why MATLAB should need >1 minute (its random, and can be >> 1 minute) of full 100% CPU on a core (with no hourglass symbol on the mouse cursor) to copy-past one simple library block.
Has anyone had it totally hang trying to do a "find" operation on a big model? I don't dare do that any more - its the end of the MATLAB session, stuck at 100% CPU use, and never getting to the result.
Andrew
John B
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.

Sign in to comment.


Jamie Wardlaw
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

Andrew Roscoe
Andrew Roscoe on 12 Feb 2014
I tried to "vote" for this topic to bump it up in visibility a bit. I don't think anyone who has commented or answered can vote, though. If anyone else reads this and has the same issues with copy/paste delays, please vote the topic so it perhaps gets MATLAB attention!

Sign in to comment.


Andrew Roscoe
Andrew Roscoe on 9 Apr 2014
Edited: Andrew Roscoe on 9 Apr 2014
Doing my first big model work in a while, and it is terrible as always. I reckon with big models you get about an hour or so and then it just hangs up. Anybody got any positive experiences with any of the v8 versions newer than R2012b which I am on? Im only interested if anyone is using big simulink libraries and is finding that they can work in a >2012b version that actually allows you to copy/paste/edit without random minute-length waits, followed eventually by total MATLAB process hang stuck at 100% CPU on one core.
Oh! its back.. That's 5 minutes of MATLAB unresponsive to edit copy-paste one GOTO block. I think thats the longest I ever waited before killing the process, after which it ever came back to life.

  0 Comments

Sign in to comment.


Andreas Goser
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
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?

Sign in to comment.


Dan
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

Sign in to comment.


Johan
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

Sign in to comment.


Fred Otth
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

Sign in to comment.


Matthieu
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

Sign in to comment.


Karel
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
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.

Sign in to comment.


Vivek
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

Andrew Roscoe
Andrew Roscoe on 18 Feb 2014
Vivek,
You can't get MATLAB to use more than 1 core (or hyperthread) unless you specifically use the MCDS or parallel toolbox to develop specialised models. You can have a MATLAB batch job kick off different Simulink simulations of existing models on different cores, but that doesn't relate to editing in any way. When you see 25% usage on your 4-core machine, that's MATLAB essentially totally stuck (100% of its thread) in some kind of memory or code loop hangup doing something really excessive for a long time. I could render significant amounts of 1080p video on a thread in the time it takes Simulink 8.x to copy-paste one tiny block. Its something Simulink has introduced in rev 8.x as far as the evidence on this thread shows.
Vivek
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
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.

Sign in to comment.


Johan
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
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.

Sign in to comment.


Andrew Roscoe
Andrew Roscoe on 24 Sep 2014
See my post higher on this page, on 13 Aug 2014. For me, r2014a does seem to be better on the PCs I tried so far, but this will not guarantee it will be better for you!
Watch out for the "large slx file in win7 folders" issue that has recently come up for me. I don't know if it is r2014a-related but I have had to stop using slx format altogether under win7 due to the "green bar of death GBOD".

  0 Comments

Sign in to comment.


Vivek
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

Sign in to comment.

Sign in to answer this question.


Translated by