Why Hardware Matters

Submitted by Dale on Sat, 07/14/2018 - 15:12

The hardware on which your simulation runs can change your approach to the problem and the skills you need. At the very least, using modern hardware should make your experiments go faster. During my master's program, I used an ASUS laptop for most of my modeling efforts. It was fine for most simulations, particularly when using NetLogo, but was inadequate for scaling to larger models. The 8 logical cores did, however, allow me to take advantage of NetLogo's Behavior Space to implement a type of parallelism, Single Program, Multiple Data (SPMD). Distributing the model to 7 of the cores (always save one for the operating system) allowed each model to start with the same initial conditions, but grow toward different end states given stochastic variations. Since the experiment needed to be repeated multiple times, this allowed results to be obtained in about 1/7 of the time. I recently purchased a new system to support future modeling endeavors and compare the two systems.

System Specifications

ASUS

Alienware

Model:

Notebook G73Jh

Model:

Area-51 Threadripper R6

CPU:

Intel Core i7 Q 740 running at 1.73 GHz

CPU:

AMD Ryzen Threadripper running at 3.67 GHz

Logical Cores

8

Logical Cores

32

GPU:

AMD Mobility Radeon HD 5800 Series

GPU:

NVIDIA GeForce GTX 1080 Ti SLI x2

Memory

16 GB (14 GB useable)

Memory

64 GB

Operating System

Microsoft Windows 7 Professional

Operating System:

Microsoft Windows 10 Professional

 

I ran two benchmarks on the systems. Novabench provides an overall score, as well as scores for the CPU, GPU, memory, and disk. Unigine provides a few benchmarks, the latest of which is Superposition. The Unigine benchmark is focused on the GPU. Both systems had the latest updates and drivers and neither system was overclocked. SLI was disabled on the Alienware.

Novabench Results
ASUS Alienware
Overall: 1,088 Overall: 3,902
CPU: 596 CPU: 2,761
GPU: 211 GPU 640
Memory: 208 Memory 346
Disk: 73 Disk: 155
GPU Speed 243 GFLOPS GPU Speed: 11,686 GFLOPS

 

Unigine Superposition Result
ASUS Alienware
Overall: 3,111 Overall: 15,309
Average Frames/Second: 23 Average Frames/Second: 115
Benchmark was run at a level compatible with the ASUS: 1280x720 resolution; Shaders and Textures Low.

 

Raw benchmarks are fine for general comparisons between systems or bragging rights, but to see how it helps with modeling, you need to compare simulation runs. Using NetLogo 6, I ran one of the simulations from the included Models Library, "BeeSmart Hive Finding." The model demonstrates how a bee swarm selects a new hive. Using Behavior Space, I set a time limit of 3,000 steps (in case of a runaway model), turned off all visual updates, left model speed at normal, and set the number of repetitions to 217. 217 being equal to 7 (ASUS cores - 1) times 31 (Alienware cores - 1). I then timed the model runs.

Model Time Results
ASUS Alienware
Time to Complete: 14.0 Minutes Time to Complete: 3.5 Minutes

 

Given that the Alienware used about four times the number of cores as the ASUS, I expected it to be at least four times faster and it was. An even faster speed was suggested by the Alienware's CPU clock speed at twice that of the ASUS, but this seemed to play little role. Naively, 4.4 (31/7) times greater cores and a 2.1 (3.67/1.73) faster CPU suggests a 9.2 times greater speed. But this forgets that modern systems multitask and the sequential aspects of Behavior Space where Amdahl's law may have come into play. Note that GPU plays no role here as it is used as a display mechanism and not as a computational device.

Hardware does matter, but the software must be able to make use of it. For NetLogo, this exercise shows the value of additional logical CPU cores and discounts the value of other aspects inherent in today's high performance desktop systems. It also shows the limitations of NetLogo which cannot use multiple CPUs from within a model and sadly remains unaware of the computational bonanza that can be found in a GPU.


 

Add new comment