Emil Karimov , Timon Evenblij , Saeideh Alinezhad Chamazcoti , Francky Catthoor
{"title":"PARL: Page Allocation in hybrid main memory using Reinforcement Learning","authors":"Emil Karimov , Timon Evenblij , Saeideh Alinezhad Chamazcoti , Francky Catthoor","doi":"10.1016/j.sysarc.2024.103310","DOIUrl":null,"url":null,"abstract":"<div><div>Hybrid Main Memory introduces emerging non-volatile memory technologies and reduces the DRAM footprint to address the increasing capacity demands of modern workloads and DRAM scaling issues. The resulting heterogeneity requires new policies to distribute data and to minimize the potential workload slowdown. Existing literature proposes fixed-logic or machine learning-based solutions using naive and suboptimal initial data placement and focuses on the subsequent data migration policies. We explore this gap in the initial placement and propose to improve it using an adaptive and technology-agnostic solution. Page Allocation using Reinforcement Learning (PARL) is an agent that learns the target memory device for the initial placement of memory pages based on the rewards received from the system. PARL makes decisions by observing the state of its environment using system-level attributes instead of analyzing memory access patterns. This allows for a smaller state space and makes a reinforcement learning agent feasible for implementation, contrary to the claims found in the literature. Compared to fixed-logic methods, our proposal achieves 16%–43% better workload runtime and 21% better DRAM hitrate on average across the evaluated workloads. PARL also improves the DRAM hitrate by 9% on average (up to 34%), compared to a proposal using machine learning.</div></div>","PeriodicalId":50027,"journal":{"name":"Journal of Systems Architecture","volume":"159 ","pages":"Article 103310"},"PeriodicalIF":3.7000,"publicationDate":"2025-02-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Journal of Systems Architecture","FirstCategoryId":"94","ListUrlMain":"https://www.sciencedirect.com/science/article/pii/S1383762124002479","RegionNum":2,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q1","JCRName":"COMPUTER SCIENCE, HARDWARE & ARCHITECTURE","Score":null,"Total":0}
引用次数: 0
Abstract
Hybrid Main Memory introduces emerging non-volatile memory technologies and reduces the DRAM footprint to address the increasing capacity demands of modern workloads and DRAM scaling issues. The resulting heterogeneity requires new policies to distribute data and to minimize the potential workload slowdown. Existing literature proposes fixed-logic or machine learning-based solutions using naive and suboptimal initial data placement and focuses on the subsequent data migration policies. We explore this gap in the initial placement and propose to improve it using an adaptive and technology-agnostic solution. Page Allocation using Reinforcement Learning (PARL) is an agent that learns the target memory device for the initial placement of memory pages based on the rewards received from the system. PARL makes decisions by observing the state of its environment using system-level attributes instead of analyzing memory access patterns. This allows for a smaller state space and makes a reinforcement learning agent feasible for implementation, contrary to the claims found in the literature. Compared to fixed-logic methods, our proposal achieves 16%–43% better workload runtime and 21% better DRAM hitrate on average across the evaluated workloads. PARL also improves the DRAM hitrate by 9% on average (up to 34%), compared to a proposal using machine learning.
期刊介绍:
The Journal of Systems Architecture: Embedded Software Design (JSA) is a journal covering all design and architectural aspects related to embedded systems and software. It ranges from the microarchitecture level via the system software level up to the application-specific architecture level. Aspects such as real-time systems, operating systems, FPGA programming, programming languages, communications (limited to analysis and the software stack), mobile systems, parallel and distributed architectures as well as additional subjects in the computer and system architecture area will fall within the scope of this journal. Technology will not be a main focus, but its use and relevance to particular designs will be. Case studies are welcome but must contribute more than just a design for a particular piece of software.
Design automation of such systems including methodologies, techniques and tools for their design as well as novel designs of software components fall within the scope of this journal. Novel applications that use embedded systems are also central in this journal. While hardware is not a part of this journal hardware/software co-design methods that consider interplay between software and hardware components with and emphasis on software are also relevant here.