Skip to content

Commit 8ca792f

Browse files
committed
Deploying to gh-pages from @ dfed2da 🚀
1 parent 373d51e commit 8ca792f

3 files changed

Lines changed: 12 additions & 12 deletions

File tree

‎Manifest.toml‎

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

‎benchmark/index.html‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
<!doctype html> <html lang=en > <meta charset=UTF-8 > <meta name=viewport content="width=device-width, initial-scale=1"> <link rel=stylesheet href="/css/franklin.css"> <link rel=stylesheet href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:400,700,400italic|Source+Code+Pro:400,700" type="text/css"> <link rel=stylesheet href="/css/font-awesome.min.css"> <link rel=stylesheet href="/css/celeste.min.css"> <link rel=icon type="image/png" sizes=192x192 href="/assets/favicon.png"> <link rel="shortcut icon" href="/assets/favicon.ico"> <link rel=apple-touch-icon-precomposed sizes=152x152 href="/assets/apple-touch-icon.png"> <title>Comparison of <code>rhs&#33;</code> Performance: CPU vs. GPU</title> <header> <nav class=nav-main > <ul> <a class=hvr-underline-reveal href="/" style="margin-top: 15px; margin-right: 15px"> <img src="/assets/favicon.png" alt=Logo style="height: 45px; width: 45px"> </a> <li class=hvr-underline-reveal ><a href="/">Home</a> <li class=hvr-underline-reveal ><a href="/doc/">Doc</a> <li class=hvr-underline-reveal ><a href="/tutorial/">Tutorial</a> <li class=hvr-underline-reveal ><a href="/blog/">Blog</a> </ul> </nav> </header> <div class=franklin-content ><h1 id=comparison_of_rhs_performance_cpu_vs_gpu ><a href="#comparison_of_rhs_performance_cpu_vs_gpu" class=header-anchor >Comparison of <code>rhs&#33;</code> Performance: CPU vs. GPU</a></h1> <blockquote> <p>This documentation serves as a supplementary material for JuliaCon 2025. <br /></p> </blockquote> <p>See the benchmarking file at <a href="https://github.com/trixi-gpu/TrixiCUDA.jl/blob/v0.11.17/benchmark/plot.ipynb">plot.ipynb</a>, and all results are compared between <a href="">TrixiCUDA.jl v0.1.0-rc.2</a> and <a href="https://github.com/trixi-framework/Trixi.jl/tree/v0.11.17">Trixi.jl v0.11.17</a>.</p> <p>We provide the link to each example in Trixi.jl as it is a more mature and stable package compared to TrixiCUDA.jl. Note that performance varies with different inputs; these benchmark results are provided for reference only.</p> <h2 id=linear_advection_equation ><a href="#linear_advection_equation" class=header-anchor >Linear Advection Equation</a></h2> <p>Left: Basic linear advection equation &#40;<a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_1d_dgsem/elixir_advection_basic.jl">1D</a>, <a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_2d_dgsem/elixir_advection_basic.jl">2D</a>, <a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_3d_dgsem/elixir_advection_basic.jl">3D</a>&#41; <br />Right: Linear advection equation with mortar method &#40;<a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_2d_dgsem/elixir_advection_mortar.jl">2D</a>, <a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_3d_dgsem/elixir_advection_mortar.jl">3D</a>&#41;</p> <table style="background: transparent; border: none;"> <tr> <td style="background: transparent; border: none;"> <img src="/assets/benchmark/bench1.png" style="width: 300px;"> <td style="background: transparent; border: none;"> <img src="/assets/benchmark/bench2.png" style="width: 300px;"> </table> <h2 id=compressible_euler_equations ><a href="#compressible_euler_equations" class=header-anchor >Compressible Euler Equations</a></h2> <p>Left: Compressible Euler equations with entropy-conservative flux &#40;<a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_1d_dgsem/elixir_euler_ec.jl">1D</a>, <a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_2d_dgsem/elixir_euler_ec.jl">2D</a>, <a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_3d_dgsem/elixir_euler_ec.jl">3D</a>&#41; Right: Compressible Euler equations with shock capturing &#40;<a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_1d_dgsem/elixir_euler_shockcapturing.jl">1D</a>, <a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_2d_dgsem/elixir_euler_shockcapturing.jl">2D</a>, <a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_3d_dgsem/elixir_euler_shockcapturing.jl">3D</a>&#41;</p> <table style="background: transparent; border: none;"> <tr> <td style="background: transparent; border: none;"> <img src="/assets/benchmark/bench3.png" style="width: 300px;"> <td style="background: transparent; border: none;"> <img src="/assets/benchmark/bench4.png" style="width: 300px;"> </table> <h2 id=hyperbolic_diffusion_equations ><a href="#hyperbolic_diffusion_equations" class=header-anchor >Hyperbolic Diffusion Equations</a></h2> <p>Hyperbolic diffusion equations with non-periodic boundary conditions &#40;<a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_1d_dgsem/elixir_hypdiff_nonperiodic.jl">1D</a>, <a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_2d_dgsem/elixir_hypdiff_nonperiodic.jl">2D</a>, <a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_3d_dgsem/elixir_hypdiff_nonperiodic.jl">3D</a>&#41;</p> <div align=center > <img src="/assets/benchmark/bench8.png" style="width: 300px;"> </div> <h2 id=ideal_glm-mhd_equations ><a href="#ideal_glm-mhd_equations" class=header-anchor >Ideal GLM-MHD Equations</a></h2> <p>Upper: Ideal GLM-MHD equations with entropy-conservative flux &#40;<a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_1d_dgsem/elixir_mhd_ec.jl">1D</a>, <a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_2d_dgsem/elixir_mhd_ec.jl">2D</a>, <a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_3d_dgsem/elixir_mhd_ec.jl">3D</a>&#41; <br />Lower left: Ideal GLM-MHD Alfven wave &#40;<a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_1d_dgsem/elixir_mhd_alfven_wave.jl">1D</a>, <a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_2d_dgsem/elixir_mhd_alfven_wave.jl">2D</a>, <a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_3d_dgsem/elixir_mhd_alfven_wave.jl">3D</a>&#41; <br />Lower right: Ideal GLM-MHD Alfven wave with mortar method &#40;<a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_2d_dgsem/elixir_mhd_alfven_wave_mortar.jl">2D</a>, <a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_3d_dgsem/elixir_mhd_alfven_wave_mortar.jl">3D</a>&#41;</p> <p> <div align=center > <img src="/assets/benchmark/bench5.png" style="width: 300px;"> </div> <table style="background: transparent; border: none;"> <tr> <td style="background: transparent; border: none;"> <img src="/assets/benchmark/bench6.png" style="width: 300px;"> <td style="background: transparent; border: none;"> <img src="/assets/benchmark/bench7.png" style="width: 300px;"> </table> </p> <h2 id=shallow_water_equations ><a href="#shallow_water_equations" class=header-anchor >Shallow Water Equations</a></h2> <p>Left: Shallow water equations with entropy conservative flux &#40;<a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_1d_dgsem/elixir_shallowwater_ec.jl">1D</a>, <a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_2d_dgsem/elixir_shallowwater_ec.jl">2D</a>&#41; <br />Right: Shallow water equations with source terms &#40;<a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_1d_dgsem/elixir_shallowwater_source_terms.jl">1D</a>, <a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_2d_dgsem/elixir_shallowwater_source_terms.jl">2D</a>&#41;</p> <table style="background: transparent; border: none;"> <tr> <td style="background: transparent; border: none;"> <img src="/assets/benchmark/bench9.png" style="width: 300px;"> <td style="background: transparent; border: none;"> <img src="/assets/benchmark/bench10.png" style="width: 300px;"> </table> <h2 id=takeaway ><a href="#takeaway" class=header-anchor >Takeaway</a></h2> <p>For simple cases &#40;for example, if the CPU performance is less than 100 μs&#41;, it is not advantageous to run on the GPU, since the overhead of using the GPU outweighs any performance gain. However, for more complex cases &#40;such as when execution time on the CPU exceeds 1,000 μs&#41;, running on the GPU can provide significant benefits.</p> <div class=page-foot > <p> &copy; <a href="https://github.com/trixi-gpu" target=_blank >Trixi-GPU</a> developers. Powered by <a href="https://github.com/tlienart/Franklin.jl" target=_blank >Franklin.jl</a> and the <a href="https://julialang.org" target=_blank >Julia programming language</a>. </p> </div></div>
1+
<!doctype html> <html lang=en > <meta charset=UTF-8 > <meta name=viewport content="width=device-width, initial-scale=1"> <link rel=stylesheet href="/css/franklin.css"> <link rel=stylesheet href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:400,700,400italic|Source+Code+Pro:400,700" type="text/css"> <link rel=stylesheet href="/css/font-awesome.min.css"> <link rel=stylesheet href="/css/celeste.min.css"> <link rel=icon type="image/png" sizes=192x192 href="/assets/favicon.png"> <link rel="shortcut icon" href="/assets/favicon.ico"> <link rel=apple-touch-icon-precomposed sizes=152x152 href="/assets/apple-touch-icon.png"> <title>Comparison of <code>rhs&#33;</code> Performance: CPU vs. GPU</title> <header> <nav class=nav-main > <ul> <a class=hvr-underline-reveal href="/" style="margin-top: 15px; margin-right: 15px"> <img src="/assets/favicon.png" alt=Logo style="height: 45px; width: 45px"> </a> <li class=hvr-underline-reveal ><a href="/">Home</a> <li class=hvr-underline-reveal ><a href="/doc/">Doc</a> <li class=hvr-underline-reveal ><a href="/tutorial/">Tutorial</a> <li class=hvr-underline-reveal ><a href="/blog/">Blog</a> </ul> </nav> </header> <div class=franklin-content ><h1 id=comparison_of_rhs_performance_cpu_vs_gpu ><a href="#comparison_of_rhs_performance_cpu_vs_gpu" class=header-anchor >Comparison of <code>rhs&#33;</code> Performance: CPU vs. GPU</a></h1> <blockquote> <p>This documentation serves as a supplementary material for JuliaCon 2025. <br /></p> </blockquote> <p>See the benchmarking file at <a href="https://github.com/trixi-gpu/TrixiCUDA.jl/blob/v0.1.0-rc.2/benchmark/benchmark.ipynb">benchmark.ipynb</a>, and all results are compared between <a href="https://github.com/trixi-gpu/TrixiCUDA.jl/tree/v0.1.0-rc.2">TrixiCUDA.jl v0.1.0-rc.2</a> and <a href="https://github.com/trixi-framework/Trixi.jl/tree/v0.11.17">Trixi.jl v0.11.17</a>.</p> <p>We provide the link to each example in Trixi.jl as it is a more mature and stable package compared to TrixiCUDA.jl. Note that performance varies with different inputs; these benchmark results are provided for reference only.</p> <h2 id=linear_advection_equation ><a href="#linear_advection_equation" class=header-anchor >Linear Advection Equation</a></h2> <p>Left: Basic linear advection equation &#40;<a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_1d_dgsem/elixir_advection_basic.jl">1D</a>, <a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_2d_dgsem/elixir_advection_basic.jl">2D</a>, <a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_3d_dgsem/elixir_advection_basic.jl">3D</a>&#41; <br />Right: Linear advection equation with mortar method &#40;<a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_2d_dgsem/elixir_advection_mortar.jl">2D</a>, <a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_3d_dgsem/elixir_advection_mortar.jl">3D</a>&#41;</p> <table style="background: transparent; border: none;"> <tr> <td style="background: transparent; border: none;"> <img src="/assets/benchmark/bench1.png" style="width: 300px;"> <td style="background: transparent; border: none;"> <img src="/assets/benchmark/bench2.png" style="width: 300px;"> </table> <h2 id=compressible_euler_equations ><a href="#compressible_euler_equations" class=header-anchor >Compressible Euler Equations</a></h2> <p>Left: Compressible Euler equations with entropy-conservative flux &#40;<a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_1d_dgsem/elixir_euler_ec.jl">1D</a>, <a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_2d_dgsem/elixir_euler_ec.jl">2D</a>, <a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_3d_dgsem/elixir_euler_ec.jl">3D</a>&#41; Right: Compressible Euler equations with shock capturing &#40;<a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_1d_dgsem/elixir_euler_shockcapturing.jl">1D</a>, <a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_2d_dgsem/elixir_euler_shockcapturing.jl">2D</a>, <a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_3d_dgsem/elixir_euler_shockcapturing.jl">3D</a>&#41;</p> <table style="background: transparent; border: none;"> <tr> <td style="background: transparent; border: none;"> <img src="/assets/benchmark/bench3.png" style="width: 300px;"> <td style="background: transparent; border: none;"> <img src="/assets/benchmark/bench4.png" style="width: 300px;"> </table> <h2 id=hyperbolic_diffusion_equations ><a href="#hyperbolic_diffusion_equations" class=header-anchor >Hyperbolic Diffusion Equations</a></h2> <p>Hyperbolic diffusion equations with non-periodic boundary conditions &#40;<a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_1d_dgsem/elixir_hypdiff_nonperiodic.jl">1D</a>, <a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_2d_dgsem/elixir_hypdiff_nonperiodic.jl">2D</a>, <a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_3d_dgsem/elixir_hypdiff_nonperiodic.jl">3D</a>&#41;</p> <div align=center > <img src="/assets/benchmark/bench8.png" style="width: 300px;"> </div> <h2 id=ideal_glm-mhd_equations ><a href="#ideal_glm-mhd_equations" class=header-anchor >Ideal GLM-MHD Equations</a></h2> <p>Upper: Ideal GLM-MHD equations with entropy-conservative flux &#40;<a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_1d_dgsem/elixir_mhd_ec.jl">1D</a>, <a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_2d_dgsem/elixir_mhd_ec.jl">2D</a>, <a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_3d_dgsem/elixir_mhd_ec.jl">3D</a>&#41; <br />Lower left: Ideal GLM-MHD Alfven wave &#40;<a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_1d_dgsem/elixir_mhd_alfven_wave.jl">1D</a>, <a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_2d_dgsem/elixir_mhd_alfven_wave.jl">2D</a>, <a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_3d_dgsem/elixir_mhd_alfven_wave.jl">3D</a>&#41; <br />Lower right: Ideal GLM-MHD Alfven wave with mortar method &#40;<a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_2d_dgsem/elixir_mhd_alfven_wave_mortar.jl">2D</a>, <a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_3d_dgsem/elixir_mhd_alfven_wave_mortar.jl">3D</a>&#41;</p> <p> <div align=center > <img src="/assets/benchmark/bench5.png" style="width: 300px;"> </div> <table style="background: transparent; border: none;"> <tr> <td style="background: transparent; border: none;"> <img src="/assets/benchmark/bench6.png" style="width: 300px;"> <td style="background: transparent; border: none;"> <img src="/assets/benchmark/bench7.png" style="width: 300px;"> </table> </p> <h2 id=shallow_water_equations ><a href="#shallow_water_equations" class=header-anchor >Shallow Water Equations</a></h2> <p>Left: Shallow water equations with entropy conservative flux &#40;<a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_1d_dgsem/elixir_shallowwater_ec.jl">1D</a>, <a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_2d_dgsem/elixir_shallowwater_ec.jl">2D</a>&#41; <br />Right: Shallow water equations with source terms &#40;<a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_1d_dgsem/elixir_shallowwater_source_terms.jl">1D</a>, <a href="https://github.com/trixi-framework/Trixi.jl/blob/v0.11.17/examples/tree_2d_dgsem/elixir_shallowwater_source_terms.jl">2D</a>&#41;</p> <table style="background: transparent; border: none;"> <tr> <td style="background: transparent; border: none;"> <img src="/assets/benchmark/bench9.png" style="width: 300px;"> <td style="background: transparent; border: none;"> <img src="/assets/benchmark/bench10.png" style="width: 300px;"> </table> <h2 id=takeaway ><a href="#takeaway" class=header-anchor >Takeaway</a></h2> <p>For simple cases &#40;for example, if the CPU performance is less than 100 μs&#41;, it is not advantageous to run on the GPU, since the overhead of using the GPU outweighs any performance gain. However, for more complex cases &#40;such as when execution time on the CPU exceeds 1,000 μs&#41;, running on the GPU can provide significant benefits.</p> <div class=page-foot > <p> &copy; <a href="https://github.com/trixi-gpu" target=_blank >Trixi-GPU</a> developers. Powered by <a href="https://github.com/tlienart/Franklin.jl" target=_blank >Franklin.jl</a> and the <a href="https://julialang.org" target=_blank >Julia programming language</a>. </p> </div></div>

‎sitemap.xml‎

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3,55 +3,55 @@
33

44
<url>
55
<loc>https://trixi-gpu.github.io/doc/index.html</loc>
6-
<lastmod>2025-06-27</lastmod>
6+
<lastmod>2025-06-29</lastmod>
77
<changefreq>monthly</changefreq>
88
<priority>0.5</priority>
99
</url>
1010
<url>
1111
<loc>https://trixi-gpu.github.io/tutorial/cloud_gpu/index.html</loc>
12-
<lastmod>2025-06-27</lastmod>
12+
<lastmod>2025-06-29</lastmod>
1313
<changefreq>monthly</changefreq>
1414
<priority>0.5</priority>
1515
</url>
1616
<url>
1717
<loc>https://trixi-gpu.github.io/blog/index.html</loc>
18-
<lastmod>2025-06-27</lastmod>
18+
<lastmod>2025-06-29</lastmod>
1919
<changefreq>monthly</changefreq>
2020
<priority>0.5</priority>
2121
</url>
2222
<url>
2323
<loc>https://trixi-gpu.github.io/update/index.html</loc>
24-
<lastmod>2025-06-27</lastmod>
24+
<lastmod>2025-06-29</lastmod>
2525
<changefreq>monthly</changefreq>
2626
<priority>0.5</priority>
2727
</url>
2828
<url>
2929
<loc>https://trixi-gpu.github.io/tutorial/index.html</loc>
30-
<lastmod>2025-06-27</lastmod>
30+
<lastmod>2025-06-29</lastmod>
3131
<changefreq>monthly</changefreq>
3232
<priority>0.5</priority>
3333
</url>
3434
<url>
3535
<loc>https://trixi-gpu.github.io/tutorial/ncu_profiling/index.html</loc>
36-
<lastmod>2025-06-27</lastmod>
36+
<lastmod>2025-06-29</lastmod>
3737
<changefreq>monthly</changefreq>
3838
<priority>0.5</priority>
3939
</url>
4040
<url>
4141
<loc>https://trixi-gpu.github.io/tutorial/nsys_profiling/index.html</loc>
42-
<lastmod>2025-06-27</lastmod>
42+
<lastmod>2025-06-29</lastmod>
4343
<changefreq>monthly</changefreq>
4444
<priority>0.5</priority>
4545
</url>
4646
<url>
4747
<loc>https://trixi-gpu.github.io/benchmark/index.html</loc>
48-
<lastmod>2025-06-27</lastmod>
48+
<lastmod>2025-06-29</lastmod>
4949
<changefreq>monthly</changefreq>
5050
<priority>0.5</priority>
5151
</url>
5252
<url>
5353
<loc>https://trixi-gpu.github.io/index.html</loc>
54-
<lastmod>2025-06-27</lastmod>
54+
<lastmod>2025-06-29</lastmod>
5555
<changefreq>monthly</changefreq>
5656
<priority>0.5</priority>
5757
</url>

0 commit comments

Comments
 (0)