Skip to content

Commit 4c75a9d

Browse files
committed
Deploying to gh-pages from @ c321aa8 🚀
1 parent b0f0571 commit 4c75a9d

File tree

21 files changed

+50
-54
lines changed

21 files changed

+50
-54
lines changed

Diff for: 404.html

+1-1
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"> <script src="/libs/lunr/lunr.min.js"></script> <script src="/libs/lunr/lunr_index.js"></script> <script src="/libs/lunr/lunrclient.min.js"></script> <link rel=stylesheet href="/css/franklin.css"> <link rel=stylesheet href="/css/poole_hyde.css"> <link rel=stylesheet href="/css/custom.css"> <style> html {font-size: 17px;} .franklin-content {position: relative; padding-left: 8%; padding-right: 5%; line-height: 1.35em;} @media (min-width: 940px) { .franklin-content {width: 100%; margin-left: auto; margin-right: auto;} } @media (max-width: 768px) { .franklin-content {padding-left: 6%; padding-right: 6%;} } </style> <link rel=icon href="/assets/favicon.png"> <title>404: File not found</title> <style> .content {max-width: 50rem} </style> <div class=sidebar > <div class="container sidebar-sticky"> <div class=sidebar-about > <img src="/assets/vaw_logo.png" style="width: 180px; height: auto; display: inline"> <div style="font-weight: margin-bottom: 0.5em"><a href="/"> Fall 2024</a> <span style="opacity: 0.7;">| <a href="https://www.vorlesungen.ethz.ch/Vorlesungsverzeichnis/lerneinheit.view?semkez=2024W&ansicht=KATALOGDATEN&lerneinheitId=182481&lang=en"> ETHZ 101-0250-00</a></span></div> <br> <h1><a href="/">Solving partial differential equations in parallel on GPUs</a></h1> <div style="line-height:18px; font-size: 15px; opacity: 0.85">by &nbsp; <a href="https://vaw.ethz.ch/en/people/person-detail.MjcwOTYw.TGlzdC8xOTYxLDE1MTczNjI1ODA=.html">Ludovic Räss</a>, &nbsp; <a href="https://vaw.ethz.ch/en/personen/person-detail.html?persid=124402">Mauro Werder</a>, &nbsp; <a href="https://www.cscs.ch/about/staff/">Samuel Omlin</a> & <br> <a href="https://vaw.ethz.ch/en/people/person-detail.MzAwMjIy.TGlzdC8xOTYxLDE1MTczNjI1ODA=.html">Ivan Utkin</a> </div> </div> <br> <style> </style> <nav class=sidebar-nav style="opacity: 0.9; margin-bottom: 1.2cm;"> <a class="sidebar-nav-item " href="/"><b>Welcome</b></a> <a class="sidebar-nav-item " href="/logistics/">Logistics</a> <a class="sidebar-nav-item " href="/homework/">Homeworks</a> <a class="sidebar-nav-item " href="/software_install/">Software install</a> <a class="sidebar-nav-item " href="/extras/">Extras</a> <br> <div class=course-section >Part 1 – Introduction</div> <a class="sidebar-nav-item " href="/lecture1/">Lecture 1 – Why Julia GPU</a> <a class="sidebar-nav-item " href="/lecture2/">Lecture 2 – PDEs & physical processes</a> <a class="sidebar-nav-item " href="/lecture3/">Lecture 3 – Solving elliptic PDEs</a> <div class=course-section >Part 2 – Solving PDEs on GPUs</div> <a class="sidebar-nav-item " href="/lecture4/">Lecture 4 – Porous convection</a> <a class="sidebar-nav-item " href="/lecture5/">Lecture 5 – Parallel computing</a> <a class="sidebar-nav-item " href="/lecture6/">Lecture 6 – GPU computing</a> <div class=course-section >Part 3 – Multi-GPU computing (projects)</div> <a class="sidebar-nav-item " href="/lecture7/">Lecture 7 – xPU computing</a> <a class="sidebar-nav-item " href="/lecture8/">Lecture 8 – Julia MPI & multi-xPU</a> <a class="sidebar-nav-item " href="/lecture9/">Lecture 9 – Multi-xPU & Projects</a> <a class="sidebar-nav-item " href="/lecture10/">Lecture 10 – Advanced optimisations</a> <div class=course-section >Final Projects</div> <a class="sidebar-nav-item " href="/final_proj/">Infos about final projects</a> </nav> <form id=lunrSearchForm name=lunrSearchForm > <input class=search-input name=q placeholder="Enter search term" type=text > <input type=submit value=Search formaction="/search/index.html"> </form> <br> <br> </div> </div> <div class="content container"> <div class=franklin-content ><h1 id=404_file_not_found ><a href="#404_file_not_found" class=header-anchor >404: File not found</a></h1> <p>The requested file was not found.</p> <p>Please <a href="/">click here</a> to go to the home page.</p> <div class=page-foot > <div class=copyright > <a href="https://github.com/eth-vaw-glaciology/course-101-0250-00/"><b>Edit this page on <img class=github-logo src="https://unpkg.com/ionicons@5.1.2/dist/svg/logo-github.svg"></b></a><br> Last modified: November 27, 2024. Website built with <a href="https://github.com/tlienart/Franklin.jl">Franklin.jl</a> and the <a href="https://julialang.org">Julia programming language</a>. </div> </div> </div> </div>
1+
<!doctype html> <html lang=en > <meta charset=UTF-8 > <meta name=viewport content="width=device-width, initial-scale=1"> <script src="/libs/lunr/lunr.min.js"></script> <script src="/libs/lunr/lunr_index.js"></script> <script src="/libs/lunr/lunrclient.min.js"></script> <link rel=stylesheet href="/css/franklin.css"> <link rel=stylesheet href="/css/poole_hyde.css"> <link rel=stylesheet href="/css/custom.css"> <style> html {font-size: 17px;} .franklin-content {position: relative; padding-left: 8%; padding-right: 5%; line-height: 1.35em;} @media (min-width: 940px) { .franklin-content {width: 100%; margin-left: auto; margin-right: auto;} } @media (max-width: 768px) { .franklin-content {padding-left: 6%; padding-right: 6%;} } </style> <link rel=icon href="/assets/favicon.png"> <title>404: File not found</title> <style> .content {max-width: 50rem} </style> <div class=sidebar > <div class="container sidebar-sticky"> <div class=sidebar-about > <img src="/assets/vaw_logo.png" style="width: 180px; height: auto; display: inline"> <div style="font-weight: margin-bottom: 0.5em"><a href="/"> Fall 2024</a> <span style="opacity: 0.7;">| <a href="https://www.vorlesungen.ethz.ch/Vorlesungsverzeichnis/lerneinheit.view?semkez=2024W&ansicht=KATALOGDATEN&lerneinheitId=182481&lang=en"> ETHZ 101-0250-00</a></span></div> <br> <h1><a href="/">Solving partial differential equations in parallel on GPUs</a></h1> <div style="line-height:18px; font-size: 15px; opacity: 0.85">by &nbsp; <a href="https://vaw.ethz.ch/en/people/person-detail.MjcwOTYw.TGlzdC8xOTYxLDE1MTczNjI1ODA=.html">Ludovic Räss</a>, &nbsp; <a href="https://vaw.ethz.ch/en/personen/person-detail.html?persid=124402">Mauro Werder</a>, &nbsp; <a href="https://www.cscs.ch/about/staff/">Samuel Omlin</a> & <br> <a href="https://vaw.ethz.ch/en/people/person-detail.MzAwMjIy.TGlzdC8xOTYxLDE1MTczNjI1ODA=.html">Ivan Utkin</a> </div> </div> <br> <style> </style> <nav class=sidebar-nav style="opacity: 0.9; margin-bottom: 1.2cm;"> <a class="sidebar-nav-item " href="/"><b>Welcome</b></a> <a class="sidebar-nav-item " href="/logistics/">Logistics</a> <a class="sidebar-nav-item " href="/homework/">Homeworks</a> <a class="sidebar-nav-item " href="/software_install/">Software install</a> <a class="sidebar-nav-item " href="/extras/">Extras</a> <br> <div class=course-section >Part 1 – Introduction</div> <a class="sidebar-nav-item " href="/lecture1/">Lecture 1 – Why Julia GPU</a> <a class="sidebar-nav-item " href="/lecture2/">Lecture 2 – PDEs & physical processes</a> <a class="sidebar-nav-item " href="/lecture3/">Lecture 3 – Solving elliptic PDEs</a> <div class=course-section >Part 2 – Solving PDEs on GPUs</div> <a class="sidebar-nav-item " href="/lecture4/">Lecture 4 – Porous convection</a> <a class="sidebar-nav-item " href="/lecture5/">Lecture 5 – Parallel computing</a> <a class="sidebar-nav-item " href="/lecture6/">Lecture 6 – GPU computing</a> <div class=course-section >Part 3 – Multi-GPU computing (projects)</div> <a class="sidebar-nav-item " href="/lecture7/">Lecture 7 – xPU computing</a> <a class="sidebar-nav-item " href="/lecture8/">Lecture 8 – Julia MPI & multi-xPU</a> <a class="sidebar-nav-item " href="/lecture9/">Lecture 9 – Multi-xPU & Projects</a> <a class="sidebar-nav-item " href="/lecture10/">Lecture 10 – Advanced optimisations</a> <div class=course-section >Final Projects</div> <a class="sidebar-nav-item " href="/final_proj/">Infos about final projects</a> </nav> <form id=lunrSearchForm name=lunrSearchForm > <input class=search-input name=q placeholder="Enter search term" type=text > <input type=submit value=Search formaction="/search/index.html"> </form> <br> <br> </div> </div> <div class="content container"> <div class=franklin-content ><h1 id=404_file_not_found ><a href="#404_file_not_found" class=header-anchor >404: File not found</a></h1> <p>The requested file was not found.</p> <p>Please <a href="/">click here</a> to go to the home page.</p> <div class=page-foot > <div class=copyright > <a href="https://github.com/eth-vaw-glaciology/course-101-0250-00/"><b>Edit this page on <img class=github-logo src="https://unpkg.com/ionicons@5.1.2/dist/svg/logo-github.svg"></b></a><br> Last modified: December 01, 2024. Website built with <a href="https://github.com/tlienart/Franklin.jl">Franklin.jl</a> and the <a href="https://julialang.org">Julia programming language</a>. </div> </div> </div> </div>

Diff for: Manifest.toml

+2-2
Original file line numberDiff line numberDiff line change
@@ -214,9 +214,9 @@ uuid = "458c3c95-2e84-50aa-8efc-19380b2a3a95"
214214
version = "3.0.15+1"
215215

216216
[[deps.OrderedCollections]]
217-
git-tree-sha1 = "dfdf5519f235516220579f949664f1bf44e741c5"
217+
git-tree-sha1 = "12f1439c4f986bb868acda6ea33ebc78e19b95ad"
218218
uuid = "bac558e1-5e72-5ebc-8fee-abe8a469f55d"
219-
version = "1.6.3"
219+
version = "1.7.0"
220220

221221
[[deps.Parsers]]
222222
deps = ["Dates", "PrecompileTools", "UUIDs"]

Diff for: assets/literate/l9_1-projects_web.md

+7-9
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ using ImplicitGlobalGrid
3838
import MPI
3939
````
4040

41-
3. Also add global maximum computation using MPI reduction function
41+
3. Further, add global maximum computation using MPI reduction function to be used instead of `maximum()`
4242

4343
````julia:ex2
4444
max_g(A) = (max_l = maximum(A); MPI.Allreduce(max_l, MPI.MAX, MPI.COMM_WORLD))
@@ -80,9 +80,7 @@ if do_viz
8080
end
8181
````
8282

83-
7. Use the `max_g` function in the timestep `dt` definition (instead of `maximum`) as one now needs to gather the global maximum among all MPI processes.
84-
85-
8. Moving to the time loop, add halo update function `update_halo!` after the kernel that computes the fluid fluxes. You can additionally wrap it in the `@hide_communication` block to enable communication/computation overlap (using `b_width` defined above)
83+
7. Moving to the time loop, add halo update function `update_halo!` after the kernel that computes the fluid fluxes. You can additionally wrap it in the `@hide_communication` block to enable communication/computation overlap (using `b_width` defined above)
8684

8785
````julia:ex6
8886
@hide_communication b_width begin
@@ -91,7 +89,7 @@ end
9189
end
9290
````
9391

94-
9. Apply a similar step to the temperature update, where you can also include boundary condition computation as following (⚠️ no other construct is currently allowed)
92+
8. Apply a similar step to the temperature update, where you can also include boundary condition computation as following (⚠️ no other construct is currently allowed)
9593

9694
````julia:ex7
9795
@hide_communication b_width begin
@@ -102,7 +100,7 @@ end
102100
end
103101
````
104102

105-
10. Use now the `max_g` function instead of `maximum` to collect the global maximum among all local arrays spanning all MPI processes.
103+
9. Use now the `max_g` function instead of `maximum` to collect the global maximum among all local arrays spanning all MPI processes. Use it in the timestep `dt` definition and in the error calculation (instead of `maximum`).
106104

107105
````julia:ex8
108106
# time step
@@ -113,9 +111,9 @@ else
113111
end
114112
````
115113

116-
11. Make sure all printing statements are only executed by `me==0` in order to avoid each MPI process to print to screen, and use `nx_g()` instead of local `nx` in the printed statements when assessing the iteration per number of grid points.
114+
10. Make sure all printing statements are only executed by `me==0` in order to avoid each MPI process to print to screen, and use `nx_g()` instead of local `nx` in the printed statements when assessing the iteration per number of grid points.
117115

118-
12. Update the visualisation and output saving part
116+
11. Update the visualisation and output saving part
119117

120118
````julia:ex9
121119
# visualisation
@@ -130,7 +128,7 @@ if do_viz && (it % nvis == 0)
130128
end
131129
````
132130

133-
13. Finalise the global grid before returning from the main function
131+
12. Finalise the global grid before returning from the main function
134132

135133
````julia:ex10
136134
finalize_global_grid()

0 commit comments

Comments
 (0)