+ All Categories
Home > Documents > Architecture and Early Application Performance ......NERSC funding a PGI NRE effort to enable OpenMP...

Architecture and Early Application Performance ......NERSC funding a PGI NRE effort to enable OpenMP...

Date post: 24-Sep-2020
Category:
Upload: others
View: 0 times
Download: 0 times
Share this document with a friend
26
Perlmutter - A 2020 Pre-Exascale GPU-accelerated System for NERSC. Architecture and Early Application Performance Optimization Results Jack Deslippe Application Performance Lead NERSC
Transcript
Page 1: Architecture and Early Application Performance ......NERSC funding a PGI NRE effort to enable OpenMP GPU acceleration. Recommended model for OpenMP codes transitioning from Cori. NERSC

Perlmutter - A 2020 Pre-Exascale GPU-accelerated System for NERSC. Architecture and Early Application Performance Optimization Results

Jack Deslippe

Application Performance LeadNERSC

Page 2: Architecture and Early Application Performance ......NERSC funding a PGI NRE effort to enable OpenMP GPU acceleration. Recommended model for OpenMP codes transitioning from Cori. NERSC

NERSC is the mission High Performance Computing facility for the DOE SC

- 2 -

7,000 Users800 Projects700 Codes2000 NERSC citations per year

Simulations at scale

Data analysis support for DOE’s experimental and observational facilitiesPhoto Credit: CAMERA

Page 3: Architecture and Early Application Performance ......NERSC funding a PGI NRE effort to enable OpenMP GPU acceleration. Recommended model for OpenMP codes transitioning from Cori. NERSC

NERSC has a dual mission to advance science and the state-of-the-art in supercomputing

3

• We collaborate with computer companies years before a system’s delivery to deploy advanced systems with new capabilities at large scale

• We provide a highly customized software and programming environment for science applications

• We are tightly coupled with the workflows of DOE’s experimental and observational facilities – ingesting tens of terabytes of data each day

• Our staff provide advanced application and system performance expertise to users

Page 4: Architecture and Early Application Performance ......NERSC funding a PGI NRE effort to enable OpenMP GPU acceleration. Recommended model for OpenMP codes transitioning from Cori. NERSC

NERSC’s Users Demonstrate Groundbreaking Science Capability

Celeste: 1st Julia app to achieve 1 PF

Deep Learning at 15PF (SP) for Climate and HEP Galactos: Solved 3-pt correlation analysis for Cosmology @9.8PF

Largest Ever Defect Calculation from Many Body Perturbation Theory > 10PF

Largest Ever Quantum Circuit Simulation

Stellar Merger Simulations with Task Based Programming

Large Scale Particle in Cell Plasma Simulations

4

Page 5: Architecture and Early Application Performance ......NERSC funding a PGI NRE effort to enable OpenMP GPU acceleration. Recommended model for OpenMP codes transitioning from Cori. NERSC

• Winner of 2011 Nobel Prize in Physics for discovery of the accelerating expansion of the universe.

• Supernova Cosmology Project, lead by Perlmutter, was a pioneer in using NERSC supercomputers combine large scale simulations with experimental data analysis

• Login “saul.nersc.gov”

NERSC-9 will be named after Saul Perlmutter

5

Page 6: Architecture and Early Application Performance ......NERSC funding a PGI NRE effort to enable OpenMP GPU acceleration. Recommended model for OpenMP codes transitioning from Cori. NERSC

NERSC Systems Roadmap

NERSC-7: EdisonMulticore CPU

NERSC-8: Cori Manycore CPUNESAP Launched: transition applications to advanced architectures

20132016

2024

NERSC-9: CPU and GPU nodes Continued transition of applications and support for complex workflows

2020

NERSC-10:Exa system

2028

NERSC-11:BeyondMoore

Increasing need for energy-efficient architectures

Page 7: Architecture and Early Application Performance ......NERSC funding a PGI NRE effort to enable OpenMP GPU acceleration. Recommended model for OpenMP codes transitioning from Cori. NERSC

Perlmutter: A System Optimized for Science

● GPU-accelerated and CPU-only nodes meet the needs of large scale simulation and data analysis from experimental facilities

● Cray “Slingshot” - High-performance, scalable, low-latency Ethernet- compatible network

● Single-tier All-Flash Lustre based HPC file system, >6x Cori’s bandwidth

● Delivery in early FY21

Page 8: Architecture and Early Application Performance ......NERSC funding a PGI NRE effort to enable OpenMP GPU acceleration. Recommended model for OpenMP codes transitioning from Cori. NERSC

AMD “Milan” CPU● ~64 cores● “ZEN 3” cores - 7nm+ ● AVX2 SIMD (256 bit)

8 channels DDR memory

1 Slingshot connection

~ 1x Cori

CPU nodes

>=Rome specs

Page 9: Architecture and Early Application Performance ......NERSC funding a PGI NRE effort to enable OpenMP GPU acceleration. Recommended model for OpenMP codes transitioning from Cori. NERSC

4x NVIDIA “Volta-next” GPU● > 7 TF ● > 32 GiB, HBM-2● NVLINK1x AMD CPU4 Slingshot connections● 4x25 GB/sGPU direct

GPU nodes

Volta specs

Page 10: Architecture and Early Application Performance ......NERSC funding a PGI NRE effort to enable OpenMP GPU acceleration. Recommended model for OpenMP codes transitioning from Cori. NERSC

Perlmutter: A System Optimized for Science

● GPU-accelerated and CPU-only nodes meet the needs of large scale simulation and data analysis from experimental facilities

● Cray “Slingshot” - High-performance, scalable, low-latency Ethernet- compatible network

● Single-tier All-Flash Lustre based HPC file system, 6x Cori’s bandwidth

● Dedicated login and high memory nodes to support complex workflows

How do we optimize the size of each partition?

Page 11: Architecture and Early Application Performance ......NERSC funding a PGI NRE effort to enable OpenMP GPU acceleration. Recommended model for OpenMP codes transitioning from Cori. NERSC

GPU Readiness Among NERSC Codes (Aug’17 - Jul’18)

11

GPU Status & Description Fraction

Enabled: Most features are ported and performant

37%

Kernels: Ports of some kernels have been documented.

10%

Proxy: Kernels in related codes have been ported

20%

Unlikely: A GPU port would require major effort.

13%

Unknown: GPU readiness cannot be assessed at this time.

20%

Breakdown of Hours at NERSC

A number of applications in NERSC workload are GPU enabled already.

Page 12: Architecture and Early Application Performance ......NERSC funding a PGI NRE effort to enable OpenMP GPU acceleration. Recommended model for OpenMP codes transitioning from Cori. NERSC

NESAP (NERSC Exascale Science Apps Program)

12

NESAP is NERSC’s Application Readiness Program to meet the workload transition challenge posed on the previous slide.

Initiated with Cori; Continuing with Perlmuter.

Strategy: Partner with app teams and vendors to optimize participating apps. Share lessons learned with NERSC community via docs and training.

Resource Available to Teams:

• NERSC Staff development effort and expertise• Performance PostDocs• Access to Vendor Engineers• Hack-a-thons• Early Access to GPU Nodes on Cori and Perlmutter

Page 13: Architecture and Early Application Performance ......NERSC funding a PGI NRE effort to enable OpenMP GPU acceleration. Recommended model for OpenMP codes transitioning from Cori. NERSC

Selected Applications

13

Count of Tier 1 Projects by NESAP Category

Count of Tier 1 Projects by KPP Category

MD = Molecular Dynamics & N-BodyP&G = Particles and GridsES = Electronic StructureData = Experimental Data Analysis (Non Learning)

Page 14: Architecture and Early Application Performance ......NERSC funding a PGI NRE effort to enable OpenMP GPU acceleration. Recommended model for OpenMP codes transitioning from Cori. NERSC

Lessons We are Learning

14

● Big speedups are possible● Data, learning apps are first class citizens● Strong commitment needed from teams needed● Hack-a-thons are key events ● Early access to relevant hardware and software

environment important ○ Cori GPU nodes

Page 15: Architecture and Early Application Performance ......NERSC funding a PGI NRE effort to enable OpenMP GPU acceleration. Recommended model for OpenMP codes transitioning from Cori. NERSC

Early Application Speedups

15

Edison Node (Dual Socket Ivy-Bridge) vs Single V100 Speedup

Page 16: Architecture and Early Application Performance ......NERSC funding a PGI NRE effort to enable OpenMP GPU acceleration. Recommended model for OpenMP codes transitioning from Cori. NERSC

Example Early Progress (Tomopy)

16

Benchmark problem is a SIRT Tomographic reconstruction with 100 iterations. Each 2D slice was 2048

x 2048 pixels and the number of projection angles was 1501.

FOM = 1 / ( WallTime Per 2D Slice )

walltime 28252.003

Baseline 24 slice reconstruction time

(Edison)

walltime 278.872

GPU 24 slice reconstruction time

(4 V100s) Optimization by NESAP PostDOC Jonathan Madsen

Implementation of New GPU Algorithm

Page 17: Architecture and Early Application Performance ......NERSC funding a PGI NRE effort to enable OpenMP GPU acceleration. Recommended model for OpenMP codes transitioning from Cori. NERSC

Example Early Progress (BGW Epsilon)

17

The benchmark scientific problems chosen are three Si defect supercells of increasing size with 214,

510 and 998 atoms of a divacancy defect in Silicon.

FOM= 1 / ( WallTime )

Edison Baseline Values:

(Optimal MPI/OpenMP Mix)

GPU Numbers: Edison GPU Nodes Nodes Time Nodes Time 1280 6618.316 150 1482.258 2048 4662.821 180 1295.988 5184 2333.096

Port of Bottlenecks to CUDA Kernels and Math Libraries

Page 18: Architecture and Early Application Performance ......NERSC funding a PGI NRE effort to enable OpenMP GPU acceleration. Recommended model for OpenMP codes transitioning from Cori. NERSC

We will support and engage our user community where their existing apps are today:

CUDA: MILC, Chroma, HACC ...

CUDA FORTRAN: Quantum ESPRESSO, StarLord (AMREX)

OpenACC: VASP, E3SM, MPAS, GTC, XGC ...

Kokkos: LAMMPS, PELE, Chroma ...

Raja: SW4

Supporting Existing GPU Apps

18

Page 19: Architecture and Early Application Performance ......NERSC funding a PGI NRE effort to enable OpenMP GPU acceleration. Recommended model for OpenMP codes transitioning from Cori. NERSC

Engaging around Performance Portability

19

NERSC Now a member. NERSC funding a PGI NRE effort to enable OpenMP GPU acceleration. Recommended model for OpenMP codes transitioning from Cori.

NERSC Leading 2019 DOE COE Perf. Port. MeetingNERSC leading development of

performanceportability.org

NERSC Hosted 2016 C++ Summit and ISO C++ meeting on HPC.

Page 20: Architecture and Early Application Performance ......NERSC funding a PGI NRE effort to enable OpenMP GPU acceleration. Recommended model for OpenMP codes transitioning from Cori. NERSC

OpenMP NRE – Status & Future PlansItems completed

● Agreed on the subset of OpenMP target offload features to be included in the PGI compiler

● Created an OpenMP test suite containing micro-benchmarks, mini-apps, and the ECP SOLLVE V&V suite to evaluate correctness and performance

● Selected 5 NESAP application teams to partner with NVIDIA/PGI to add OpenMP target offload directives to the applications

Next Items

● Evaluate upcoming compiler releases

Page 21: Architecture and Early Application Performance ......NERSC funding a PGI NRE effort to enable OpenMP GPU acceleration. Recommended model for OpenMP codes transitioning from Cori. NERSC

Optimization Strategy: Roofline on GPUs

21

Users Want to Know:- What part of my code should I move to GPU?- How do you know what HW features to target: HBM, Latency Hiding, Shared Mem, Packed Warps...- How do you know how your code performs in an absolute sense and when to stop?

Progress Towards Roofline on GPUs:

Worked with NVIDIA to ensure NVProf/NSight can collect all required metrics including data motion from multiple levels: L1/Shared, L2, DRAM, Host DRAM etc.

Hoping to automate roofline presentation

Charlene Yang Leading

Page 22: Architecture and Early Application Performance ......NERSC funding a PGI NRE effort to enable OpenMP GPU acceleration. Recommended model for OpenMP codes transitioning from Cori. NERSC

Perlmutter: A System Optimized for Science

● Cray Shasta System providing 3-4x capability of Cori system● First NERSC system designed to meet needs of both large scale simulation

and data analysis from experimental facilities○ Includes both NVIDIA GPU-accelerated and AMD CPU-only nodes ○ Cray Slingshot high-performance network will support Terabit rate connections to system○ Optimized data software stack enabling analytics and ML at scale○ All-Flash filesystem for I/O acceleration

● Robust readiness program for simulation, data and learning applications and complex workflows

● Delivery in early FY 2021

Page 23: Architecture and Early Application Performance ......NERSC funding a PGI NRE effort to enable OpenMP GPU acceleration. Recommended model for OpenMP codes transitioning from Cori. NERSC

Thank you !

We are hiring - https://jobs.lbl.gov/

Page 24: Architecture and Early Application Performance ......NERSC funding a PGI NRE effort to enable OpenMP GPU acceleration. Recommended model for OpenMP codes transitioning from Cori. NERSC

NESAP For Data

24

PI Name Institution Application name Office

Maria Elena Monzani SLAC NextGen Software Libraries for LZ HEP

Kjiersten Fagnan JGI JGI-NERSC-KBase FICUS Project BER

Kathy Yelick LBNL Exabiome BER

Stephen Bailey LBNL DESI HEP

Julian Borrill LBNL TOAST HEP

Doga Gursoy ANL Tomopy BES

Amedeo Perazzo SLAC ExaFEL BES

Paolo Calafiura LBNL Atlas HEP

Dirk Hufnagel LBNL CMS HEP

Page 25: Architecture and Early Application Performance ......NERSC funding a PGI NRE effort to enable OpenMP GPU acceleration. Recommended model for OpenMP codes transitioning from Cori. NERSC

NESAP For Learning

25

PI Name Institution Application name OfficeChristine Sweeney LANL ExaLearn Light Source Application BESMarc Day LBNL FlowGAN ASCR

Shinjae Yoo BNLExtreme Scale Spatio-Temporal Learning (LSTNet) ASCR

Benjamin Nachman and Jean-Roch Vlimant Caltech

Accelerating High Energy Physics Simulation with Machine Learning HEP

Zachary Ulissi CMUDeep Learning Thermochemistry for Catalyst Composition Discovery/Optimization BES

Page 26: Architecture and Early Application Performance ......NERSC funding a PGI NRE effort to enable OpenMP GPU acceleration. Recommended model for OpenMP codes transitioning from Cori. NERSC

NESAP for Simulation

26

PI Name Institution Application name OfficeJosh Meyers LLNL ImSim HEP

Carleton DeTar, Balint Joo Utah; JLAB USQCD (MILC, DWF, chroma, etc) HEP;NP

Noel Keen, Mark Taylor SNL; LBNL E3SM BER

David Green ORNL ASGarD (Adaptive Sparse Grid Discretization) FES;ASCR

Mauro Del Ben LBNL BerkeleyGW BES

Pieter Maris Iowa State Many-Fermions Dynamics for nuclear physics (MFDn) NP

Hubertus van Dam BNL NWChemEx BER;BES

David Trebotich LBNL Chombo-Crunch BES

Marco Govoni ANL WEST BES

Annabella Selloni, Robert DiStasio and Roberto Car Princeton; Cornell Quantum ESPRESSO BES

Emad Tajkhorshid UIUC NAMD BER;BES

CS Chang PPL WDMAPP FES

Danny Perez LANL LAMMPS BES;BER;FES

Ann Almgren / Jean-Luc Vay LBNL AMReX / WarpX HEP


Recommended