Clear Filters
Clear Filters

Home PC or workstation for MATLAB?

54 views (last 30 days)
Gerrit on 2 Aug 2012
Edited: Rik on 18 Aug 2020
I am due to specify a new PC to use for my MATLAB work. The most demanding tasks are typically repeatedly running long (couple of hours simulated time) Simulink simulations at small sample times (couple of microseconds) and plotting and otherwise processing (fairly simple like averaging, root mean square, etc.) the data. The simulations are usually time-varying and often of stiff systems. Ususally I run the simulations in series (tuning model and control parameters, etc.) although sometimes they could run in parallel for Monte-Carlo-type simulations, should MATLAB allow so (Parallel Processing Toolbox?).
Does anyone have information/ideas about whether the 'workstations' offered by companies such as Dell and Lenovo would perform significantly 'better' (mainly faster) than 'home PCs' at a similar price, say £1200/US$2000/Euro1400 for guidance? I am assuming the same RAM, say 8GB (trying to get 16GB, but that may exceed the budget).
Looking at Intel CPUs only, I have noticed that (mid-higher spec) 'home PCs' (which is all we use in the office at the moment) usually come with i5 or i7 CPUs, whereas 'workstations tend to come with a variety of Xeon CPUs. Is there any benchmarking data on whether (current, lower-end) Xeon CPUs offer an advantage over an i7, or vice versa, for the type of Simulink work described above?

Accepted Answer

Jason Ross
Jason Ross on 2 Aug 2012
Edited: Jason Ross on 2 Aug 2012
The way I look at such questions is to look at what's the bottleneck on the system.
  • If you are using the swap file heavily, I'd look at more RAM.
  • If one processor is pegged when you are doing your run, I favor clock speed.
  • If you can benefit from parallel computation, I go for cores.
  • If you do a lot of disk I/O, I look at SSD and a fast SATA interface.
  • It sounds like everything is local, so I'm not addressing network.
  • And, of course the budget!
If you are on Windows 7, use the Resource Monitor (start Task Manager, then click the "Performance" tab and "Resource Monitor" to get a nice overview of all these systems. Other operating systems have similar tools.
As for the processor question, Intel has a nice comparison tool:
Generally (there are exceptions)
  • i5 is a 4 core processor without hyperthreading
  • i7 is a 4 core processor with hyperthreading
  • Xeon is a 6 or 8 core processor with hyperthreading.
Clock speeds vary throughout each of the lines, with cost generally increasing towards the fastest chip.
In terms of workstation versus home PC, generally the workstation offers things like
  • Multiple CPUs (single, dual or quad)
  • Space and interfaces for additional stuff (GPUs, hard drives)
  • The ability to put in more RAM (I've seen up to 1TB offered)
  • Multiple network interfaces
  • Higher capacity power supply
If the above matter to you, then the workstation is "better". But if they don't, then they offer little value.
For specific comparisons there are many hardware sites. concentrates on benchmarks of CPU performance, but Tom's Hardware, Anandtech, etc also post in-depth reviews of hardware, too.
Jason Ross
Jason Ross on 3 Aug 2012
I'll respond with my own opinions. Keep in mind these are not iron-clad rules.
For swap file usage, you should look at how much of your existing RAM is in use by the system when you are running your simulation. There is a dedicated tab for Memory on the Resource Monitor that shows a nice graph of memory utilization as things are running. If this is regularly topping out on your current system, then you are going into swap and this is most likely affecting your performance, as the swap file is going to be significantly slower. I'd look at sacrificing clock speed or cores to be on budget to fit the higher RAM amount. If you can get the system operating with essentially no swap file at all, operations will take place only in memory once they are loaded from disk and the performance will be very good. And with 16 GB RAM available for under $100 (USD), and dead simple to install, it's possible that you might want to look at the cost the vendor charges for the upgrade versus DIY and go that route -- especially if you know your way around the inside of a PC (or work with someone who does)
For your processors question -- if your existing machine has multiple cores, do they get maxed out when you are doing a run? I'm not all that familiar with the intricacies of Simulink. As for hyper-threading versus not, I've personally found that for what I work with most, it doesn't offer much value. I know there are some applications where it does, but I've seen that processes essentially wait on the "real" cores for computation, and it doesn't really matter much. So I'd look more at the number of cores versus hyperthreading, and take the saved money and put it into RAM.
You might also want to look into if what are you doing supports Parallel Computing and see if you can trial the toolbox. In that case, having multiple compute cores and RAM could most definitely help you speed up your time.
I would concur that your budget is likely going to land you in the "well-configured home desktop" range. Which is pretty much what a "well-configured workstation" was a few years ago, so you are likely to see much better performance.
Hope this helps,
Gerrit on 3 Aug 2012
Thank you: Looking at my "CPU Usage History" on the "Windows Task Manager" (this is Windows Vista 32-bit OS), this sits at around 55% (80-90 on one, 20-30 on the other of the two), which is high but does not seem to be at its limit. The "Free" "Physical Memory (MB)" drops to 0 during simulation, but I cannot see any sudden increase in Disk use or Page Faults on the Reliability and Performance Monitor" when that happens, so not sure what actually happens or 'gives way'.
It would be nice if I could do a proper benchmarking of two alternative system. However, that is not going to happen...
You have given me enough info to get going with the next spec. Thanks again and best regards,

Sign in to comment.

More Answers (3)

William on 3 Aug 2012
look at the lenovo W520. I use it all the time and was able to get one with 16gb of ram for around 2000. Worst case get a desktop. You won't be paying for portability.
  1 Comment
Gerrit on 3 Aug 2012
Thanks, it is a valid suggestion. However, I am not too convinced about laptops regarding value, or 'power', for money; we got a Sony Vaio with 64-bit OS and 6GB RAM and up-to-date CPU last year, and it was hardly faster in benchmarking than my five-year old Dell Dimension E520 with 32-bit OS and 'full' RAM (6GB installed, but of course the 32-bit Windows OS only uses approx. 3GB of that).

Sign in to comment.

Bhuvnesh Rathor
Bhuvnesh Rathor on 17 Aug 2020
Minimum Specifications for MATLAB Software
Processor - i3, i5,
Hard Disk – 500 GB
Graphics Card- 2 GB
Window Any
If you want to work on new version of MATLAB software and in your budget then we suggest i7 processor, 8 GB ram, 1tb HDD
Walter Roberson
Walter Roberson on 17 Aug 2020
I was using over 16 even as I wrote that. When I closed down all my apps I was still over 9 Gb. System processes keep expanding... and so many side processes running these days.
Rik on 18 Aug 2020
Edited: Rik on 18 Aug 2020
After I upgraded my pc, my memory usage blew up. I suspect my idle RAM usage would decrease by 40 percent if I halved the total capacity. To be fair, I don't know what behavior I would expect on Macs.

Sign in to comment.

Gerrit on 17 Aug 2020
Rik, I very much appreciate your (and all correspondents') time and effort and hope others do as well.
CPU: Is your description for Windows 10? I still use Windows 7 on this PC (one of the reasons I need to change it) and when ticking the Performance tab there is a menu option View -> CPU History -> One Graph Per CPU (or alternatively One Graph, All CPUs). I assume this does the same as your option; it shows eight individual graphs (four cores with two threads per core). I would send a screenshot of the Task Manager if I could, but Chrome crashed earlier on when I tried that, losing me my earlier text.
RAM: The large-data model I am working on at the moment is commercially sensitive and I couldn't send that. If I do think of a way to create a public large-data Simulink (benchmarking) model, I will post it on the MathWorks site.
GPU: If anyone has examples of the component combination sites that Rik refers to, could you please post them here?
  1 Comment
Rik on 17 Aug 2020
I hope your organization made use of that extended protection deal with Microsoft if it is still running Windows 7 on internet-connected machines. (if you can attach a USB-stick to it and use that same stick on an internet-connected machine, even offline machines should be considered internet-connected)
It sounds to me like Walters workflow is closer to yours, so his advice is probably more applicable. The last time I ran out of memory was when answering this question where I found the maximum size imwrite can write to a png: about a 4GB file.

Sign in to comment.


Community Treasure Hunt

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

Start Hunting!