Cited time in webofscience Cited time in scopus

Profile-guided Optimization for Memory Management in CXL Memory Systems

Profile-guided Optimization for Memory Management in CXL Memory Systems
Alternative Title
CXL 메모리 시스템을 위한 메모리 오브젝트 프로파일링 기법 디자인 및 실행
Minjeong Yuk
DGIST Authors
Minjeong YukSungjin LeeHoon Sung Chwa
Hoon Sung Chwa
Issued Date
Awarded Date
CXL; Heterogenous Memory Systems; Memory Allocator; Profiler; Profile-guided Optimization; 이기종 메모리 시스템; 메모리 할당자; 프로파일링 기법
With the increasing memory usage of applications, heterogeneous memory systems are gaining attention. The recent prominence of CXL technology aims to expand memory usage. In an expanded memory system, there is a need to store memory objects in suitable devices and manage them efficiently.
This paper introduces profiling and optimization techniques that analyze the dynamic behavior of memory objects in an application, providing different memory management strategies based on classification. Beyond leveraging existing memory-related performance, this approach analyzes memory access patterns during the lifetime of objects. This technique includes analyzing the total quantity of objects, cache pollution, and temporal locality of accesses. Through analysis, we determined the optimization techniques for each memory object and applied optimizations based on classification. Data placement optimizations using the quantity of objects and cache pollution show 20% higher performance in Redis, and memory packing using temporal locality shows 54% higher performance in microbench.|응용 프로그램의 메모리 사용량이 커짐에 따라, 이기종 메모리 시스템(heterogenous memory systems)이 주목받고 있다. 최근 각광을 받고 있는 CXL 기술 또한, 메모리를 확장하여 사용하기 위함이다. 확장된 메모리 시스템에서, 메모리 오브젝트를 적합한 기기에 저장하고, 적합한 방법으로 관리할 필요성이 있다. 본 논문은 응용 프로그램의 메모리 오브젝트 동태를 분석하여, 분류에 따라 서로 다른 메모리 관리 방식을 제공하는 프로파일링 및 최적화 기법(profile-guided optimization)을 소개한다. 오브젝트 총량, 캐시의 효율적 이용 여부, 시간적 지역성(temporal locality)을 활용하며, 기존의 메모리 관련 성능을 활용하는 것을 넘어, 메모리 오브젝트의 동태 패턴을 최적화에 사용할 것을 제안한다. 프로파일링 기법을 통해 메모리 오브젝트 각각에 최적화를 적용했다. 오브젝트 총량과 캐시의 효율적 이용을 분석하여 Redis에서 최적화를 진행한 경우, 고려 없이 캐시를 한 방법에 비해, 20% 성능 향상을 보인다. 시간적 지역성을 이용한 최적회의 경우, 마이크로벤치에서 54% 성능이 향상되었다.
Table Of Contents
I. Introduction 1
II. Related Work 3
2.1 Profile-guided Optimization 3
2.2 CXL 4
2.3 Optimization for Heterogenous Memory Systems 4
2.3.1 Data Placement 4
2.3.2 Cache Pollution and Cacheability 5
III. Motivation 7
IV. Design 9
4.1 Profiler 9
4.2 Memory Management Policy 10
4.2.1 Pinning and Caching 10
4.2.2 Memory Packing 12
V. Implementation 14
5.1 Profiler 14
5.2 Decision Maker for Data Placement 16
5.3 Application of Memory Management 17
VI. Evaluation 18
6.1 Pinning and Caching 18
6.2 Memory Packing 20
VII. Conclusion 21
Department of Electrical Engineering and Computer Science
Related Researcher
  • 이성진 Lee, Sungjin 전기전자컴퓨터공학과
  • Research Interests Computer System; System Software; Storage System; Non-volatile Memory; Flash-based SSD; Distributed Storage Systems
Files in This Item:

There are no files associated with this item.

Appears in Collections:
Department of Electrical Engineering and Computer Science Theses Master


  • twitter
  • facebook
  • mendeley

Items in Repository are protected by copyright, with all rights reserved, unless otherwise indicated.