illuminating openmp + mpi performance€¦ · cpi-mpi.c:48 cpi-mpi.c:84 cpi-mpi.c:109 cpi-mpi.c:97...

14
Illuminating OpenMP + MPI Performance Beau Paisley, [email protected]

Upload: others

Post on 02-Oct-2020

79 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Illuminating OpenMP + MPI Performance€¦ · cpi-mpi.c:48 cpi-mpi.c:84 cpi-mpi.c:109 cpi-mpi.c:97 1.0% cpi-mpi [program] main main [OpenMP region O] MPI Finalize MPI Reduce Showing

Illuminating OpenMP + MPI Performance

Beau Paisley, [email protected]

Page 2: Illuminating OpenMP + MPI Performance€¦ · cpi-mpi.c:48 cpi-mpi.c:84 cpi-mpi.c:109 cpi-mpi.c:97 1.0% cpi-mpi [program] main main [OpenMP region O] MPI Finalize MPI Reduce Showing

HPC means being able to work productively on remote machines

Page 3: Illuminating OpenMP + MPI Performance€¦ · cpi-mpi.c:48 cpi-mpi.c:84 cpi-mpi.c:109 cpi-mpi.c:97 1.0% cpi-mpi [program] main main [OpenMP region O] MPI Finalize MPI Reduce Showing

Calculating pi with 1 thread, 1 process

Page 4: Illuminating OpenMP + MPI Performance€¦ · cpi-mpi.c:48 cpi-mpi.c:84 cpi-mpi.c:109 cpi-mpi.c:97 1.0% cpi-mpi [program] main main [OpenMP region O] MPI Finalize MPI Reduce Showing

Profile with 1 process, 1 thread

Page 5: Illuminating OpenMP + MPI Performance€¦ · cpi-mpi.c:48 cpi-mpi.c:84 cpi-mpi.c:109 cpi-mpi.c:97 1.0% cpi-mpi [program] main main [OpenMP region O] MPI Finalize MPI Reduce Showing

Using MAP to analyze our 1 process, 1 thread run

Page 6: Illuminating OpenMP + MPI Performance€¦ · cpi-mpi.c:48 cpi-mpi.c:84 cpi-mpi.c:109 cpi-mpi.c:97 1.0% cpi-mpi [program] main main [OpenMP region O] MPI Finalize MPI Reduce Showing

Zooming in on the IO portion of our run

Page 7: Illuminating OpenMP + MPI Performance€¦ · cpi-mpi.c:48 cpi-mpi.c:84 cpi-mpi.c:109 cpi-mpi.c:97 1.0% cpi-mpi [program] main main [OpenMP region O] MPI Finalize MPI Reduce Showing

Always be thinking about vectorization

Page 8: Illuminating OpenMP + MPI Performance€¦ · cpi-mpi.c:48 cpi-mpi.c:84 cpi-mpi.c:109 cpi-mpi.c:97 1.0% cpi-mpi [program] main main [OpenMP region O] MPI Finalize MPI Reduce Showing

While still connected to the server we can switch to the debugger

Page 9: Illuminating OpenMP + MPI Performance€¦ · cpi-mpi.c:48 cpi-mpi.c:84 cpi-mpi.c:109 cpi-mpi.c:97 1.0% cpi-mpi [program] main main [OpenMP region O] MPI Finalize MPI Reduce Showing

Adding some OpenMP pragmas to multithread

Page 10: Illuminating OpenMP + MPI Performance€¦ · cpi-mpi.c:48 cpi-mpi.c:84 cpi-mpi.c:109 cpi-mpi.c:97 1.0% cpi-mpi [program] main main [OpenMP region O] MPI Finalize MPI Reduce Showing

Adding MPI support and submitting to and HPC batch system

Page 11: Illuminating OpenMP + MPI Performance€¦ · cpi-mpi.c:48 cpi-mpi.c:84 cpi-mpi.c:109 cpi-mpi.c:97 1.0% cpi-mpi [program] main main [OpenMP region O] MPI Finalize MPI Reduce Showing

Analyzing our OpenMP + MPI results

Page 12: Illuminating OpenMP + MPI Performance€¦ · cpi-mpi.c:48 cpi-mpi.c:84 cpi-mpi.c:109 cpi-mpi.c:97 1.0% cpi-mpi [program] main main [OpenMP region O] MPI Finalize MPI Reduce Showing

Why all this synchronization?

Page 13: Illuminating OpenMP + MPI Performance€¦ · cpi-mpi.c:48 cpi-mpi.c:84 cpi-mpi.c:109 cpi-mpi.c:97 1.0% cpi-mpi [program] main main [OpenMP region O] MPI Finalize MPI Reduce Showing

The workflow of pi from serial to HPC

caption

Page 14: Illuminating OpenMP + MPI Performance€¦ · cpi-mpi.c:48 cpi-mpi.c:84 cpi-mpi.c:109 cpi-mpi.c:97 1.0% cpi-mpi [program] main main [OpenMP region O] MPI Finalize MPI Reduce Showing

https://www.allinea.com/products/downloads/free-trial