ocean current simulation machine

A customer involved in research on drifting objects in the ocean asked us about a machine for ocean current simulation.
The customer's expected specifications are as follows.

・CPU: Xeon Gold 5320 (2.2GHz 22 cores) x2 or equivalent
・ Memory: 128GB
・Storage: SSD 960GB S-ATA (for system), HDD 8TB S-ATA (for data)
・OS: Windows

I have heard that the actual calculation will run a Fortran program using OpenMP, and the compiler will use Gnu Fortran.
Since the calculation program to be executed is similar to fluid calculation, the results of the Himeno Benchmark are used as a reference in machine selection.

Based on the conditions given by the customer, we proposed the following configuration.

【Main Specifications】

CPU AMD Ryzen ThreadripperPRO 5975WX (3.60GHz 32 cores)
memory 128GB
Storage 1 1TB SSD S-ATA
Storage 2 8TB HDD S-ATA
Video Nvidia T400
network on board (1GbE x1 10GBase-T x1)
Housing + power supply Tower type housing + 1000W
OS Microsoft Windows 11 Pro 64 bit

The CPU is AMD Ryzen ThreadripperPRO 5320WX instead of Xeon Gold 5975.

■ Points
・The reason why we chose a CPU with a lower number of cores than the Xeon Gold 5320 was because we considered the use of OpenMP.

・Looking at trends in the Himeno Benchmark, CPUs with a high per-core capacity tend to rank higher than CPUs with a large number of cores.
reference:Himeno Benchmark (OpenBenchmarking.org) *Jumps to an external site

Based on information from the Himeno Benchmark, which is used as an index, I thought that it might be better to give priority to the speed per core when using OpenMP, and made a proposal.
However, depending on the actual processing content and usage, the way of thinking about CPU selection may differ, so it is not always correct to give priority to the speed per core.Please consider the configuration of this example as a proposal within the range of information that could be confirmed.

The configuration of this case study is based on the conditions given by the customer.
Please feel free to contact us even if you are considering different conditions from what is posted.


・What is OpenMP?
OpenMP (Open Multi-Processing) is a standard for creating and executing shared memory parallel programs. An API that supports C/C++ and Fortran and can be used in many compiler environments.
In the OpenMP execution model, each thread is created and executed when a parallel region starts, and when the parallel region ends, only the master thread performs sequential processing.

reference:Openmp *Jumps to an external site


・What is Gnu Fortran?
GNU Fortran or GFortran is the name of the GNU Fortran compiler, part of the GNU Compiler Collection (GCC).
Compatible with most language extensions and compilation options supported by g77, and compatible with many other common extensions of the Fortran language.

reference:Welcome to the home of GNU Fortran *Jumps to an external site


・What is Himeno Benchmark?
Himeno Benchmark is benchmark software published by RIKEN.
This was devised by Ryutaro Himeno, Director of the Information Technology Center, RIKEN, for evaluating the performance of an incompressible fluid analysis code.

reference:Himeno Benchmark (RIKEN) *Jumps to an external site