Some of our the desktop hardware used by researchers was getting to end of life. Simulations within MATLAB required more RAM. Our desktops ground to a halt when simulations exceeded physical RAM and the OS began swapping pages of memory to disk. The desktops had 16GB and 32GB of RAM but researchers wanted 64GB.
Upgrading desktops to 64GB RAM would cost £3000 per PC. £500 for RAM and £2500 for Workstation class hardware (Intel Xeon required to accommodate >32GB RAM)
To pick a new MATLAB desktop hardware platform I profiled the application using SysInternal Process Monitor to expose how the app used CPU, RAM and the Network interface. I prepared a test rig to time the app on different hardware configurations. I determined the application worked best with faster clock speeds rather than multiple cores.
New platform Specs
The new hardware platform was designed to present MATLAB users with a faster CPU clock speed and lots of virtual RAM which could be paged in and out quickly via SSD. This was achievable on regular desktop hardware instead of the more expensive workstation class (Xeon) models. The spec:
- EliteDesk 800 G1 Small Form FactorIntel® Core™ i7-4770 with Intel HD Graphics 4600 (3.4 GHz, 8 MB cache, 4 cores)
- 32GB RAM (maximum)
- 500GB SATA drive (included)
- Crucial M4 128GB SSD (added as 2nd drive)
- 64GB virtual RAM (pagefile on SSD drive)
- The remaining SSD space given over to SATA disk acceleration – Intel Smart Response Technology (48GB read&write cache on SSD)
The result halved the time taken to run simulations. The virtual RAM solution avoided workstation class Intel Xeon based hardware. The SATA disk acceleration provides a large disk for storing MATLAB datasets, with SSD acting as a read & write cache. Lots of cheaper storage that feels fast like SSD.