{"title":"MATRYOSHKA:通过事务性页面迁移实现非排他性内存分层","authors":"Lingfeng Xiang, Zhen Lin, Weishu Deng, Hui Lu, Jia Rao, Yifan Yuan, Ren Wang","doi":"arxiv-2401.13154","DOIUrl":null,"url":null,"abstract":"With the advent of byte-addressable memory devices, such as CXL memory,\npersistent memory, and storage-class memory, tiered memory systems have become\na reality. Page migration is the de facto method within operating systems for\nmanaging tiered memory. It aims to bring hot data whenever possible into fast\nmemory to optimize the performance of data accesses while using slow memory to\naccommodate data spilled from fast memory. While the existing research has\ndemonstrated the effectiveness of various optimizations on page migration, it\nfalls short of addressing a fundamental question: Is exclusive memory tiering,\nin which a page is either present in fast memory or slow memory, but not both\nsimultaneously, the optimal strategy for tiered memory management? We demonstrate that page migration-based exclusive memory tiering suffers\nsignificant performance degradation when fast memory is under pressure. In this\npaper, we propose non-exclusive memory tiering, a page management strategy that\nretains a copy of pages recently promoted from slow memory to fast memory to\nmitigate memory thrashing. To enable non-exclusive memory tiering, we develop\nMATRYOSHKA, a new mechanism that features transactional page migration and page\nshadowing. MATRYOSHKA removes page migration off the program's critical path\nand makes migration asynchronous. Evaluations with microbenchmarks and\nrealworld applications show that MATRYOSHKA achieves 6x performance improvement\nover the state-of-the-art transparent page placement (TPP) approach under\nmemory pressure. We also compare MATRYOSHKA with a recently proposed\nsampling-based migration approach and demonstrate MATRYOSHKA's strengths and\npotential weaknesses in various scenarios. Through the evaluations, we discover\na serious issue facing all tested approaches, unfortunately including\nMATRYOSHKA, and call for further research on tiered memory-aware memory\nallocation.","PeriodicalId":501333,"journal":{"name":"arXiv - CS - Operating Systems","volume":"2019 1","pages":""},"PeriodicalIF":0.0000,"publicationDate":"2024-01-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"MATRYOSHKA: Non-Exclusive Memory Tiering via Transactional Page Migration\",\"authors\":\"Lingfeng Xiang, Zhen Lin, Weishu Deng, Hui Lu, Jia Rao, Yifan Yuan, Ren Wang\",\"doi\":\"arxiv-2401.13154\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"With the advent of byte-addressable memory devices, such as CXL memory,\\npersistent memory, and storage-class memory, tiered memory systems have become\\na reality. Page migration is the de facto method within operating systems for\\nmanaging tiered memory. It aims to bring hot data whenever possible into fast\\nmemory to optimize the performance of data accesses while using slow memory to\\naccommodate data spilled from fast memory. While the existing research has\\ndemonstrated the effectiveness of various optimizations on page migration, it\\nfalls short of addressing a fundamental question: Is exclusive memory tiering,\\nin which a page is either present in fast memory or slow memory, but not both\\nsimultaneously, the optimal strategy for tiered memory management? We demonstrate that page migration-based exclusive memory tiering suffers\\nsignificant performance degradation when fast memory is under pressure. In this\\npaper, we propose non-exclusive memory tiering, a page management strategy that\\nretains a copy of pages recently promoted from slow memory to fast memory to\\nmitigate memory thrashing. To enable non-exclusive memory tiering, we develop\\nMATRYOSHKA, a new mechanism that features transactional page migration and page\\nshadowing. MATRYOSHKA removes page migration off the program's critical path\\nand makes migration asynchronous. Evaluations with microbenchmarks and\\nrealworld applications show that MATRYOSHKA achieves 6x performance improvement\\nover the state-of-the-art transparent page placement (TPP) approach under\\nmemory pressure. We also compare MATRYOSHKA with a recently proposed\\nsampling-based migration approach and demonstrate MATRYOSHKA's strengths and\\npotential weaknesses in various scenarios. Through the evaluations, we discover\\na serious issue facing all tested approaches, unfortunately including\\nMATRYOSHKA, and call for further research on tiered memory-aware memory\\nallocation.\",\"PeriodicalId\":501333,\"journal\":{\"name\":\"arXiv - CS - Operating Systems\",\"volume\":\"2019 1\",\"pages\":\"\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2024-01-24\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"arXiv - CS - Operating Systems\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/arxiv-2401.13154\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"arXiv - CS - Operating Systems","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/arxiv-2401.13154","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
MATRYOSHKA: Non-Exclusive Memory Tiering via Transactional Page Migration
With the advent of byte-addressable memory devices, such as CXL memory,
persistent memory, and storage-class memory, tiered memory systems have become
a reality. Page migration is the de facto method within operating systems for
managing tiered memory. It aims to bring hot data whenever possible into fast
memory to optimize the performance of data accesses while using slow memory to
accommodate data spilled from fast memory. While the existing research has
demonstrated the effectiveness of various optimizations on page migration, it
falls short of addressing a fundamental question: Is exclusive memory tiering,
in which a page is either present in fast memory or slow memory, but not both
simultaneously, the optimal strategy for tiered memory management? We demonstrate that page migration-based exclusive memory tiering suffers
significant performance degradation when fast memory is under pressure. In this
paper, we propose non-exclusive memory tiering, a page management strategy that
retains a copy of pages recently promoted from slow memory to fast memory to
mitigate memory thrashing. To enable non-exclusive memory tiering, we develop
MATRYOSHKA, a new mechanism that features transactional page migration and page
shadowing. MATRYOSHKA removes page migration off the program's critical path
and makes migration asynchronous. Evaluations with microbenchmarks and
realworld applications show that MATRYOSHKA achieves 6x performance improvement
over the state-of-the-art transparent page placement (TPP) approach under
memory pressure. We also compare MATRYOSHKA with a recently proposed
sampling-based migration approach and demonstrate MATRYOSHKA's strengths and
potential weaknesses in various scenarios. Through the evaluations, we discover
a serious issue facing all tested approaches, unfortunately including
MATRYOSHKA, and call for further research on tiered memory-aware memory
allocation.