Sometimes it's required to verify the simulation computing performance of a machine (for example, when you upgrade the machine specs and you want to verify if the investment worth it).
That said, the purpose of this article is to describe how to benchmark your hardware using a set of well-know Fluent cases. By using this procedure, you'll be able to compare your hardware performance against others by checking the site ANSYS Fluent Benchmarks. Depending on the results, you could adjust your hardware setup in order to improve your simulation performance.
Please notice that the procedure described here was executed on Redhat Enterprise Linux 6.5 and using ANSYS 15.0.7.
2.1 Download the Fluent Benchmark Files
In order to perform the benchmark, you need to download the benchmark cases from the ANSYS Customer Portal. The benchmark files are a set of cases from different levels of complexity, varying the mesh size, modelling and solver type.
Below is the case descriptions:
|Eddy_417K: 417K cells, reacting flow, segregated implicit solver|
|Turbo_500K: 500K cells, turbulent flow, coupled implicit solver|
|Aircraft_2M: 1.8M cells, turbulent flow, coupled implicit solver|
|Sedan_4M: 3.6M cells, turbulent flow, pressure-based coupled solver|
The benchmark files can be accessed from the link below (you have to have login access to the ANSYS Customer Portal to download the files)
2.1 Install the Benchmark files
Once you have dowloaded the ANSYS Fluent Benchmark Suite, you'll need to install these files in the ANSYS Fluent folder tree. Using a Linux command prompt:
mv <benchmark_package_name> /ansys_inc/v150/fluent
for the package
tar -xzf <benchmark_package_name>
2.2 Rename or create a symbolic link to the v6 folder
These benchmark suite files are somewhat old, from the Fluent 6 epoch. Therefore, it's required a modification in order to make these files able to be run by ANSYS 15.
All you need to do is to create a symbolic link pointing to the v6 file
ln -s v6 v15
Alternatively, you can just rename the folder v6 to v15
rename v6 to v15
2.3 Run the perl script
There's a perl script named fluentbench.pl that does all the job for you. That is, this script runs the benchmark cases and calculates the statistics.
To execute the script, create a folder to hold the simulation results:
Change to that folder:
If you want to do a serial benchmark, run the command:
If you want to do a parallel benchmark, run the command:
/ansys_inc/v150/fluent/bin/fluentbench.pl <case_name> -t <num_of_processors>
For example, to run the case turbo_500k in 4 processors
/ansys_inc/v150/fluent/bin/fluentbench.pl turbo_500k -t4
This will produce the following files:
turbo_500k-4.log - history of the 4-way run
turbo_500k-4.trn - FLUENT 6 transcript of the 4-way run
turbo_500k-4.out - 4-way benchmark results
Run as many cases or different number of processors you want.
2.4 Collect the results
Once you run all the benchmark cases you needed, you will have a couple of files in your folder. You should open the files *.out to get a summary of the benchmark. For example, for the case airfoil_2m using 4 processors:
FLUENT Benchmark ResultsBenchmark: aircraft_2mVersion: 3d, dbns imp, rkeCode: Parallel Fluent 15.0.7 (1998)I/O STATS:Read case time = 14.57 secRead data time = 7.94 secWrite case time = 0.00 secWrite data time = 0.00 secSOLVE STATS:Number of iterations = 25 iterNumber of Timesteps = N/AWall time per iteration = 7.70 secCPU time per iteration = 31.12 secTotal wall time = 192.59 secTotal CPU time = 778.05 secSpeed = 233566 cells/sec/iterRating = 448.6MEMORY STATS:Cell count = 1798464 cellsFace count = 5443516 facesNode count = 1846845 nodesTotal memory = 5671.98 MbytesPARALLEL STATS:Number of compute nodes = 4Communicator = pcmpiPartition method = MetisMax. partition bndy cell ratio = 4.2%Solver wall time per iteration = 7.593 secSolver speed = 236858 cells/sec/iterSolver rating = 455.2COMPUTE NODES:Node-0 = flcaews024Node-1 = flcaews024Node-2 = flcaews024Node-3 = flcaews024
The most important metric in this summary is the Solver Rating.
Rating is the primary metric used to report performance results of the Fluent Benchmarks. It is defined as the number of benchmarks that can be run on a given machine (in sequence) in a 24 hour period. It is computed by dividing the number of seconds in a day (86400 seconds) by the number of seconds required to run the benchmark. A higher rating means faster performance.
total wall time in seconds for the solve phase
You can plot the rating for different number of processors for a better visualization (you can use a software like MS Excel for this):
Benchmarks are important to ensure that your software and hardware are performing accordingly. By using these well known cases, you can compare the results against other hardware/software configurations and, if needed, modify something in order to improve the performance.
See also the attached file (README) with many details about the Fluent Benchmark Suite