power-performance modeling of collectives for exascale...

27
Power-Performance Modeling of Collectives for Exascale Systems with Heterogeneous Architectures Dhabaleswar K. (DK) Panda The Ohio State University E-mail: [email protected] http://www.cse.ohio-state.edu/~panda Presentation at MODSIM ‘14 by

Upload: others

Post on 02-Aug-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Power-Performance Modeling of Collectives for Exascale ...hpc.pnl.gov/modsim/2014/Presentations/Panda.pdf · •Exascale Roadmap*: – “Hybrid Programming is a practical way to

Power-Performance Modeling of Collectives for Exascale Systems with Heterogeneous Architectures

Dhabaleswar K. (DK) Panda The Ohio State University

E-mail: [email protected] http://www.cse.ohio-state.edu/~panda

Presentation at MODSIM ‘14

by

Page 2: Power-Performance Modeling of Collectives for Exascale ...hpc.pnl.gov/modsim/2014/Presentations/Panda.pdf · •Exascale Roadmap*: – “Hybrid Programming is a practical way to

• Overview of Emerging Systems • Challenges in Power-Performance Modeling • Proposed Research Directions • Answers to Specific Questions

Presentation Outline

2 Modsim '14

Page 3: Power-Performance Modeling of Collectives for Exascale ...hpc.pnl.gov/modsim/2014/Presentations/Panda.pdf · •Exascale Roadmap*: – “Hybrid Programming is a practical way to

Drivers of Modern HPC Cluster Architectures

• Multi-core processors are ubiquitous

• RDMA-Enabled Interconnects very popular in HPC clusters •

• Accelerators/Coprocessors becoming common in high-end systems

• Pushing the envelope for Exascale computing

Accelerators / Coprocessors high compute density, high performance/watt

>1 TFlop DP on a chip

High Performance Interconnects - InfiniBand <1usec latency, >100Gbps Bandwidth

Tianhe – 2 (1) Titan (2) Stampede (6) Tianhe – 1A (10)

3

Multi-core Processors

Modsim '14

Page 4: Power-Performance Modeling of Collectives for Exascale ...hpc.pnl.gov/modsim/2014/Presentations/Panda.pdf · •Exascale Roadmap*: – “Hybrid Programming is a practical way to

Use of Accelerators on TOP500 Systems (June 2014)

17.5% 17%

Performance share of accelerators in the Top500 systems

4 Modsim '14

Page 5: Power-Performance Modeling of Collectives for Exascale ...hpc.pnl.gov/modsim/2014/Presentations/Panda.pdf · •Exascale Roadmap*: – “Hybrid Programming is a practical way to

5

Parallel Programming Models Overview

P1 P2 P3

Shared Memory

P1 P2 P3

Memory Memory Memory

P1 P2 P3

Memory Memory Memory

Logical shared memory

Shared Memory Model

SHMEM, DSM Distributed Memory Model

MPI (Message Passing Interface)

Partitioned Global Address Space (PGAS)

Global Arrays, UPC, Chapel, X10, CAF, …

• Programming models provide abstract machine models

• Models can be mapped on different types of systems – Distributed Shared Memory (DSM), MPI within a node, etc.

– Logical shared memory across nodes (PGAS)

Modsim '14

Page 6: Power-Performance Modeling of Collectives for Exascale ...hpc.pnl.gov/modsim/2014/Presentations/Panda.pdf · •Exascale Roadmap*: – “Hybrid Programming is a practical way to

• MPI-3 introduced during Nov ‘12

• Major features – Non-blocking Collectives

• Overlapping computation with collectives

– Improved One-Sided (RMA) Model • Improvements from MPI-2 one-sided models

• Flexible communication and synchronization schemes

– MPI Tools Interface

• Specification is available from: http://www.mpi-forum.org/docs/mpi-3.0/mpi30-report.pdf

6

Major New Features in MPI-3

Modsim '14

Page 7: Power-Performance Modeling of Collectives for Exascale ...hpc.pnl.gov/modsim/2014/Presentations/Panda.pdf · •Exascale Roadmap*: – “Hybrid Programming is a practical way to

7

Partitioned Global Address Space (PGAS) Models

• Key features - Simple shared memory abstractions

- Light weight one-sided communication

- Easier to express irregular communication

• Different approaches to PGAS

- Languages • Unified Parallel C (UPC)

• Co-Array Fortran (CAF)

• X10

- Libraries • OpenSHMEM

• Global Arrays

• Chapel

Modsim '14

Page 8: Power-Performance Modeling of Collectives for Exascale ...hpc.pnl.gov/modsim/2014/Presentations/Panda.pdf · •Exascale Roadmap*: – “Hybrid Programming is a practical way to

Hybrid (MPI+PGAS) Programming

• Application sub-kernels can be re-written in MPI/PGAS based on communication characteristics

• Benefits: – Best of Distributed Computing Model

– Best of Shared Memory Computing Model

• Exascale Roadmap*: – “Hybrid Programming is a practical way to

program exascale systems”

* The International Exascale Software Roadmap, Dongarra, J., Beckman, P. et al., Volume 25, Number 1, 2011, International Journal of High Performance Computer Applications, ISSN 1094-3420

Kernel 1 MPI

Kernel 2 MPI

Kernel 3 MPI

Kernel N MPI

HPC Application

Kernel 2 PGAS

Kernel N PGAS

8 Modsim '14

Page 9: Power-Performance Modeling of Collectives for Exascale ...hpc.pnl.gov/modsim/2014/Presentations/Panda.pdf · •Exascale Roadmap*: – “Hybrid Programming is a practical way to

Designing Software Libraries for Multi-Petaflop and Exaflop Systems with MPI+X: Challenges

Programming Models MPI, PGAS (UPC, Global Arrays, OpenSHMEM),

CUDA, OpenACC, Cilk, Hadoop, MapReduce, etc.

Application Kernels/Applications

Networking Technologies (InfiniBand, 40/100GigE,

Aries, BlueGene)

Multi/Many-core Architectures

Point-to-point Communication (two-sided & one-sided)

Collective Communication

Synchronization & Locks

I/O & File Systems

Fault Tolerance

Communication Library or Runtime for Programming Models

9

Accelerators (NVIDIA and MIC)

Middleware Co-Design

Opportunities and

Challenges across Various

Layers

Power Performance

Reliability

Modsim '14

Page 10: Power-Performance Modeling of Collectives for Exascale ...hpc.pnl.gov/modsim/2014/Presentations/Panda.pdf · •Exascale Roadmap*: – “Hybrid Programming is a practical way to

• Overview of Emerging Systems • Challenges in Power-Performance Modeling • Proposed Research Directions • Answers to Specific Questions

Presentation Outline

10 Modsim '14

Page 11: Power-Performance Modeling of Collectives for Exascale ...hpc.pnl.gov/modsim/2014/Presentations/Panda.pdf · •Exascale Roadmap*: – “Hybrid Programming is a practical way to

Data Movement Paths on Intel Xeon Phi Clusters

CPU CPU QPI

MIC

PCIe

M

IC

MIC

CPU

MIC

IB

Node 0 Node 1 1. Intra-Socket 2. Inter-Socket 3. Inter-Node 4. Intra-MIC 5. Intra-Socket MIC-MIC 6. Inter-Socket MIC-MIC 7. Inter-Node MIC-MIC 8. Intra-Socket MIC-Host

10. Inter-Node MIC-Host 9. Inter-Socket MIC-Host

MPI Process

11

11. Inter-Node MIC-MIC with IB adapter on remote socket

and more . . .

• Critical for runtimes to optimize data movement, hiding the complexity • Significant trade-off in Power and Performance for each of the data path

• Connected as PCIe devices – Flexibility but Complexity

Modsim '14

Page 12: Power-Performance Modeling of Collectives for Exascale ...hpc.pnl.gov/modsim/2014/Presentations/Panda.pdf · •Exascale Roadmap*: – “Hybrid Programming is a practical way to

Communication Performance on MIC Clusters

12

IB Write to Xeon Phi (P2P Write)

IB Read from Xeon Phi (P2P Read)

CPU

Xeon Phi

PCIe

QPI

E5-2680 v2 E5-2670

5280 MB/s (83%)

IB FDR HCA

MT4099

6396 MB/s (100%)

962 MB/s (15%) 3421 MB/s (54%)

1075 MB/s (17%) 1179 MB/s (19%)

370 MB/s (6%) 247 MB/s (4%)

(SandyBridge) (IvyBridge)

• Different paths have different performance

• Asymmetric communication performance

Peak IB FDR Bandwidth: 6397 MB/s

Intra-socket

IB Write to Xeon Phi (P2P Write)

IB Read from Xeon Phi (P2P Read) Inter-socket

Modsim '14

Page 13: Power-Performance Modeling of Collectives for Exascale ...hpc.pnl.gov/modsim/2014/Presentations/Panda.pdf · •Exascale Roadmap*: – “Hybrid Programming is a practical way to

• High Performance open-source MPI Library for InfiniBand, 10Gig/iWARP, and RDMA over Converged Enhanced Ethernet (RoCE)

– MVAPICH (MPI-1), MVAPICH2 (MPI-2.2 and MPI-3.0), Available since 2002

– MVAPICH2-X (MPI + PGAS), Available since 2012

– Support for GPGPUs and MIC

– Used by more than 2,175 organizations in 72 countries

– More than 220,000 downloads from OSU site directly

– Empowering many TOP500 clusters • 7th ranked 519,640-core cluster (Stampede) at TACC

• 13th ranked 74,358-core cluster (Tsubame 2.5) at Tokyo Institute of Technology

• 23rd ranked 96,192-core cluster (Pleiades) at NASA

– Available with software stacks of many IB, HSE, and server vendors including Linux Distros (RedHat and SuSE)

– http://mvapich.cse.ohio-state.edu

• Partner in the U.S. NSF-TACC Stampede System

MVAPICH2/MVAPICH2-X Software

13 Modsim '14

Page 14: Power-Performance Modeling of Collectives for Exascale ...hpc.pnl.gov/modsim/2014/Presentations/Panda.pdf · •Exascale Roadmap*: – “Hybrid Programming is a practical way to

Energy-Performance Tradeoff of Collectives: 64-process Alltoall (Polling Vs Blocking)

14

• Blocking mode involves suspension => lesser processor energy • Will involve greater cache misses => greater DRAM energy usage • Latency is higher with blocking

0

10

20

30

40

50

60

70

Ener

gy (J

oule

s)

Message Size (Bytes)

pp0-pollpp0-blkdram-polldram-blk

0

50000

100000

150000

200000

250000

300000

Late

ncy

(us)

Message Size (Bytes)

lat-poll

lat-blk

A. Venkatesh, K. Kandalla and D. K. Panda, Evaluation of Energy Characteristics of MPI Communication Primitives with RAPL, Int'l Workshop on High Performance, Power-Aware Computing (HPPAC), held in conjunction with Int'l Parallel and Distributed Processing Symposium (IPDPS '13), May 2013.

Modsim '14

Page 15: Power-Performance Modeling of Collectives for Exascale ...hpc.pnl.gov/modsim/2014/Presentations/Panda.pdf · •Exascale Roadmap*: – “Hybrid Programming is a practical way to

Latency Vs Energy Scaling: Collectives: Allreduce

15

• Tot-E-#N is energy spent by the collective across nodes • 2x-3x growth in latency from 16 -> 64 • 7x-8x growth in Energy! • Can we model this power-performance tradeoff?

00.020.040.060.08

0.10.120.140.16

256 512 1k 2k 4k 8k 16k

Ener

gy (J

oule

s)

Message Size (Bytes)

tot-E-4

tot-E-16

tot-E-64

020406080

100120140160180

256 512 1k 2k 4k 8k 16k

Late

ncy

(us)

Message Size (Bytes)

lat-4

lat-16

lat-64

2-3x 7x

Modsim '14

Page 16: Power-Performance Modeling of Collectives for Exascale ...hpc.pnl.gov/modsim/2014/Presentations/Panda.pdf · •Exascale Roadmap*: – “Hybrid Programming is a practical way to

16

Performance

Power

Designing Collectives with Power-Performance Tradeoff

Current Non-Power-aware

Approaches

Current Power-aware Approaches

(DVFS)

Next-Generation Power-aware Approaches

Modsim '14

Page 17: Power-Performance Modeling of Collectives for Exascale ...hpc.pnl.gov/modsim/2014/Presentations/Panda.pdf · •Exascale Roadmap*: – “Hybrid Programming is a practical way to

17

Designing Power-Aware Collectives

Performance and Power Comparison : MPI_Alltoall with 64 processes on 8 nodes

K. Kandalla, E. P. Mancini, S. Sur and D. K. Panda, “Designing Power Aware Collective Communication Algorithms for Infiniband Clusters”, ICPP ‘10

CPMD Application Performance and Power Savings

5% 32%

Modsim '14

Page 18: Power-Performance Modeling of Collectives for Exascale ...hpc.pnl.gov/modsim/2014/Presentations/Panda.pdf · •Exascale Roadmap*: – “Hybrid Programming is a practical way to

• Current communication models (LogP, LogGP, PLogP, Hockney) do not take into account – Energy

– Diverse communication paths

– Communication paths involving heterogeneity

• Power-performance tradeoffs for new generation communication mechanisms are not understood – MPI-3 RMA operations

– Non-blocking collectives

– Adapters with network offload

18

Summary of Current Limitations

Modsim '14

Page 19: Power-Performance Modeling of Collectives for Exascale ...hpc.pnl.gov/modsim/2014/Presentations/Panda.pdf · •Exascale Roadmap*: – “Hybrid Programming is a practical way to

• Overview of Emerging Systems • Challenges in Power-Performance Modeling • Proposed Research Directions • Answers to Specific Questions

Presentation Outline

19 Modsim '14

Page 20: Power-Performance Modeling of Collectives for Exascale ...hpc.pnl.gov/modsim/2014/Presentations/Panda.pdf · •Exascale Roadmap*: – “Hybrid Programming is a practical way to

20

Framework for Designing Exascale Collectives with Power-Performance Modeling

Modsim '14

Page 21: Power-Performance Modeling of Collectives for Exascale ...hpc.pnl.gov/modsim/2014/Presentations/Panda.pdf · •Exascale Roadmap*: – “Hybrid Programming is a practical way to

New Point-to-point Communication Models for Emerging Architectures and Programming Models

21 Modsim '14

• Need to capture both power and performance • Heterogeneity of processors

– Powerful cores (high clock frequency, out-of-order processing and multiple functional units)

– Simplified cores (low clock frequency and in-order processing) • Capture behavior of different communication paths

– Over QPI or HT – Data movement in/out from accelerators

• Takes into account of – Concurrency in communication – Overlap of computation and communication

Page 22: Power-Performance Modeling of Collectives for Exascale ...hpc.pnl.gov/modsim/2014/Presentations/Panda.pdf · •Exascale Roadmap*: – “Hybrid Programming is a practical way to

New Point-to-point Communication Models (Cont’d)

22 Modsim '14

• Communication and synchronization primitives for emerging programming models – One-sided RMA model in MPI-3 – PGAS models – Communication under MPI+X model

• Takes into account of advances in networking – Blocking/Non-blocking – Onloading/Offloading

Page 23: Power-Performance Modeling of Collectives for Exascale ...hpc.pnl.gov/modsim/2014/Presentations/Panda.pdf · •Exascale Roadmap*: – “Hybrid Programming is a practical way to

(Power + Performance)-Aware Models for Collectives and Designing New Collective Algorithms

23 Modsim '14

• Uses point-to-point communication models • Explores advanced communication mechanisms and schemes

– MPI-3 RMA communication – Network interfaces with collective offload – Hierarchical architecture – Network topology

• Considers factors related to both power and performance – Power-state dependent performance levels – Time overheads of power-throttling – Effect of differential power-states of different processes involved in a

collective

Page 24: Power-Performance Modeling of Collectives for Exascale ...hpc.pnl.gov/modsim/2014/Presentations/Panda.pdf · •Exascale Roadmap*: – “Hybrid Programming is a practical way to

• Overview of Emerging Systems • Challenges in Power-Performance Modeling • Proposed Research Directions • Answers to Specific Questions

Presentation Outline

24 Modsim '14

Page 25: Power-Performance Modeling of Collectives for Exascale ...hpc.pnl.gov/modsim/2014/Presentations/Panda.pdf · •Exascale Roadmap*: – “Hybrid Programming is a practical way to

Answers to Specific Questions

25 Modsim '14

• What is the major contribution of your research? – Modeling the power and performance characteristics of collectives by

taking into account • Heterogeneity of architectures • Emerging MPI+X programming models

• What are the gaps you identify in the research coverage? – Addressing the following limitations of current models

• Not power/energy-cognizant • Do not address new architectures and programming models

• What is the bigger picture for your research area? – Understanding the implication of communication from both

performance/power angles at scale

Page 26: Power-Performance Modeling of Collectives for Exascale ...hpc.pnl.gov/modsim/2014/Presentations/Panda.pdf · •Exascale Roadmap*: – “Hybrid Programming is a practical way to

Answers to Specific Questions (Cont’d)

26 Modsim '14

• What major opportunities do you see for cross-pollination between your projects? – Modeling resource utilization and effects of contention on highly parallel

architectures – Modeling effects of software framework and programming paradigm on

power and performance – New low-overhead techniques to leverage power and performance

throttling • What would make it easier to use the results of other projects to

further your own research? – Better tools to identify the vulnerable design spots in communication

models • What would you like to most see addressed other than what they

are working on? – Negligible overhead in controlling power-state of cores on nodes – Accurate tools and techniques to predict dynamic network congestion

Page 27: Power-Performance Modeling of Collectives for Exascale ...hpc.pnl.gov/modsim/2014/Presentations/Panda.pdf · •Exascale Roadmap*: – “Hybrid Programming is a practical way to

Pointers

http://nowlab.cse.ohio-state.edu

[email protected] http://www.cse.ohio-state.edu/~panda

27

http://mvapich.cse.ohio-state.edu

Modsim '14