Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
uMMAP-IO: User-level Memory-mapped I/O for HPC
KTH, School of Electrical Engineering and Computer Science (EECS), Computer Science, Computational Science and Technology (CST).
National Center for Atmospheric Research, Boulder, CO, United States..
Atos, 1 Rue de Provence, 38130 Echirolles, France.
Atos, 1 Rue de Provence, 38130 Echirolles, France.
Show others and affiliations
2019 (English)In: Proceedings of the 26th IEEE International Conference on High-Performance Computing, Data, and Analytics (HiPC'19),, Institute of Electrical and Electronics Engineers (IEEE), 2019Conference paper, Published paper (Refereed)
Abstract [en]

The integration of local storage technologies alongside traditional parallel file systems on HPC clusters, is expected to rise the programming complexity on scientific applications aiming to take advantage of the increased-level of heterogeneity. In this work, we present uMMAP-IO, a user-level memory-mapped I/O implementation that simplifies data management on multi-tier storage subsystems. Compared to the memory-mapped I/O mechanism of the OS, our approach features per-allocation configurable settings (e.g., segment size) and transparently enables access to a diverse range of memory and storage technologies, such as the burst buffer I/O accelerators. Preliminary results indicate that uMMAP-IO provides at least 5-10x better performance on representative workloads in comparison with the standard memory-mapped I/O of the OS, and approximately 20-50% degradation on average compared to using conventional memory allocations without storage support up to 8192 processes.

Place, publisher, year, edition, pages
Institute of Electrical and Electronics Engineers (IEEE), 2019.
National Category
Computer Engineering
Identifiers
URN: urn:nbn:se:kth:diva-263194OAI: oai:DiVA.org:kth-263194DiVA, id: diva2:1367245
Conference
26th IEEE International Conference on High-Performance Computing, Data, and Analytics (HiPC'19), 17-20 December 2019, Hyderabad, India
Note

QC 20191111

Paper accepted for publication, but not published yet.

eCF Paper Id: 1570876046477

Available from: 2019-11-01 Created: 2019-11-01 Last updated: 2019-11-11Bibliographically approved
In thesis
1. High-Performance I/O Programming Models for Exascale Computing
Open this publication in new window or tab >>High-Performance I/O Programming Models for Exascale Computing
2019 (English)Doctoral thesis, comprehensive summary (Other academic)
Abstract [en]

The success of the exascale supercomputer is largely dependent on novel breakthroughs that overcome the increasing demands for high-performance I/O on HPC. Scientists are aggressively taking advantage of the available compute power of petascale supercomputers to run larger scale and higher-fidelity simulations. At the same time, data-intensive workloads have recently become dominant as well. Such use-cases inherently pose additional stress into the I/O subsystem, mostly due to the elevated number of I/O transactions.

As a consequence, three critical challenges arise that are of paramount importance at exascale. First, while the concurrency of next-generation supercomputers is expected to increase up to 1000x, the bandwidth and access latency of the I/O subsystem is projected to remain roughly constant in comparison. Storage is, therefore, on the verge of becoming a serious bottleneck. Second, despite upcoming supercomputers expected to integrate emerging non-volatile memory technologies to compensate for some of these limitations, existing programming models and interfaces (e.g., MPI-IO) might not provide any clear technical advantage when targeting distributed intra-node storage, let alone byte-addressable persistent memories. And third, even though compute nodes becoming heterogeneous can provide benefits in terms of performance and thermal dissipation, this technological transformation implicitly increases the programming complexity. Hence, making it difficult for scientific applications to take advantage of these developments.

In this thesis, we explore how programming models and interfaces must evolve to address the aforementioned challenges. We present MPI storage windows, a novel concept that proposes utilizing the MPI one-sided communication model and MPI windows as a unified interface to program memory and storage. We then demonstrate how MPI one-sided can provide benefits on data analytics frameworks following a decoupled strategy, while integrating seamless fault-tolerance and out-of-core execution. Furthermore, we introduce persistent coarrays to enable transparent resiliency in Coarray Fortran, supporting the "failed images" feature recently introduced into the standard. Finally, we propose a global memory abstraction layer, inspired by the memory-mapped I/O mechanism of the OS, to expose different storage technologies using conventional memory operations.

The outcomes from these contributions are expected to have a considerable impact in a wide-variety of scientific applications on HPC, both in current and next-generation supercomputers.

Abstract [sv]

Framgången för superdatorer på exaskala kommer till stor del bero på nya genombrott som tillmötesgår ökande krav på högpresterande I/O inom högprestandaberäkningar. Forskare utnyttjar idag tillgänglig datorkraft hos superdatorer på petaskala för att köra större simuleringar med högre fidelitet. Samtidigt har dataintensiva tillämpningar blivit vanliga. Dessa skapar ytterligare påfrestningar på I/O subsystemet, framförallt genom det större antalet I/O transaktioner. 

Följdaktligen uppstår flera kritiska utmaningar som är av största vikt vid beräkningar på exaskala. Medan samtidigheten hos nästa generationens superdatorer förväntas öka med uppemot tre storleksordningar så beräknas bandvidden och accesslatensen hos I/O subsystemet förbli relativt oförändrad. Lagring står därför på gränsen till att bli en allvarlig flaskhals. Kommande superdatorer förväntas innehålla nya icke-flyktiga minnesteknologier för att kompensera för dessa begränsningar, men existerande programmeringsmodeller och gränssnitt (t.ex. MPI-IO) kommer eventuellt inte att ge några tydliga tekniska fördelar när de tillämpas på distribuerad intra-nod lagring, särskilt inte för byte-addresserbara persistenta minnen. Även om ökande heterogenitet hos beräkningsnoder kommer kunna ge fördelar med avseende på prestanda och termisk dissipation så kommer denna teknologiska transformation att medföra en ökning av programmeringskomplexitet, vilket kommer att försvåra för vetenskapliga tillämpningar att dra nytta av utvecklingen.

I denna avhandling utforskas hur programmeringsmodeller och gränssnitt behöver vidareutvecklas för att kringgå de ovannämnda begränsningarna. MPI lagringsfönster kommer presenteras, vilket är ett nytt koncept som går ut på att använda den ensidiga MPI kommunikationsmodellen tillsammans med MPI fönster som ett enhetligt gränssnitt till programminne och lagring. Därefter demonstreras hur ensidig MPI kommunikation kan vara till gagn för dataanalyssystem genom en frikopplad strategi, samtidigt som den integrerar kontinuerlig feltolerans och exekvering utanför kärnan. Vidare introduceras persistenta coarrays för att möjliggöra transparant resiliens i Coarray Fortran, som stödjer “failed images” funktionen som nyligen införts i standarden. Slutligen föreslås ett globalt minnesabstraktionslager, som med inspiration av minnes-kartlagda I/O mekanismen hos operativsystemet exponerar olika lagringsteknologier med hjälp av konventionella minnesoperationer.

Resultaten från dessa bidrag förväntas ha betydande påverkan för högprestandaberäkningar inom flera vetenskapliga tillämpningsområden, både för existerande och nästa generationens superdatorer.

Place, publisher, year, edition, pages
KTH Royal Institute of Technology, 2019. p. 135
Series
TRITA-EECS-AVL ; 2019:77
National Category
Computer Engineering
Identifiers
urn:nbn:se:kth:diva-263196 (URN)978-91-7873-344-6 (ISBN)
Public defence
2019-11-29, B1, Brinellvägen 23, Bergs, våningsplan 1, KTH Campus, Stockholm, 10:00 (English)
Opponent
Supervisors
Note

QC 20191105

Available from: 2019-11-05 Created: 2019-11-01 Last updated: 2019-11-05Bibliographically approved

Open Access in DiVA

No full text in DiVA

Search in DiVA

By author/editor
Rivas-Gomez, SergioMarkidis, Stefano
By organisation
Computational Science and Technology (CST)
Computer Engineering

Search outside of DiVA

GoogleGoogle Scholar

urn-nbn

Altmetric score

urn-nbn
Total: 139 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf