You've been offered a new computer! What should you ask for? We are often asked for computer hardware recommendations to reduce the time required to solve GRTMPS optimization problems. Let's answer the hardware question - given the current options -- and throw in some additional suggestions that can reduce run times. |
When Running Single Cases
When solving GRTMPS planning cases one at a time (without MultiCore), these suggestions will reduce runtime.
Hardware
For single planning cases, it is all about the CPU. Specifically, the speed of individual cores. Exception: If your model uses a lot of mixed integer programming variables (MIP) or Cut Point Optimization (CPO), more cores will help because the Optimizer and HCAMS sub-processes will multi-thread.
4GB of physical RAM is sufficient for almost any situation and hard disk speed is seldom important.
Software
- Windows versions do not matter much.
- GRTMPS. When possible, update to the latest version. The development team is always enhancing the program to run faster and the difference can be dramatic. The rewrite of the recursion code that was released with 5.7 SP3 is a good case in point; some clients have observed as much as a 1/3 reduction in run times.
GRTMPS MultiCore
MultiCore is an inexpensive upgrade to GRTMPS that will allow your computer to solve multiple planning cases simultaneously. Each run will take a little longer because there is some competition for resources, but the total time for a group of runs will be much reduced. GRTMPS MultiCore will run on any Windows computer, and carefully enhancing hardware can make a big performance difference when solving multiple jobs.
When solving many cases simultaneously with MultiCore, all of the hardware elements are important. The suggestions below from Daniel (our go-to-guy for tech) are for personal laptops and desktops.
CPU
Having more CPU cores is the key to maximizing the number of jobs solved in the minimum time. For most of us, that means at least 4 physical cores, with modern workstations having 6, 8, or more physical cores available. Once you have lots of cores, selecting a CPU with a newer architecture and faster clock rates is a bonus. At the moment (July 2023), good laptop options are:
Intel 11-series: Core i7-11800H or higher, Core i9-11900H or higher
Intel 12-series: Core i7-1280P, Core i7-12700H, Core i7-12800H, Core i9-12900H, Core i9-12900HK
Intel 13-series: Core i7-1370P, Core i7-13700H or higher, Core i9-13900H or higher, or any of the 13-series processors ending with "HX"
Any AMD Ryzen 7 or Ryzen 9 mobile processors with 32GB of RAM.
These are often described as "gaming" configurations.
In general, you will get more for your money with a desk top than a laptop- so if you don't feel the need to carry your machine around (you can often set up for remote log in), good desktops are
Any Intel 12-series or 13-series processor in the "Core i7" or "Core i9" family
AMD Ryzen 7 model 7700 or higher, AMD Ryzen 9 model 7900 or higher
These recommendations are as of July 2023. Whether or not you think Moore's Law still holds, something better has probably already come along! My last new machine was bought in 2021. Its an i7 10 series with 6 cores, double threaded. This was top of the line gaming configuation at the time and although superseded by the options above, is still a very effective machine. (I'll give it another year before asking for a new one). If your machine is lower powered than that, you would certainly benefit from an upgrade.
Storage
Traditional hard disks are easily overwhelmed when solving multiple jobs. You want a solid-state drive (SSD) to keep up with your busy CPU. If you are able to get a high-performance NVMe solid state drive, go for it, but the difference between older SATA SSDs and newer NVMe SSDs is less significant to GRTMPS.
RAM
How much is enough? Of course, this will vary with the size and complexity of your model, but a good overall guideline is: 2GB of RAM per concurrently-running job.
Many speed-up opportunities do not require a new computer |
Model Health - the biggest improvement possible
Usually more than hardware or anything else, the biggest impact on runtime is the number of recursion passes. Paying attention to convergence, minimizing the number of passes, is the key to reducing runtime. Improving convergence is all about good modeling and this is a topic for many other Desk Notes or an entire course. Contact GRTMPS support for ideas. Consider using your pre-paid support days for Haverly to perform a model audit.
Anti-Virus and other Security Software
Anti-virus software is a necessary evil that slows down processing. By adding your GRTMPS working directories to the anti-virus software exclusion list, you can avoid much of that overhead when solving a planning case. When the correct and complete information is provided, we do not know of an I.T. department that has rejected adding GRTMPS working directories to the anti-virus exclusion list. If you need more information, contact GRTMPS tech support.
File Location
All files should be stored on the local drive. Accessing files on a file server will increase running time dramatically. (See Effective Use of Spooling.)
Output
Are you creating reports or other output files you don't use? Turn off what you do not need.
Conclusion
Many speed-up opportunities do not require a new computer: good modeling, anti-virus exclusions, correct categorization of local and network file resources. However, if you haven't had a machine update for a while, you should seriously consider making a push for something with an improved specification.
From Kathy's and Daniel's Desks - 11th July 2023.
This note replaces #14 from Randy's desk in 2021
Comments and suggestions gratefully received via the usual e-mail addresses or here.
You may also use this form to ask to be added to the distribution list to be notified via e-mail when new articles are posted.