Data Staging and Asynchronous I/O in ADIOS Hasan Abbasi ORNL Jong - - PowerPoint PPT Presentation

data staging and asynchronous i o in adios
SMART_READER_LITE
LIVE PREVIEW

Data Staging and Asynchronous I/O in ADIOS Hasan Abbasi ORNL Jong - - PowerPoint PPT Presentation

Data Staging and Asynchronous I/O in ADIOS Hasan Abbasi ORNL Jong Choi ORNL Greg Eisenhauer Georgia Tech Scott Klasky ORNL Manish Parashar Rutgers Norbert Podhorszki ORNL Nagiza Samatova NCSU Karsten Schwan Georgia Tech Matthew


slide-1
SLIDE 1

ORNL is managed by UT-Battelle for the US Department of Energy

Data Staging and Asynchronous I/O in ADIOS

Hasan Abbasi ORNL Jong Choi ORNL Greg Eisenhauer Georgia Tech Scott Klasky ORNL Manish Parashar Rutgers Norbert Podhorszki ORNL Nagiza Samatova NCSU Karsten Schwan Georgia Tech Matthew Wolf Georgia Tech

slide-2
SLIDE 2

2 Presentation_name

Outline ¡

  • ADIOS ¡Overview ¡
  • Introduc3on ¡to ¡Staging ¡
  • Data ¡Management ¡in ¡I/O ¡Pipelines ¡
  • Staging ¡in ¡ADIOS ¡
  • Network ¡and ¡System ¡service ¡discussion ¡
slide-3
SLIDE 3

3 Presentation_name

ADIOS ¡

  • Abstracts ¡Data-­‑at-­‑Rest ¡to ¡Data-­‑in-­‑Mo3on ¡for ¡HPC ¡

– Provides ¡portable, ¡fast, ¡scalable, ¡easy-­‑to-­‑use, ¡metadata ¡rich ¡

  • utput ¡ ¡

– Dynamically ¡allows ¡users ¡to ¡change ¡the ¡method ¡during ¡an ¡ experiment/simula3on ¡

  • Provides ¡solu3ons ¡for ¡“90% ¡of ¡the ¡applica3ons” ¡
  • ADIOS ¡has ¡been ¡cited ¡almost ¡1,000 ¡3mes ¡

Interface)to)apps)for)descrip/on)of)data)(ADIOS,)etc.)) Buffering) Feedback) )Schedule) Mul/Bresolu/on) methods) Data)Compression) methods) Data)Indexing) (FastBit))methods) Data)Management)Services) Workflow))Engine) Run/me)engine) Data)movement) Provenance) Plugins)to)the)hybrid)staging)area)

Visualiza/on)Plugins) Analysis)Plugins)

Parallel)and)Distributed)File)System) IDX) HDF5) AdiosBbp) pnetcdf) “raw”)data) Image)data) Viz.)Client)

  • Astrophysics
  • Climate
  • Combustion
  • CFD
  • Environmental Science
  • Fusion
  • Geoscience
  • Materials Science
  • Medical: Pathology
  • Neutron Science
  • Nuclear Science
  • Quantum Turbulence
  • Relativity
  • Seismology
  • Sub-surface modeling
  • Weather

hNp://www.nccs.gov/user-­‑support/center-­‑projects/adios/ ¡

slide-4
SLIDE 4

4 Presentation_name

Improving ¡I/O ¡Methods ¡for ¡High ¡End ¡simula3ons ¡

  • Reduce ¡I/O ¡overhead, ¡reduce ¡network ¡data ¡

movement, ¡improve ¡wri3ng ¡and ¡reading ¡performance ¡ ¡

  • To ¡achieve ¡this ¡goal, ¡ADIOS ¡provides ¡many ¡methods ¡

– Posix ¡(1 ¡file ¡per ¡process, ¡independent ¡set ¡of ¡files) ¡ – Posix ¡(1 ¡file ¡per ¡process ¡+ ¡metadata; ¡read ¡as ¡one ¡dataset) ¡ – MPI-­‑Lustre ¡(MPI-­‑IO ¡wri3ng ¡to ¡1 ¡global ¡file) ¡ – Aggregate ¡ ¡(1 ¡file ¡per ¡OST) ¡+ ¡1 ¡metadata ¡file ¡ – BG ¡(1 ¡file ¡per ¡rack) ¡+ ¡1 ¡metadata ¡file ¡ – …. ¡

  • There’s ¡no ¡single ¡right ¡answer ¡for ¡all ¡users. ¡

– ADIOS ¡gives ¡the ¡user ¡flexibility ¡without ¡rewri3ng ¡code. ¡

slide-5
SLIDE 5

5 Presentation_name

Large ¡Writes ¡Per ¡Many ¡cores ¡

  • First ¡effort ¡shows ¡performance ¡goes ¡from ¡50 ¡GB/s ¡to ¡over ¡

100 ¡GB/s ¡

  • New ¡features ¡for ¡IBM ¡BG/Q ¡to ¡eliminate ¡the ¡serial ¡process ¡in ¡

ADIOS ¡for ¡the ¡metadata ¡crea3on ¡is ¡now ¡op3onal ¡

– Metadata ¡crea3on ¡is ¡serial ¡due ¡to ¡ the ¡problem ¡of ¡threadsafe ¡MPI ¡on ¡ most ¡systems ¡

  • Tes3ng ¡has ¡begun ¡to ¡use ¡staging ¡

to ¡write ¡data ¡

– Problem ¡is ¡size ¡of ¡the ¡staging ¡area ¡

  • Requires ¡over ¡10K ¡cores ¡for ¡staging… ¡
  • GPU ¡on ¡staging ¡is ¡useless ¡if ¡we ¡do ¡NOT ¡

do ¡other ¡processing ¡

slide-6
SLIDE 6

6 Presentation_name

Small Writes per many cores (Combustion)

  • Requires ¡high ¡performance ¡I/O ¡due ¡to ¡large ¡output ¡

(200 ¡GB/10 ¡minutes) ¡

  • Frequent ¡reading ¡of ¡large ¡datasets ¡on ¡a ¡small ¡number ¡
  • f ¡processors ¡for ¡analy3cs ¡
  • Individual ¡process ¡output ¡is ¡small, ¡leading ¡to ¡low ¡

u3liza3on ¡of ¡network ¡bandwidth ¡with ¡other ¡I/O ¡ solu3ons ¡

  • Reading ¡of ¡large ¡datasets ¡with ¡a ¡different ¡access ¡

paNern ¡than ¡they ¡were ¡wriNen ¡out ¡leads ¡to ¡

  • frequent ¡seeking ¡for ¡data ¡
  • very ¡low ¡read ¡bandwidth ¡
  • Analysis ¡codes ¡spend ¡90% ¡of ¡their ¡3me ¡reading ¡data ¡
  • Allowed ¡ADIOS ¡team ¡to ¡focus ¡on ¡small ¡but ¡frequent ¡
  • utput ¡data ¡
slide-7
SLIDE 7

7 Presentation_name

Spa3al ¡Temporal ¡Aggrega3on ¡

  • Temporal ¡aggrega3on ¡is ¡to ¡open ¡up ¡another ¡horizon ¡to ¡further ¡consolidate ¡data ¡
  • Data ¡of ¡mul3ple ¡3me ¡steps ¡are ¡merged ¡at ¡each ¡process ¡
  • Data ¡is ¡wriNen ¡out ¡only ¡at ¡the ¡last ¡3me ¡step ¡or ¡reaches ¡the ¡boundary ¡of ¡memory ¡

capacity ¡

  • Achieved ¡up ¡to ¡70x ¡speedup ¡for ¡read ¡performance, ¡and ¡11x ¡speedup ¡for ¡write ¡

performance ¡in ¡mission ¡cri3cal ¡climate ¡simula3on ¡GEOS-­‑5 ¡(NASA), ¡on ¡Jaguar ¡

Read performance of a 2D slice

  • f a 3D variable + time

GEOS-5 Results

  • Common read patterns

for GEOS-5 users are reduced from 10 – 0.1 seconds

  • Allows interactive data

exploration for mission critical visualizations

Temperature)tendency)from)moist)physics)

La4tude)

Date) 10/29/79) 10/30/79) 10/31/79) 90) 30) =30) =60) 0) 60)

t1 t2 t3

t Original( New(

A 2-D variable at 3 time steps are merged into a 3-D variable with time as new dimension

V1 V2 V3 … V1 V2 V3 … V1 V2 V3 …

T1 T2 T3 T1,2,3

V1 V2 V3 … Original( New(

Data ¡layout ¡

slide-8
SLIDE 8

8 Presentation_name

I/O ¡Variability ¡

20 40 60 80 100 Runs 50 100 150 200 250 300 Throughput (MB/sec)

  • Problem
  • Techniques that achieved

high performance I/O

  • Aggregation with write-behind strategy
  • Stripe alignment: to avoid contention
  • Are these techniques sufficient to get

the peak I/O performance?

Single Storage Target Performance Variations

20 40 60 80 100 Run (21:20PM to 1:20AM, 3/1/2013, no noise injected) 200 400 600 800 1000 I/O Time (sec) Static I/O Re-routing (TF=0.1)

50 100 150 200 250 Run (21:20PM to 23:30PM, 2/27/2013, no noise injected) 11 12 13 14 15 16 I/O Time (sec) Static I/O Re-routing (TF=0.1)

Titan Hopper

slide-9
SLIDE 9

9 Presentation_name

Introduc3on ¡to ¡Staging ¡

  • Initial development as a research effort to minimize I/O overhead
  • Draws from past work on threaded I/O
  • Exploits network hardware support for fast data transfer to remote memory

Hasan Abbasi, Matthew Wolf, Greg Eisenhauer, Scott Klasky, Karsten Schwan, Fang Zheng: DataStager: scalable data staging services for petascale applications. Cluster Computing 13(3): 277-290 (2010) Ciprian Docan, Manish Parashar, Scott Klasky: DataSpaces: an interaction and coordination framework for coupled simulation workflows. Cluster Computing 15(2): 163-181 (2012)

slide-10
SLIDE 10

10 Presentation_name

Data ¡Management ¡in ¡I/O ¡Pipelines ¡

  • Perform computation in the right

location

  • Support dynamic placement
  • Use data reduction techniques
  • Aggrega3on ¡and ¡chunking ¡to ¡improve ¡data ¡

access ¡

  • End-­‑to-­‑End ¡approach ¡to ¡data ¡management ¡

Space Filling Curve Reordering Optimized Chunk Size? Hierarchical Spatial Aggregation

Dynamic Subchunking

Yes

Offsetorg Offsetnew

Intra-chunk level Chunk level Storage Application Data chunks

Optimized Chunking Model

< >

slide-11
SLIDE 11

11 Presentation_name

Indexing ¡and ¡Compression ¡

  • Extreme ¡scale ¡data ¡

enhancement ¡and ¡reduc3on ¡

  • U3lize ¡in ¡transit ¡and ¡in ¡situ ¡

mechanisms ¡

  • Scien3fic ¡compression ¡

schemes ¡(ISABELA ¡and ¡ ISOBAR) ¡

  • In ¡situ ¡indexing ¡to ¡enable ¡

fast ¡query ¡and ¡data ¡access ¡ ¡

  • Deployed ¡as ¡services ¡in ¡the ¡

pipeline ¡

slide-12
SLIDE 12

12 Presentation_name

Predata: ¡I/O ¡Pipelines ¡

  • Use ¡the ¡staging ¡nodes ¡and ¡create ¡a ¡workflow ¡in ¡the ¡staging ¡nodes. ¡
  • Allows ¡us ¡to ¡explore ¡many ¡research ¡aspects. ¡
  • Improve ¡total ¡simula3on ¡3me ¡by ¡2.7% ¡ ¡
  • Allow ¡the ¡ability ¡to ¡generate ¡online ¡insights ¡into ¡the ¡260GB ¡data ¡being ¡output ¡from ¡

16,384 ¡compute ¡cores ¡in ¡40 ¡seconds. ¡ ¡

Sort Sort Bitmap Indexing Bitmap Indexing Histogram Histogram 2D Histogram 2D Histogram BP writer BP writer Particle array sorted array BP file Index file Plotter Plotter Plotter Plotter

slide-13
SLIDE 13

13 Presentation_name

In-­‑Memory ¡Data ¡Staging ¡with ¡DataSpaces ¡

Staging-­‑based ¡(ADIOS ¡DATASPACES ¡transport ¡method) ¡

  • Extract ¡data ¡from ¡running ¡simula3ons ¡into ¡the ¡memory ¡of ¡staging ¡servers ¡
  • Enables ¡more ¡loosely ¡coupled ¡data ¡interac3ons ¡
  • Reduced ¡resource ¡conten3on, ¡e.g., ¡on-­‑node ¡memory ¡ ¡
slide-14
SLIDE 14

14 Presentation_name

In-­‑Memory ¡Data ¡Staging ¡with ¡DIMES ¡

DIMES ¡(ADIOS ¡DIMES ¡transport ¡method) ¡

  • Extract ¡data ¡from ¡running ¡simula3ons ¡directly ¡into ¡another ¡applica3on’s ¡memory ¡

space ¡

  • Enable ¡more ¡3ghtly ¡coupled ¡data ¡interac3ons ¡
  • Reduced ¡network ¡data ¡movement ¡(as ¡compared ¡to ¡staging) ¡ ¡ ¡
slide-15
SLIDE 15

15 Presentation_name

Applica3on ¡Coupling ¡

Loose ¡coupling ¡of ¡XGC0 ¡and ¡ M3D-­‑OMP ¡and ¡ELITE ¡through ¡ ADIOS ¡using ¡DataSpaces ¡

ADIOS XGC1 BP File ADIOS XGCa Staging Services DataSpaces DIMES Embedded Schema to add semantics of data Plotter/Analysis Plotter/Analysis Chunk- based Operation Monitoring System

Tight coupling of XGC1 and XGCa in combination with a monitoring dashboard

slide-16
SLIDE 16

16 Presentation_name

Loosely ¡Coupled ¡in-­‑situ ¡Visualiza3on ¡

  • Visualiza3on ¡and ¡applica3on ¡are ¡de-­‑coupled ¡
  • Uses ¡ADIOS ¡on ¡Dataspaces ¡
  • Viz ¡opera3ons ¡and ¡rendering ¡performed ¡on ¡system ¡nodes ¡
  • XGC ¡SciDAC ¡simula3on ¡example ¡

Vis/Analysis

(EAVL)

ADIOS

HPC Application

ADIOS

Staging

(Data Spaces)

slide-17
SLIDE 17

17 Presentation_name

ICEE ¡Method ¡Enables ¡WAN ¡Staging ¡

  • Streaming ¡data ¡from ¡experimental ¡sources ¡
  • Transparent ¡abstrac3on ¡for ¡moving ¡data ¡over ¡LAN ¡or ¡WAN ¡
  • Integra3on ¡of ¡indexing/querying ¡to ¡minimize ¡long ¡distance ¡

data ¡movement ¡

  • Mul3ple ¡methods ¡for ¡moving ¡data ¡(ICEE, ¡DataSpaces, ¡Flexpath) ¡

Data ¡Generation

Compr ession

Data Trans form

FastBi t Index

ADIOS Data ¡Stream ADIOS Data ¡ Hub Analysis Analysis Analysis Memory-­‑to-­‑memory ¡data ¡delivery ¡(code ¡coupling) Transparent ¡workflow ¡execution WAN ¡Transportation

  • FlexPath/EVPath
  • DataSpaces
  • ICEE
slide-18
SLIDE 18

18 Presentation_name

Network ¡Services ¡

  • Managing ¡Conten3on ¡

– We ¡need ¡to ¡avoid ¡resource ¡conten3on ¡to ¡minimize ¡I/O ¡overhead ¡on ¡ applica3on ¡performance ¡

  • Priority ¡based ¡flow ¡control ¡

– Par33oning ¡of ¡streams ¡into ¡data ¡and ¡control ¡will ¡improve ¡scalability ¡

  • Mul3cast ¡for ¡RDMA ¡

– A ¡single ¡source ¡can ¡be ¡feeding ¡data ¡to ¡mul3ple ¡consumers ¡for ¡data ¡staging ¡

  • pera3ons ¡
  • Select/Callback ¡support ¡

– Simple ¡mechanism ¡to ¡check ¡availability ¡of ¡data, ¡par3cularly ¡useful ¡in ¡ combina3on ¡with ¡1-­‑sided ¡communica3on ¡

slide-19
SLIDE 19

19 Presentation_name

System ¡Services ¡

  • Fault ¡Tolerance ¡

– I/O ¡services ¡can ¡add ¡their ¡own ¡resiliency ¡but ¡need ¡appropriate ¡no3fica3on ¡ from ¡the ¡network ¡layer ¡to ¡ini3ate ¡recovery ¡

  • ScaNer-­‑Gather ¡

– More ¡consistent ¡support ¡for ¡scaNer-­‑gather ¡(iovecs) ¡across ¡plaqorms ¡

  • RDMA ¡to ¡NVRAM ¡ ¡

– Par3cularly ¡important ¡for ¡Summit ¡ ¡

  • Rendezvous ¡and ¡discovery ¡

– Iden3fy ¡I/O ¡services, ¡ini3ate ¡and ¡manage ¡connec3ons ¡ – Support ¡for ¡WANs ¡and ¡LANs ¡in ¡a ¡similar ¡API ¡

  • Feedback/progress ¡APIs ¡for ¡RDMA ¡opera3ons ¡

– Services ¡that ¡augment ¡the ¡data ¡stream ¡to ¡improve ¡performance ¡need ¡to ¡ keep ¡track ¡of ¡performance ¡