Empire XPU takes advantage of the CPUs internal caches to speed up simulation, by calculating multiple timesteps directly in the cache. The complete E and H fields only need to be transferred to the (much slower) RAM after many timesteps.
When starting a simulation, CPU architecture and features are determined, as well as the specific solver requirements of this simulation model, and a solver is compiled on-the-fly that is optimized to run this specific simulation model on this CPU.
General rules
The solver takes advantage of all CPUs and all cores, so a CPU with many cores is preferred. Server CPUs with large cache are an advantage, but not a requirement. Intel Core i9 provide good value for the money using Empire.
CPU generation: Empire takes advantage of the latest vector math CPU features, which are extended continuously. For this reason, a “modern” CPU will perform better than an old CPU, at the same number of cores.
Even though much calculation is done at cache level, access speed to RAM is important. Use the fastest available memory speed. The amount of RAM installed is not very critical, but some computer have better memory bandwidth for certain memory bank configurations.
There is no relevant difference in simulation speed between Windows and Linux simulation platform.
Multitasking / Multi User
Empire runnig on a state-of-the-art CPU can be faster as other solvers running on a GPU accelerator card. But this requires good access to the CPU, without halting or swapping between processes all the time!
This is especially important if users share a simulation server: heavy multitasking can slow down the solver significantly, if the CPU keeps swapping processes all the time. In some cases, it might be better to use a slower “personal” computer than running on a busy department server
Advanced settings like job priority/nice level can be configured in the solver settings. Default is a medium settings, so that Empire doesn’t “block” the machine. If you have questions, please contact support.
Virtual Machine
Empire support reported that their colleagues in development use virtual machines, with no significant loss in simulation speed. However, in this case there is no other heavy load on the simulation machine. See notes on multitasking/multi user above.
Speed Test – Standard Testcase
To test the speed of a simulation machine, it is recommened to use the built-in speed test: Utilities > Kernel Speed Test. This uses a standard testcase and results can be compared to other machines. Some data for comparison can be found below:
Intel Core i9-7900X: 5.5GCells/s
Intel Core i9-7940X: 6.5 GCells/s
AMD Ryzen 9 5950X: 13.5 GCells/s
4 x Intel Xeon E7-8867: 22 GCells/s
Benchmark at different model size
Some results for different CPU and model size are shown below. This diagram was created by Empire XPU manufacturer IMST.