CXL and the Art of Hierarchical Memories: Their Management and Use

New technologies and platforms have laid waste to the assumptions of fixed-size, monolithic memory. Multiple layers of CXL-attached memory and persistent memory now provide a wide variety of types and speeds of memory available to developers of future systems. We will compare these various tiers of memories, whether inside the box or remotely attached. Next, we will examine how users and consumers of multi-tiered memory can make use of their varying characteristics, such as latency and persistence. We'll discuss the idea of application-specific memory, as well as some of the libraries available for tiering. We'll touch on the various different schemes for how to use the multiple layers of memory. Finally, we'll discuss the ways to manage the hierarchies and optimize access to them by modeling the ways applications can use them. This helps make the most of the hierarchy.

Andy Banta
Magnition IO
Abstract

New technologies and platforms have laid waste to the assumptions of fixed-size, monolithic memory. Multiple layers of CXL-attached memory and persistent memory now provide a wide variety of types and speeds of memory available to developers of future systems. We will compare these various tiers of memories, whether inside the box or remotely attached. Next, we will examine how users and consumers of multi-tiered memory can make use of their varying characteristics, such as latency and persistence. We'll discuss the idea of application-specific memory, as well as some of the libraries available for tiering. We'll touch on the various different schemes for how to use the multiple layers of memory. Finally, we'll discuss the ways to manage the hierarchies and optimize access to them by modeling the ways applications can use them. This helps make the most of the hierarchy.

Learning Objectives

  • Understanding what hierarchical memory systems are and how they are constructed.
  • Learning how programmers and designers can make use of hierarchical memory systems.
  • Learning to manage and optimize these hierarchies for the best performance and efficiency.

Related Sessions