OpenMPIR Implementing OpenMP tasks with Tapir George Stelle 1 - - PowerPoint PPT Presentation

openmpir
SMART_READER_LITE
LIVE PREVIEW

OpenMPIR Implementing OpenMP tasks with Tapir George Stelle 1 - - PowerPoint PPT Presentation

OpenMPIR Implementing OpenMP tasks with Tapir George Stelle 1 William S. Moses 2 Patrick McCormick 1 Stephen L. Olivier 3 1 Los Alamos National Laboratory 2 MIT CSAIL 3 Sandia National Laboratories November 13, 2017 Operated by Los Alamos


slide-1
SLIDE 1

OpenMPIR

Implementing OpenMP tasks with Tapir

George Stelle 1 William S. Moses 2 Stephen L. Olivier 3 Patrick McCormick 1

1Los Alamos National Laboratory 2MIT CSAIL 3Sandia National Laboratories

November 13, 2017

Operated by Los Alamos National Security, LLC for the U.S. Department of Energy’s NNSA

slide-2
SLIDE 2

Outline

OpenMP Motivation Tapir Implementation Results Discussion Questions

Slide 2

Operated by Los Alamos National Security, LLC for the U.S. Department of Energy’s NNSA

slide-3
SLIDE 3

OpenMP

int fib(int n){ if (n < 2) return n; else { int x, y; #pragma omp task x = fib(n-1); #pragma omp task y = fib(n-2); #pragma omp taskwait return x+y; } }

Slide 3

Operated by Los Alamos National Security, LLC for the U.S. Department of Energy’s NNSA

slide-4
SLIDE 4

OpenMP LLVM IR

... %19 = call i32 @__kmpc_omp_task(%ident_t* nonnull @0, i32 %5, %20 = call i8* @__kmpc_omp_task_alloc(%ident_t* nonnull @0, %21 = bitcast i8* %20 to i8** %22 = load i8*, i8** %21, align 8, !tbaa !8 ... %28 = load i32, i32* %2, align 4, !tbaa !4 store i32 %28, i32* %27, align 4, !tbaa !13 %29 = call i32 @__kmpc_omp_task(%ident_t* nonnull @0, i32 %5, %30 = call i32 @__kmpc_omp_taskwait(%ident_t* nonnull @0, i32 ...

Slide 4

Operated by Los Alamos National Security, LLC for the U.S. Department of Energy’s NNSA

slide-5
SLIDE 5

Slide 5

Operated by Los Alamos National Security, LLC for the U.S. Department of Energy’s NNSA

slide-6
SLIDE 6

Tapir

detach reattach sync

Slide 6

Operated by Los Alamos National Security, LLC for the U.S. Department of Energy’s NNSA

slide-7
SLIDE 7

int fib(int n){ ... #pragma omp task x = fib(n-1); #pragma omp task y = fib(n-2); #pragma omp taskwait ... }

... if.end: detach label %det.achd, label %det.cont det.achd: %2 = load i32, i32* %n.addr, align 4 %sub = sub nsw i32 %2, 1 %call = call i32 @fib(i32 %sub) store i32 %call, i32* %x, align 4 reattach label %det.cont det.cont: detach label %det.achd1, label %det.cont4 det.achd1: %3 = load i32, i32* %n.addr, align 4 %sub2 = sub nsw i32 %3, 2 %call3 = call i32 @fib(i32 %sub2) store i32 %call3, i32* %y, align 4 reattach label %det.cont4 det.cont4: sync label %sync.continue ...

Slide 7

Operated by Los Alamos National Security, LLC for the U.S. Department of Energy’s NNSA

slide-8
SLIDE 8

Overview

Slide 8

Operated by Los Alamos National Security, LLC for the U.S. Department of Energy’s NNSA

slide-9
SLIDE 9

Results

tapir icc clang tapir-omp 2 4 6 8 10 12 Time (Seconds, lower is better)

Fibonacci Slide 9

Operated by Los Alamos National Security, LLC for the U.S. Department of Energy’s NNSA

slide-10
SLIDE 10

Results

tapir icc clang tapir-omp 1 2 3 4 5 6 7 Time (Seconds, lower is better)

FFT Slide 10

Operated by Los Alamos National Security, LLC for the U.S. Department of Energy’s NNSA

slide-11
SLIDE 11

Results

tapir icc clang tapir-omp 10 20 30 40 50 Time (Seconds, lower is better)

NQueens Slide 11

Operated by Los Alamos National Security, LLC for the U.S. Department of Energy’s NNSA

slide-12
SLIDE 12

The other 355 pages?

Slide 12

Operated by Los Alamos National Security, LLC for the U.S. Department of Energy’s NNSA

slide-13
SLIDE 13

Questions?

Slide 13

Operated by Los Alamos National Security, LLC for the U.S. Department of Energy’s NNSA

slide-14
SLIDE 14

Acknowledgements

This research was supported by the Exascale Computing Project (17-SC-20-SC), a joint project of the U.S. Department of Energys Office of Science and National Nuclear Security Administration, responsible for delivering a capable exascale ecosystem, including software, applications, and hardware technology, to support the nations exascale computing imperative.

Slide 14

Operated by Los Alamos National Security, LLC for the U.S. Department of Energy’s NNSA