A virtual memory manager optimized for node-level cooperative multi-tasking in memory constrained systems

Jeremy Iverson, George Karypis

Research output: Contribution to journalArticlepeer-review

Abstract

There is a growing need to perform large computations on small systems, as access to large systems is not widely available and cannot keep up with the size of the data that needs to be processed. Recently, a runtime system for programs using a library that implements the Message Passing Interface (MPI), called Big Data MPI (BDMPI), that allows MPI programs whose aggregate amount of memory exceeds the physical amount of memory to be executed efficiently by utilizing node-level cooperative multi-tasking. In this paper we present a virtual memory subsystem which we implemented as part of the BDMPI runtime. Our new virtual memory subsystem, which we call SBMA takes advantage of BDMPI’s node-level cooperative multi-tasking in order to intelligently determine the parts of the virtual address space that need to be loaded to and unloaded from the main memory. Benchmarking using a synthetic application shows that for the use cases relevant to BDMPI, the overhead incurred by the memory protection constructs necessary for the BDMPI-SBMA system is amortized such that it performs as fast as explicit data movement by the application developer. Furthermore, testing SBMA with five different classes of applications showed that with no modification to the original MPI program, speedups from 2×–12× over a standard BDMPI implementation can be achieved for the included applications.

Original languageEnglish (US)
Pages (from-to)744-759
Number of pages16
JournalInternational Journal of High Performance Computing Applications
Volume32
Issue number5
DOIs
StatePublished - Sep 1 2018

Bibliographical note

Funding Information:
TheFundinauthor(s)g declared no potential conflicts of interest with respect to the research, authorship, and/or publica-104tion801of8,thisCNSarticle.-1162405, IIS-1247632, IIP-1414153, IIS- 1447788), Army Research Office (W911NF-14-1-0316), Intel SofFundingtware and Services Group, and the Digital Technology Center at the University of Minnesota. Access to research and The author(s) disclosed receipt of the following financial computing facilities was provided by the Digital Technology support for the research, authorship, and/or publication Center and the Minnesota Supercomputing Institute. of this article: This work was supported in part by NSF (IIS-0905220, OCI-1048018, CNS-1162405, IIS-1247632, IIP-1414153, IIS-1447788), Army Research BOoffldicieP,(RWo9sa11MN,FS-a1n4t-i1ni-0M31, 6et),alI.n(t2e0l11S)oLftawyearreed laanbdel Speror-- vicpeasgGatrioonu:p,AanmdultthireesoDluigtiiotanl cToeocrhdninoaltoeg-fyreeCeonrdteerrinagt tfhoer University of Minnesota. Access to research and computing facilities was provided by the Digital Technology Center and the Minnesota Supercomputing Institute.

Publisher Copyright:
© The Author(s) 2017.

Keywords

  • distributed computing
  • mpi
  • out-of-core
  • virtual memory

Fingerprint

Dive into the research topics of 'A virtual memory manager optimized for node-level cooperative multi-tasking in memory constrained systems'. Together they form a unique fingerprint.

Cite this