MPI & OpenMP (Part 5) thumbnail
Pause
Mute
Subtitles
Playback speed
0.25
0.5
0.75
1
1.25
1.5
1.75
2
Full screen

MPI & OpenMP (Part 5)

Published on Sep 19, 20161121 Views

Related categories

Chapter list

Rules and Regulations of the 2 nd Annual IHPCSS Challenge00:00
General Rules00:31
Some Specifics01:14
Rules For Lawyers02:06
Reality Checks02:14
Suggested Things to Explore03:43
Decision05:57
Laplace Exercise06:28
Our Foundation Exercise: Laplace Solver06:29
Exercise Foundation: Jacobi Iteration06:52
Serial Code Implementation07:56
Serial C Code (kernel)08:19
Serial Fortran Code (kernel)08:57
Serial Fortran Code Subroutines09:07
Whole Fortran Code09:08
First Things First: Domain Decomposition09:09
Try Again: Domain Decomposition II09:27
Simplest: Domain Decomposition III09:28
Simplest Decomposition for C Code - 110:18
Simplest Decomposition for C Code - 210:32
Sending Multiple Elements - 110:34
Sending Multiple Elements - 210:40
Sending Multiple Elements - 311:52
Simplest Decomposition for Fortran Code - 112:05
Simplest Decomposition for Fortran Code - 212:10
Sending Multiple Elements in Fortran12:12
Main Loop Structure12:18
Boundary Conditions12:23
Two ways to approach this exercise12:28
MPI Template for C13:05
MPI Template for Fortran13:07
Some ways we might get fancy…13:08
Some ways you might go wrong…13:27
How do you know you are correct? - 113:39
How do you know you are correct? - 213:44
How do you know you are correct? - 313:46
How do you know you are correct? - 414:03
All the action is here14:04
Check for yourself - 114:06
Check for yourself - 214:11
Laplace Exercise14:20
Introduction to OpenMP - 117:01
Nested parallelism - 117:11
Nested parallelism - 218:16
Nested parallelism - 318:18
Numthreads clause18:19
Orphaned directives - 119:16
Orphaned directives - 223:31
Data scoping rules23:32
Binding rules23:33
Thread private global variables23:34
Thread private globals24:23
Copyin clause - 124:37
Copyin clause - 224:49
Timing routines24:53
Using timers25:09
Introduction to OpenMP - 226:27
OpenMP tasks27:10
task directive27:42
Data sharing28:19
When/where are tasks complete?29:25
Example29:49
Parallel pointer chasing30:21
Advanced OpenMP34:03
Motivation34:26
Clustered architecture35:15
Programming clusters35:30
Issues36:40
Simplest: Domain Decomposition III37:53
Simplest Decomposition for C Code - 139:38
Try Again: Domain Decomposition II39:38
Development / maintenance39:58
Portability40:27
Thread safety41:18
Performance42:15
Replicated data42:31
Effect of domain size on halo storage44:04
Poorly scaling MPI codes45:40
Load balancing47:27
Limited MPI process numbers47:34
MPI implementation not tuned for SMP clusters48:38
Styles of mixed-mode programming50:37
OpenMP funneled51:31
OpenMP serialized51:55
OpenMP multiple52:19
MPI_init_thread - 152:39
MPI_init_thread - 253:11
MPI_init_thread - 353:44
MPI_query_thread54:22
Pitfalls54:33
Master-only54:35
Example - 154:43
Example - 254:44
Example - 354:45
Example - 454:45
Example - 554:46
Example - 654:46
Example - 754:46
Example - 854:47
Example - 954:47
Example - 1054:47
Example - 1154:49
Funneled54:49
OpenMP funneled with overlapping - 154:51
OpenMP funneled with overlapping - 254:52
Serialised54:52
Multiple54:54
Distinguishing between threads55:04
End points56:28
Performance56:36
Consequence59:29
Summary01:00:35
OpenMP master-only01:04:23