|
136 | 136 | <div class="contents">
|
137 | 137 | <div class="textblock"><p><a class="anchor" id="autotoc_md27"></a> </p>
|
138 | 138 | <h1><a class="anchor" id="autotoc_md28"></a>
|
| 139 | +3D Weak Scaling</h1> |
| 140 | +<p>The <a href="case.py"><b>3D_weak_scaling</b></a> case depends on two parameters:</p> |
| 141 | +<ul> |
| 142 | +<li><b>The number of MPI ranks</b> (<em>procs</em>): As <em>procs</em> increases, the problem size per rank remains constant. <em>procs</em> is determined using information provided to the case file by <code>mfc.sh run</code>.</li> |
| 143 | +<li><b>GPU memory usage per rank</b> (<em>gbpp</em>): As <em>gbpp</em> increases, the problem size per rank increases and the number of timesteps decreases so that wall times consistent. <em>gbpp</em> is a user-defined optional argument to the <a href="case.py">case.py</a> file. It can be specified right after the case filepath when invoking <code>mfc.sh run</code>.</li> |
| 144 | +</ul> |
| 145 | +<p>Weak scaling benchmarks can be produced by keeping <em>gbpp</em> constant and varying <em>procs</em>.</p> |
| 146 | +<p>For example, to run a weak scaling test that uses ~4GB of GPU memory per rank on 8 2-rank nodes with case optimization, one could:</p> |
| 147 | +<div class="fragment"><div class="line">./mfc.sh run examples/3D_weak_scaling/case.py 4 -t pre_process simulation \</div> |
| 148 | +<div class="line"> -e batch -p mypartition -N 8 -n 2 -w "01:00:00" -# "MFC Weak Scaling" \</div> |
| 149 | +<div class="line"> --case-optimization -j 32</div> |
| 150 | +</div><!-- fragment --><h1><a class="anchor" id="autotoc_md29"></a> |
| 151 | +2D Riemann Test (2D)</h1> |
| 152 | +<p>Reference: Chamarthi, A., & Hoffmann, N., & Nishikawa, H., & Frankel S. (2023). Implicit gradients based conservative numerical scheme for compressible flows. arXiv:2110.05461</p> |
| 153 | +<h2><a class="anchor" id="autotoc_md30"></a> |
| 154 | +Density Initial Condition</h2> |
| 155 | +<div class="image"> |
| 156 | +<img src="alpha_rho1_initial-2D_riemann_test-example.png" alt=""/> |
| 157 | +<div class="caption"> |
| 158 | +Density</div></div> |
| 159 | + <h2><a class="anchor" id="autotoc_md31"></a> |
| 160 | +Density Final Condition</h2> |
| 161 | +<div class="image"> |
| 162 | +<img src="alpha_rho1_final-2D_riemann_test-example.png" alt=""/> |
| 163 | +<div class="caption"> |
| 164 | +Density Norms</div></div> |
| 165 | + <h1><a class="anchor" id="autotoc_md32"></a> |
139 | 166 | 2D Hardcodied IC Example</h1>
|
140 |
| -<h2><a class="anchor" id="autotoc_md29"></a> |
| 167 | +<h2><a class="anchor" id="autotoc_md33"></a> |
141 | 168 | Initial Condition</h2>
|
142 | 169 | <div class="image">
|
143 | 170 | <img src="initial-2D_hardcodied_ic-example.png" alt=""/>
|
144 | 171 | <div class="caption">
|
145 | 172 | Initial Condition</div></div>
|
146 |
| - <h2><a class="anchor" id="autotoc_md30"></a> |
| 173 | + <h2><a class="anchor" id="autotoc_md34"></a> |
147 | 174 | Result</h2>
|
148 | 175 | <p><img src="result-2D_hardcodied_ic-example.png" alt="" class="inline" title="Result"/> </p>
|
149 |
| -<h1><a class="anchor" id="autotoc_md31"></a> |
| 176 | +<h1><a class="anchor" id="autotoc_md35"></a> |
| 177 | +Shock Droplet (2D)</h1> |
| 178 | +<p>Reference: Panchal et. al., A Seven-Equation Diffused Interface Method for Resolved Multiphase Flows, JCP, 475 (2023)</p> |
| 179 | +<h2><a class="anchor" id="autotoc_md36"></a> |
| 180 | +Initial Condition</h2> |
| 181 | +<div class="image"> |
| 182 | +<img src="initial-2D_shockdroplet-example.png" alt=""/> |
| 183 | +<div class="caption"> |
| 184 | +Initial Condition</div></div> |
| 185 | + <h2><a class="anchor" id="autotoc_md37"></a> |
| 186 | +Result</h2> |
| 187 | +<p><img src="result-2D_shockdroplet-example.png" alt="" class="inline" title="Result"/> </p> |
| 188 | +<h1><a class="anchor" id="autotoc_md38"></a> |
150 | 189 | Isentropic vortex problem (2D)</h1>
|
151 | 190 | <p>Reference: Coralic, V., & Colonius, T. (2014). Finite-volume Weno scheme for viscous compressible multicomponent flows. Journal of Computational Physics, 274, 95–121. <a href="https://doi.org/10.1016/j.jcp.2014.06.003">https://doi.org/10.1016/j.jcp.2014.06.003</a></p>
|
152 |
| -<h2><a class="anchor" id="autotoc_md32"></a> |
| 191 | +<h2><a class="anchor" id="autotoc_md39"></a> |
153 | 192 | Density</h2>
|
154 | 193 | <div class="image">
|
155 | 194 | <img src="alpha_rho1-2D_isentropicvortex-example.png" alt=""/>
|
156 | 195 | <div class="caption">
|
157 | 196 | Density</div></div>
|
158 |
| - <h2><a class="anchor" id="autotoc_md33"></a> |
| 197 | + <h2><a class="anchor" id="autotoc_md40"></a> |
159 | 198 | Density Norms</h2>
|
160 | 199 | <div class="image">
|
161 | 200 | <img src="density_norms-2D_isentropicvortex-example.png" alt=""/>
|
162 | 201 | <div class="caption">
|
163 | 202 | Density Norms</div></div>
|
164 |
| - <h1><a class="anchor" id="autotoc_md34"></a> |
| 203 | + <h1><a class="anchor" id="autotoc_md41"></a> |
165 | 204 | Titarev-Toro problem (1D)</h1>
|
166 | 205 | <p>Reference: V. A. Titarev, E. F. Toro, Finite-volume WENO schemes for three-dimensional conservation laws, Journal of Computational Physics 201 (1) (2004) 238–260.</p>
|
167 |
| -<h2><a class="anchor" id="autotoc_md35"></a> |
| 206 | +<h2><a class="anchor" id="autotoc_md42"></a> |
168 | 207 | Initial Condition</h2>
|
169 | 208 | <div class="image">
|
170 | 209 | <img src="initial-1D_titarevtorro-example.png" alt=""/>
|
171 | 210 | <div class="caption">
|
172 | 211 | Initial Condition</div></div>
|
173 |
| - <h2><a class="anchor" id="autotoc_md36"></a> |
| 212 | + <h2><a class="anchor" id="autotoc_md43"></a> |
174 | 213 | Result</h2>
|
175 | 214 | <div class="image">
|
176 | 215 | <img src="result-1D_titarevtorro-example.png" alt=""/>
|
177 | 216 | <div class="caption">
|
178 | 217 | Result</div></div>
|
179 |
| - <h1><a class="anchor" id="autotoc_md37"></a> |
| 218 | + <h1><a class="anchor" id="autotoc_md44"></a> |
180 | 219 | Lax shock tube problem (1D)</h1>
|
181 | 220 | <p>Reference: P. D. Lax, Weak solutions of nonlinear hyperbolic equations and their numerical computation, Communications on pure and applied mathematics 7 (1) (1954) 159–193.</p>
|
182 |
| -<h2><a class="anchor" id="autotoc_md38"></a> |
| 221 | +<h2><a class="anchor" id="autotoc_md45"></a> |
183 | 222 | Initial Condition</h2>
|
184 | 223 | <div class="image">
|
185 | 224 | <img src="initial-1D_laxshocktube-example.png" alt=""/>
|
186 | 225 | <div class="caption">
|
187 | 226 | Initial Condition</div></div>
|
188 |
| - <h2><a class="anchor" id="autotoc_md39"></a> |
| 227 | + <h2><a class="anchor" id="autotoc_md46"></a> |
189 | 228 | Result</h2>
|
190 | 229 | <div class="image">
|
191 | 230 | <img src="result-1D_laxshocktube-example.png" alt=""/>
|
192 | 231 | <div class="caption">
|
193 | 232 | Result</div></div>
|
194 |
| - <h1><a class="anchor" id="autotoc_md40"></a> |
195 |
| -Shock Droplet (2D)</h1> |
196 |
| -<p>Reference: Panchal et. al., A Seven-Equation Diffused Interface Method for Resolved Multiphase Flows, JCP, 475 (2023)</p> |
197 |
| -<h2><a class="anchor" id="autotoc_md41"></a> |
198 |
| -Initial Condition</h2> |
199 |
| -<div class="image"> |
200 |
| -<img src="initial-2D_shockdroplet-example.png" alt=""/> |
201 |
| -<div class="caption"> |
202 |
| -Initial Condition</div></div> |
203 |
| - <h2><a class="anchor" id="autotoc_md42"></a> |
204 |
| -Result</h2> |
205 |
| -<p><img src="result-2D_shockdroplet-example.png" alt="" class="inline" title="Result"/> </p> |
206 |
| -<h1><a class="anchor" id="autotoc_md43"></a> |
207 |
| -2D Riemann Test (2D)</h1> |
208 |
| -<p>Reference: Chamarthi, A., & Hoffmann, N., & Nishikawa, H., & Frankel S. (2023). Implicit gradients based conservative numerical scheme for compressible flows. arXiv:2110.05461</p> |
209 |
| -<h2><a class="anchor" id="autotoc_md44"></a> |
210 |
| -Density Initial Condition</h2> |
| 233 | + <h1><a class="anchor" id="autotoc_md47"></a> |
| 234 | +Lid-Driven Cavity Problem (2D)</h1> |
| 235 | +<p>Reference: Bezgin, D. A., & Buhendwa A. B., & Adams N. A. (2022). JAX-FLUIDS: A fully-differentiable high-order computational fluid dynamics solver for compressible two-phase flows. arXiv:2203.13760</p> |
| 236 | +<p>Reference: Ghia, U., & Ghia, K. N., & Shin, C. T. (1982). High-re solutions for incompressible flow using the Navier-Stokes equations and a multigrid method. Journal of Computational Physics, 48, 387-411</p> |
| 237 | +<p>Video: <a href="https://youtube.com/shorts/JEP28scZrBM?feature=share">https://youtube.com/shorts/JEP28scZrBM?feature=share</a></p> |
| 238 | +<h2><a class="anchor" id="autotoc_md48"></a> |
| 239 | +Final Condition</h2> |
211 | 240 | <div class="image">
|
212 |
| -<img src="alpha_rho1_initial-2D_riemann_test-example.png" alt=""/> |
| 241 | +<img src="final_condition-2D_lid_driven_cavity-example.png" alt=""/> |
213 | 242 | <div class="caption">
|
214 |
| -Density</div></div> |
215 |
| - <h2><a class="anchor" id="autotoc_md45"></a> |
216 |
| -Density Final Condition</h2> |
| 243 | +Final Condition</div></div> |
| 244 | + <h2><a class="anchor" id="autotoc_md49"></a> |
| 245 | +Centerline Velocities</h2> |
217 | 246 | <div class="image">
|
218 |
| -<img src="alpha_rho1_final-2D_riemann_test-example.png" alt=""/> |
| 247 | +<img src="centerline_velocities-2D_lid_driven_cavity-example.png" alt=""/> |
219 | 248 | <div class="caption">
|
220 |
| -Density Norms</div></div> |
221 |
| - <h1><a class="anchor" id="autotoc_md46"></a> |
| 249 | +Centerline Velocities</div></div> |
| 250 | + <h1><a class="anchor" id="autotoc_md50"></a> |
222 | 251 | Shu-Osher problem (1D)</h1>
|
223 | 252 | <p>Reference: C. W. Shu, S. Osher, Efficient implementation of essentially non-oscillatory shock-capturing schemes, Journal of Computational Physics 77 (2) (1988) 439–471. doi:10.1016/0021-9991(88)90177-5.</p>
|
224 |
| -<h2><a class="anchor" id="autotoc_md47"></a> |
| 253 | +<h2><a class="anchor" id="autotoc_md51"></a> |
225 | 254 | Initial Condition</h2>
|
226 | 255 | <div class="image">
|
227 | 256 | <img src="initial-1D_shuosher-example.png" alt=""/>
|
228 | 257 | <div class="caption">
|
229 | 258 | Initial Condition</div></div>
|
230 |
| - <h2><a class="anchor" id="autotoc_md48"></a> |
| 259 | + <h2><a class="anchor" id="autotoc_md52"></a> |
231 | 260 | Result</h2>
|
232 | 261 | <div class="image">
|
233 | 262 | <img src="result-1D_shuosher-example.png" alt=""/>
|
234 | 263 | <div class="caption">
|
235 | 264 | Result</div></div>
|
236 |
| - <h1><a class="anchor" id="autotoc_md49"></a> |
237 |
| -Lid-Driven Cavity Problem (2D)</h1> |
238 |
| -<p>Reference: Bezgin, D. A., & Buhendwa A. B., & Adams N. A. (2022). JAX-FLUIDS: A fully-differentiable high-order computational fluid dynamics solver for compressible two-phase flows. arXiv:2203.13760</p> |
239 |
| -<p>Reference: Ghia, U., & Ghia, K. N., & Shin, C. T. (1982). High-re solutions for incompressible flow using the Navier-Stokes equations and a multigrid method. Journal of Computational Physics, 48, 387-411</p> |
240 |
| -<p>Video: <a href="https://youtube.com/shorts/JEP28scZrBM?feature=share">https://youtube.com/shorts/JEP28scZrBM?feature=share</a></p> |
241 |
| -<h2><a class="anchor" id="autotoc_md50"></a> |
242 |
| -Final Condition</h2> |
243 |
| -<div class="image"> |
244 |
| -<img src="final_condition-2D_lid_driven_cavity-example.png" alt=""/> |
245 |
| -<div class="caption"> |
246 |
| -Final Condition</div></div> |
247 |
| - <h2><a class="anchor" id="autotoc_md51"></a> |
248 |
| -Centerline Velocities</h2> |
249 |
| -<div class="image"> |
250 |
| -<img src="centerline_velocities-2D_lid_driven_cavity-example.png" alt=""/> |
251 |
| -<div class="caption"> |
252 |
| -Centerline Velocities</div></div> |
253 |
| - <h1><a class="anchor" id="autotoc_md52"></a> |
254 |
| -3D Weak Scaling</h1> |
255 |
| -<p>The <a href="case.py"><b>3D_weak_scaling</b></a> case depends on two parameters:</p> |
256 |
| -<ul> |
257 |
| -<li><b>The number of MPI ranks</b> (<em>procs</em>): As <em>procs</em> increases, the problem size per rank remains constant. <em>procs</em> is determined using information provided to the case file by <code>mfc.sh run</code>.</li> |
258 |
| -<li><b>GPU memory usage per rank</b> (<em>gbpp</em>): As <em>gbpp</em> increases, the problem size per rank increases and the number of timesteps decreases so that wall times consistent. <em>gbpp</em> is a user-defined optional argument to the <a href="case.py">case.py</a> file. It can be specified right after the case filepath when invoking <code>mfc.sh run</code>.</li> |
259 |
| -</ul> |
260 |
| -<p>Weak scaling benchmarks can be produced by keeping <em>gbpp</em> constant and varying <em>procs</em>.</p> |
261 |
| -<p>For example, to run a weak scaling test that uses ~4GB of GPU memory per rank on 8 2-rank nodes with case optimization, one could:</p> |
262 |
| -<div class="fragment"><div class="line">./mfc.sh run examples/3D_weak_scaling/case.py 4 -t pre_process simulation \</div> |
263 |
| -<div class="line"> -e batch -p mypartition -N 8 -n 2 -w "01:00:00" -# "MFC Weak Scaling" \</div> |
264 |
| -<div class="line"> --case-optimization -j 32</div> |
265 |
| -</div><!-- fragment --> </div></div><!-- contents --> |
| 265 | + </div></div><!-- contents --> |
266 | 266 | </div><!-- PageDoc -->
|
267 | 267 | </div><!-- doc-content -->
|
268 | 268 | <!-- HTML footer for doxygen 1.9.1-->
|
|
0 commit comments