Choosing a new PC for GEMPACK simulations

Updated February 2019

We are sometimes asked, what is the best sort of PC to buy for running GEMPACK simulations? Often the inquirer is running larger models and has experienced problems such as over-long solve times or shortage of memory (RAM). If your GEMPACK model solves fairly quickly (<2 minutes) and does not complain about shortage of memory, any new Windows PC will work fine [but we'd suggest at least 8 or 16GB of RAM]. If you intend to run larger GEMPACK models, the advice below may be helpful.

Executive summary

Advantages of a multi-core CPU

A good CPU has 4 or more processors in one chip. That allows you to run several simulations at once, or speed one simulation by using parallel processing (see below), if you have enough RAM. For value, choose the 2nd or 3rd fastest models that have plenty of on-chip L3 cache (Intel I5 or preferably I7/I9 CPU).

You can manually launch several simulations at once; for recursive dynamic models the RunDynam shell program will automate the processs. In this case, no one simulation is faster, but the total job is done sooner.

In contrast, GEMPACK 10 or later allows for parallel processing to speed up a single simulation: it splits up one simulation into separate processes. You can specify how many additional jobs (called 'servants') are created. In each case:

Hence, to take advantage of your multi-core CPU, you need ample memory.

GEMPACK 12 exploits multiple cores even if you are only running one simulation without servants: it launches multiple threads during the BLAS part of the linear solve.

Get plenty of RAM

When memory (RAM) is short, Windows is able to use hard disk space instead (called "paging") -- at the cost of a severe speed reduction. If your GEMPACK program is starved of RAM it will run very slowly. Also, the operating system and background processes consume quite a bit of memory. Use Task Manager, as described here to investigate how much memory is required to meet background needs and to run several simulations at once.

A 32-bit GEMPACK EXE is allowed to use up to 2GB of RAM under 32-bit Windows, and up to 4GB of RAM under 64-bit Windows (more details). A very large model might require more than this. In that case you need to use a 64-bit compiler with 64-bit Windows (requires GEMPACK 10 or later).

64-bit Windows is better

You need 64-bit Windows to make use of more than 4GB of RAM. As explained above, 64-bit Windows (Win64) has 3 key advantages over 32-bit Windows (Win32):

64-bit Windows 7 is now the normal OS for work environments, and 64-bit Windows 10 is usual for consumer purchases. Older 32-bit programs still run fine under 64-bit Windows. To reap the advantages above, you should have at least 8GB of RAM.

Even if you have a 64-bit Windows operating system, you may still choose to use a 32-bit Fortran compiler when using source-code GEMPACK -- perhaps to ensure that the EXE files you generate will run on (the few) other PCs that still run 32-bit Windows.

Other

Consider also purchasing plenty of screen space -- either one very large LCD monitor, or a pair of smaller ones. This can be be a real productivity booster.

Hyper-threading

Many Intel CPUs feature "hyper-threading": the chip pretends to have twice as many cores as it really does. On a quad-core PC, Task Manager will show 8 (virtual) CPUs ! Unfortunately, there is still limited advantage in launching more than 4 simultaneous GEMPACK jobs (if you have just 4 cores).

High-performance desktop

If you want to run many large GEMPACK jobs at once, the most powerful Intel CPUs (at early 2019) are the pricey Socket 2066 I7/9 range with 6-18 cores and 10-24MB L3 cache. Compatible motherboards are expensive but have up to 8 memory slots, allowing 64GB RAM or more.

For less demanding work, Intel CPUs from the cheaper Socket 1151 I7/9 range have 4-8 cores and use cheaper, more mainstream motherboards.

For best performance, a 256GB or more SSD should be installed, large enough to hold the Windows OS, programs, and currently active projects. Inactive projects may be stored on a conventional HDD.

What about notebooks ?

As for desktops, you should look for 64-bit Windows 7 (or later) with at least 8 or 16 GB of RAM and an I5 or (better) I7 CPU.

To extend battery life, notebook manufacturers choose less power-hungry components -- which also run slower. Again, notebooks often have no separate video RAM (instead borrowing some of the main RAM). Hence notebooks usually run slower than comparably-priced desktop PCs -- or cost more for the same performance. However this gap is narrowing. An I7 notebook with a 500GB SSD will run nearly as fast as its desktop equivalent. See this comparison.

Brain-power or computer-power ?

Some users could halve their model's solve time simply by exploiting GEMPACK more skilfully. For example they could:

Read more about these ideas here. Other non-hardware ways to save time include:

Thinking and computer-power are indeed potential substitutes -- although to solve really big models you will need plenty of both.

Watch this space !

Recent developments have included:


Related topics:
Laptop/desktop speed comparison
Reducing Simulation Time
Condensation and Solution Speed
Not Enough Memory to Solve a Model
Measuring memory use with Task Manager
Memory Limit for GEMPACK
64-bit computing and parallel computations with GEMPACK 10
Should I move to 64-bit Windows?
Does GEMPACK support Windows 7, 8 and 10?


Go back to
GEMPACK FAQ Page