Metall: A Persistent Memory Allocator For Data-Centric Analytics

08/10/2021
by   Keita Iwabuchi, et al.
0

Data analytics applications transform raw input data into analytics-specific data structures before performing analytics. Unfortunately, such data ingestion step is often more expensive than analytics. In addition, various types of NVRAM devices are already used in many HPC systems today. Such devices will be useful for storing and reusing data structures beyond a single process life cycle. We developed Metall, a persistent memory allocator built on top of the memory-mapped file mechanism. Metall enables applications to transparently allocate custom C++ data structures into various types of persistent memories. Metall incorporates a concise and high-performance memory management algorithm inspired by Supermalloc and the rich C++ interface developed by Boost.Interprocess library. On a dynamic graph construction workload, Metall achieved up to 11.7x and 48.3x performance improvements over Boost.Interprocess and memkind (PMEM kind), respectively. We also demonstrate Metall's high adaptability by integrating Metall into a graph processing framework, GraphBLAS Template Library. This study's outcomes indicate that Metall will be a strong tool for accelerating future large-scale data analytics by allowing applications to leverage persistent memory efficiently.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
05/25/2018

Architectures for High Performance Computing and Data Systems using Byte-Addressable Persistent Memory

Non-volatile, byte addressable, memory technology with performance close...
research
06/30/2020

Lachesis: Automated Generation of Persistent Partitionings for UDF-Centric Analytics

Persistent partitioning is effective in avoiding expensive shuffling ope...
research
08/18/2018

Pangea: Monolithic Distributed Storage for Data Analytics

Storage and memory systems for modern data analytics are heavily layered...
research
04/15/2019

Single Machine Graph Analytics on Massive Datasets Using Intel Optane DC Persistent Memory

Intel Optane DC Persistent Memory is a new kind of byte-addressable memo...
research
03/16/2020

Adapting Persistent Data Structures for Concurrency and Speculation

This work unifies insights from the systems and functional programming c...
research
09/25/2018

An Efficient Framework for Implementing Persist Data Structures on Remote NVM

The byte-addressable Non-Volatile Memory (NVM) is a promising technology...
research
06/15/2022

Federated Data Analytics: A Study on Linear Models

As edge devices become increasingly powerful, data analytics are gradual...

Please sign up or login with your details

Forgot password? Click here to reset