benchmarking the performance of scientific applications
play

Benchmarking the Performance of Scientific Applications with - PowerPoint PPT Presentation

Benchmarking the Performance of Scientific Applications with Irregular I/O at the Extreme Scale Stephen Herbein , University of Delaware Sco4 Klasky, Oak Ridge Na<onal Laboratory Michela


  1. Benchmarking the Performance of Scientific Applications with 
 Irregular I/O at the Extreme Scale Stephen ¡Herbein , ¡University ¡of ¡Delaware ¡ Sco4 ¡Klasky, ¡Oak ¡Ridge ¡Na<onal ¡Laboratory ¡ Michela ¡Taufer, ¡University ¡of ¡Delaware ¡ ¡

  2. Mo<va<on ¡ Let’s ¡consider ¡an ¡applica<on ¡with ¡ QMCPack time – execution vs. I/O on Titan irregular ¡I/O ¡such ¡as ¡QMCPack: ¡ ¡ ¡ ¡ ¡512 ¡ ¡ ¡ ¡ ¡ ¡ ¡1K ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡2K ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡4K ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡8K ¡ ¡ Nodes ¡ n cores=8192 n cores=16384 n cores=32768 n cores=65536 n cores=131072 • I/O ¡overhead ¡can ¡take ¡up ¡to ¡ 100% Execution Time 30% ¡regardless ¡of ¡I/O ¡library ¡ 90% I/O Time 80% • Full ¡scale ¡overhead ¡is ¡ 70% projected ¡to ¡be ¡50% ¡or ¡higher ¡ 60% Time (%) 50% What ¡are ¡the ¡factors ¡impac<ng ¡ 40% the ¡I/O ¡performance? ¡ 30% ¡ 20% 10% Could ¡irregular ¡I/O ¡be ¡causing ¡ 0% ADIOS AGGR 2to1 ADIOS AGGR 4to1 ADIOS AGGR 8to1 ADIOS AGGR 2to1 ADIOS AGGR 4to1 ADIOS AGGR 8to1 ADIOS AGGR 2to1 ADIOS AGGR 4to1 ADIOS AGGR 8to1 ADIOS AGGR 2to1 ADIOS AGGR 4to1 ADIOS AGGR 8to1 ADIOS AGGR 2to1 ADIOS AGGR 4to1 ADIOS AGGR 8to1 the ¡increasing ¡I/O ¡overhead? ¡ H H H H H D D D D D F F F F F 5 5 5 5 5 S. ¡Herbein, ¡et ¡al. ¡Performance ¡Impact ¡of ¡I/O ¡on ¡QMCPack ¡ 1 Simula<ons ¡at ¡the ¡Petascale ¡and ¡Beyond. ¡CSE ¡2013. ¡

  3. Outline ¡ • QMCPack ¡and ¡ADIOS ¡ – Overview ¡of ¡the ¡codes ¡ • I/O ¡kernels ¡ – From ¡real ¡to ¡synthe<c ¡ • ADIOS ¡phases ¡ – In-­‑depth ¡overview ¡of ¡the ¡I/O ¡library ¡and ¡phases ¡ • Understanding ¡I/O ¡impact ¡ – Does ¡the ¡irregular ¡I/O ¡ indeed ¡impact ¡performance? ¡ • Conclusion ¡and ¡future ¡work ¡ 2

  4. Outline ¡ • QMCPack ¡and ¡ADIOS ¡ – Overview ¡of ¡the ¡codes ¡ • I/O ¡kernels ¡ – From ¡real ¡to ¡synthe<c ¡ • ADIOS ¡phases ¡ – In-­‑depth ¡overview ¡of ¡the ¡I/O ¡library ¡and ¡phases ¡ • Understanding ¡I/O ¡impact ¡ – Does ¡the ¡irregular ¡I/O ¡ indeed ¡impact ¡performance? ¡ • Conclusion ¡and ¡future ¡work ¡ 3

  5. QMCPack ¡ • QMCPack ¡is ¡a ¡Quantum ¡Monte ¡ w0 ¡ Carlo ¡applica<on ¡ p0 ¡ w1 ¡ • Use ¡loosely ¡coupled ¡algorithm: ¡ ¡ w2 ¡ § Each ¡process ¡runs ¡ n ¡independent ¡ walkers ¡ ¡ w0 ¡ § Walkers ¡are ¡generated ¡randomly ¡ p1 ¡ w1 ¡ and ¡evolve ¡over ¡a ¡series ¡of ¡steps ¡ towards ¡a ¡higher ¡energy ¡level ¡ step ¡ step ¡ step ¡ step ¡ § Walker ¡evolu<on ¡results ¡in ¡a ¡ unbalanced ¡load ¡across ¡nodes ¡ block ¡ block ¡ Write in Write in ¡ output output In ¡theory, ¡QMCPack ¡is ¡the ¡ Kim, et al. Hybrid algorithms in quantum Monte perfect ¡exascale ¡applica<on ¡ Carlo. J. of Physics: Conference Series, 2012. 4

  6. Scien<fic ¡Data: ¡From ¡Single ¡Sta<s<cs ¡To ¡Traces ¡ New ¡QMCPack ¡– ¡par9cle ¡traces ¡ Old ¡QMCPack ¡– ¡single ¡sta9s9cs ¡ ¡ Process ¡1 ¡ Process ¡2 ¡ Process ¡3 ¡ Process ¡1 ¡ Process ¡2 ¡ Process ¡3 ¡ Walker ¡1 ¡ Walker ¡2 ¡ Walker ¡3 ¡ Walker ¡1 ¡ Walker ¡2 ¡ Walker ¡3 ¡ Walker ¡1 ¡ Walker ¡2 ¡ Walker ¡3 ¡ Walker ¡1 ¡ Walker ¡1 ¡ Walker ¡1 ¡ Walker ¡2 ¡ Walker ¡3 ¡ Walker ¡2 ¡ Walker ¡3 ¡ Walker ¡2 ¡ Walker ¡3 ¡ avg ¡ avg ¡ avg ¡ I/O ¡Method ¡ avg ¡ 5

  7. ADIOS ADIOS ¡ components and supported methods • Includes ¡suite ¡of ¡simple, ¡easy-­‑to-­‑ use ¡APIs ¡ ¡and ¡metadata ¡stored ¡in ¡ external ¡XML ¡file ¡ QMCPack • Allow ¡flexible ¡selec<on ¡of ¡most ¡ effec<ve ¡I/O ¡method ¡ – Different ¡I/O ¡transport ¡methods ¡ – Different ¡supercomputers ¡ – Li4le ¡code ¡modifica<on ¡ • Provide ¡both ¡high ¡performance, ¡ reliability, ¡and ¡usability ¡ Lofstead ¡et ¡al. ¡ADIOS: ¡Adaptable, ¡Metadata ¡Rich ¡I/O ¡ Methods ¡for ¡Portable ¡High ¡Performance ¡I/O. ¡PDSW ¡2008 ¡ 6

  8. I/O ¡Methods ¡ HDF ¡ ADIOS-­‑POSIX ¡ ADIOS-­‑AGGR ¡ Process Group In POSIX each writer creates a Each process group is a collection of file on the file system. writers, one of which is the aggregator 7

  9. QMCPack ¡I/O ¡Performance ¡ Nodes ¡ ¡ ¡ ¡ ¡ ¡512 ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡1K ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡2K ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡4K ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡8K ¡ ¡ n cores=8192 n cores=16384 n cores=32768 n cores=65536 n cores=131072 100% Execution Time 90% I/O Time 80% 70% 60% Time (%) 50% 40% 30% 20% 10% 0% ADIOS AGGR 2to1 ADIOS AGGR 4to1 ADIOS AGGR 8to1 ADIOS AGGR 2to1 ADIOS AGGR 4to1 ADIOS AGGR 8to1 ADIOS AGGR 2to1 ADIOS AGGR 4to1 ADIOS AGGR 8to1 ADIOS AGGR 2to1 ADIOS AGGR 4to1 ADIOS AGGR 8to1 ADIOS AGGR 2to1 ADIOS AGGR 4to1 ADIOS AGGR 8to1 HDF5 HDF5 HDF5 HDF5 HDF5 8

  10. Are ¡we ¡at ¡the ¡Peak ¡I/O ¡Performance? ¡ • Max ¡I/O ¡bandwidth ¡achieved ¡in ¡QMCPack ¡runs ¡ ¡16 ¡GB/s ¡= ¡29% ¡I/O ¡Overhead ¡ • Theore<cal ¡peak ¡of ¡ORNL’s ¡filesystem ¡at ¡the ¡<me ¡ ¡80 ¡GB/s ¡= ¡7.5% ¡I/O ¡Overhead ¡ 9

  11. Irregular ¡I/O ¡Pa4ern ¡= ¡Poor ¡Performance? ¡ ¡ What ¡is ¡the ¡key ¡factor ¡affec<ng ¡the ¡performance ¡of ¡QMCPack? ¡ ¡ • We ¡hypothesized ¡that ¡the ¡irregular ¡I/O ¡pa4ern ¡of ¡QMCPack ¡ was ¡causing ¡I/O ¡imbalance ¡which ¡in ¡turn ¡was ¡causing ¡a ¡ slowdown ¡ • To ¡test ¡this ¡hypothesis, ¡we ¡sta<s<cally ¡modeled ¡the ¡I/O ¡ pa4ern ¡of ¡QMCPack ¡and ¡other ¡scien<fic ¡applica<ons ¡ • We ¡benchmarked ¡and ¡profiled ¡I/O ¡kernels ¡generated ¡from ¡ these ¡models ¡ 10

  12. Outline ¡ • QMCPack ¡and ¡ADIOS ¡ – Overview ¡of ¡the ¡codes ¡ • I/O ¡kernels ¡ – From ¡real ¡to ¡synthe<c ¡ • ADIOS ¡phases ¡ – In-­‑depth ¡overview ¡of ¡the ¡I/O ¡library ¡and ¡phases ¡ • Understanding ¡I/O ¡impact ¡ – Does ¡the ¡irregular ¡I/O ¡ indeed ¡impact ¡performance? ¡ • Conclusion ¡and ¡future ¡work ¡ 11

  13. I/O ¡Kernels ¡ • I/O ¡kernels ¡used ¡to ¡mimic ¡I/O ¡of ¡real ¡applica<ons ¡ – Include ¡a ¡broader ¡range ¡of ¡I/O ¡pa4erns ¡ • Advantages ¡of ¡I/O ¡kernels ¡ – Faster ¡to ¡run ¡and ¡profile ¡ – Easier ¡to ¡understand ¡ – Safer ¡to ¡distribute ¡ • State ¡of ¡the ¡prac<ce ¡ – Manual ¡extract ¡of ¡I/O ¡rou<nes ¡from ¡large ¡applica<ons ¡ – Automa<c ¡genera<on ¡from ¡I/O ¡pa4erns ¡ ¡ 12

  14. I/O ¡Kernels ¡ • I/O ¡kernels ¡used ¡to ¡mimic ¡I/O ¡of ¡real ¡applica<ons ¡ – Include ¡a ¡broader ¡range ¡of ¡I/O ¡pa4erns ¡ • Advantages ¡of ¡I/O ¡kernels ¡ – Faster ¡to ¡run ¡and ¡profile ¡ – Easier ¡to ¡understand ¡ – Safer ¡to ¡distribute ¡ • State ¡of ¡the ¡prac<ce ¡ – Manual ¡extract ¡of ¡I/O ¡rou<nes ¡from ¡large ¡applica<ons ¡ – Automa9c ¡genera9on ¡from ¡I/O ¡paCerns ¡ ¡ 13

  15. Flavors ¡of ¡Real ¡I/O ¡Pa4erns ¡ QMCPack 256 processes (2 per node) ENZO 256 processes (2 per node) 45 70000 40 60000 35 B B B B B B B B B B B B B B B 50000 Number of walkers Data size (KBytes) 30 40000 25 B B B B B B B B B B B B B B B 20 30000 15 20000 10 10000 5 0 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Number of write steps Number of write steps Profiles ¡of ¡the ¡number ¡of ¡walkers ¡per ¡ Profiles ¡of ¡the ¡data ¡wri4en ¡per ¡process ¡ process ¡for ¡15 ¡steps ¡of ¡a ¡QMCPack ¡ for ¡15 ¡steps ¡of ¡an ¡ENZO ¡simula<on ¡ simula<on ¡studying ¡a ¡4x4x2 ¡graphite ¡on ¡ studying ¡the ¡NFW ¡Cool-­‑Core ¡Cluster ¡test ¡ 256 ¡nodes ¡on ¡Titan ¡ on ¡256 ¡nodes ¡of ¡Titan ¡ 14

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend