Skip to content

Commit 1b557c8

Browse files
authored
Merge pull request #234 from wanqing0421/benchmarks
update helical mixer benchmarks results
2 parents a3c3ca1 + b2cfb57 commit 1b557c8

File tree

8 files changed

+98
-4
lines changed

8 files changed

+98
-4
lines changed

benchmarks/helicalMixer/helicalMixer_1m/settings/settingsDict

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ dt 0.00001; // time step for integration (s)
1212

1313
startTime 0; // start time for simulation
1414

15-
endTime 2; // end time for simulation
15+
endTime 7.5; // end time for simulation
1616

1717
saveInterval 0.05; // time interval for saving the simulation
1818

benchmarks/helicalMixer/helicalMixer_2m/settings/settingsDict

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ dt 0.00001; // time step for integration (s)
1212

1313
startTime 0; // start time for simulation
1414

15-
endTime 2; // end time for simulation
15+
endTime 7.5; // end time for simulation
1616

1717
saveInterval 0.05; // time interval for saving the simulation
1818

benchmarks/helicalMixer/helicalMixer_4m/settings/settingsDict

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ dt 0.00001; // time step for integration (s)
1212

1313
startTime 0; // start time for simulation
1414

15-
endTime 2; // end time for simulation
15+
endTime 7.5; // end time for simulation
1616

1717
saveInterval 0.05; // time interval for saving the simulation
1818

benchmarks/helicalMixer/helicalMixer_500k/settings/settingsDict

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ dt 0.00001; // time step for integration (s)
1212

1313
startTime 0; // start time for simulation
1414

15-
endTime 2; // end time for simulation
15+
endTime 7.5; // end time for simulation
1616

1717
saveInterval 0.05; // time interval for saving the simulation
1818

766 KB
Loading
37.5 KB
Loading
1.79 MB
Loading

benchmarks/helicalMixer/readme.md

Lines changed: 94 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,95 @@
11
# Helical Mixer Benchmark (phasicFlow v-1.0)
2+
3+
## Overview
4+
5+
This benchmark compares the performance of phasicFlow with a well-stablished commercial DEM software for simulating a helical mixer with varying particle counts (250k to 4M particles). The benchmark measures both computational efficiency and memory usage across different hardware configurations.
6+
7+
## Simulation Setup
8+
9+
<div align="center">
10+
<img src="./images/commericalDEMsnapshot.png"/>
11+
<div align="center">
12+
<p>Figure 1. Commercial DEM simulation snapshot</p>
13+
</div>
14+
</div>
15+
16+
<div align="center">
17+
<img src="./images/phasicFlow_snapshot.png"/>
18+
<div align="center">
19+
<p>Figure 2. phasicFlow simulation snapshot and visualized using Paraview</p>
20+
</div>
21+
</div>
22+
23+
### Hardware Specifications
24+
25+
<div align="center">
26+
Table 1. Hardware specifications used for benchmarking.
27+
</div>
28+
29+
| System | CPU | GPU | Operating System |
30+
| :---------: | :----------------------: | :--------------------------: | :--------------: |
31+
| Laptop | Intel i9-13900HX 2.2 GHz | NVIDIA GeForce RTX 4050Ti 6G | Windows 11 24H2 |
32+
| Workstation | Intel Xeon 4210 2.2 GHz | NVIDIA RTX A4000 16G | Ubuntu 22.04 |
33+
34+
### Simulation Parameters
35+
36+
<div align="center">
37+
Table 2. Parameters for helical mixer simulations.
38+
</div>
39+
40+
| Case | Particle Diameter | Particle Count |
41+
| :-------: | :---------------: | :--------------: |
42+
| 250k | 6 mm | 250,000 |
43+
| 500k | 5 mm | 500,000 |
44+
| 1M | 4 mm | 1,000,000 |
45+
| 2M | 3 mm | 2,000,000 |
46+
| 4M | 2 mm | 4,000,000 |
47+
48+
The time step for all simulations was set to 1.0e-5 seconds and the simulation ran for 7.5 seconds.
49+
50+
## Performance Comparison
51+
52+
### Execution Time
53+
54+
<div align="center">
55+
Table 3. Total calculation time (minutes) for different configurations.
56+
</div>
57+
58+
| Software | 250k | 500k | 1M | 2M | 4M |
59+
| :---------------: | :----: | :-----: | :-----: | :-----: | :-----: |
60+
| phasicFlow-4050Ti | 110 min | 215 min | 413 min | - | - |
61+
| Commercial DEM-4050Ti | 111 min | 210 min | 415 min | - | - |
62+
| phasicFlow-A4000 | 82 min | 150 min | 300 min | 613 min | 1236 min |
63+
64+
The execution time scales linearly with particle count. phasicFlow demonstrates approximately:
65+
66+
- the computing speed is basically the same as well-established commercial DEM software on the same hardware
67+
- 30% performance improvement when using the NVIDIA RTX A4000 compared to the RTX 4050Ti
68+
69+
<div align="center">
70+
<img src="./images/performance.png"/>
71+
<p>Figure 3. Calculation time comparison between phasicFlow and the well-established commercial DEM software.</p>
72+
</div>
73+
74+
### Memory Usage
75+
76+
<div align="center">
77+
Table 4. Memory consumption for different configurations.
78+
</div>
79+
80+
| Software | 250k | 500k | 1M | 2M | 4M |
81+
| :---------------: | :-----: | :-----: | :-----: | :-----: | :-----: |
82+
| phasicFlow-4050Ti | 260 MB | 404 MB | 710 MB | - | - |
83+
| Commercial DEM-4050Ti | 460 MB | 920 MB | 1574 MB | - | - |
84+
| phasicFlow-A4000 | 352 MB | 496 MB | 802 MB | 1376 MB | 2310 MB |
85+
86+
Memory efficiency comparison:
87+
88+
- phasicFlow uses approximately 0.7 GB of memory per million particles
89+
- Commercial DEM software uses approximately 1.5 GB of memory per million particles
90+
- phasicFlow shows ~50% lower memory consumption compared to the commercial alternative
91+
- The memory usage scales linearly with particle count in both software packages. But due to memory limitations on GPUs, it is possible to run larger simulation on GPUs with phasicFlow.
92+
93+
## Run Your Own Benchmarks
94+
95+
The simulation case setup files are available in this folder for users interested in performing similar benchmarks on their own hardware. These files can be used to reproduce the tests and compare performance across different systems.

0 commit comments

Comments
 (0)