ISMM 2021
Tue 22 Jun 2021 PLDI
co-located with PLDI 2021

Memory manipulation primitives (memcpy, memset, memcmp) are used by virtually every application, from high performance computing to user interfaces. They often consume a significant portion of CPU cycles. Because they are so ubiquitous and critical, they are provided by language runtimes and in particular by libc, the C standard library. These implementations are heavily optimized, typically written in hand-tuned assembly for each target architecture.

In this article, we propose a principled alternative to hand-tuning these functions: (1) we profile the calls to these functions in their production environment and use this data to drive the important high-level algorithmic decisions, (2) we use a high-level language for the implementation, delegate the job of tuning the generated code to the compiler, and (3) we use constraint programming and automatic benchmarks to select the optimal high-level structure of the functions.

We compile our memfunctions implementations using the same compiler toolchain that we use for application code, which allows leveraging the compiler further by allowing whole-program optimization. We have evaluated our approach by applying it to the fleet of one of the largest computing enterprises in the world. This work increased the performance of the fleet by 1%.

Tue 22 Jun

Displayed time zone: Eastern Time (US & Canada) change

13:30 - 16:15
Session 2: Paging/Structuring & Session 3: Allocating/Copying ISMM 2021 at ISMM
Chair(s): Doug Lea State University of New York (SUNY) Oswego, Benjamin Zorn Microsoft Research
13:30
30m
Talk
Radiant: Efficient Page Table Management for Tiered Memory Systems
ISMM 2021
Sandeep Kumar Intel Labs, Aravinda Prasad Intel Labs, Smruti Ranjan Sarangi IIT Delhi, Sreenivas Subramoney Intel Labs
DOI Pre-print
14:00
30m
Talk
Compendia: Reducing Virtual-Memory Costs via Selective Densification
ISMM 2021
Sam Ainsworth University of Edinburgh, UK, Timothy M. Jones University of Cambridge, UK
Pre-print Media Attached
14:30
45m
Meeting
ISMM Business Meeting
ISMM 2021
Tobias Wrigstad Uppsala University, Sweden
15:15
30m
Talk
Adaptive Huge-Page Subrelease for Non-Moving Memory Allocators in Warehouse-Scale Computers
ISMM 2021
Martin Maas Google Research, Chris Kennelly Google, Khanh Nguyen Texas A&M University, Darryl Gove Google, Kathryn S McKinley Google, Paul Turner Google
15:45
30m
Talk
automemcpy A framework for automatic generation of fundamental memory operations
ISMM 2021
Guillaume Chatelet Google Research, Chris Kennelly Google, Sam Xi Google, Ondrej Sykora Google Research, Clement Courbet Google Research, David Li Google, Bruno De Backer Google Research
DOI Pre-print