Publications

Detailed Information

ZNS SSD를 활용한 메모리 스왑 서브시스템 성능 최적화 : Optimizing Swap Subsystem Performance by Leveraging ZNS SSD

Cited 0 time in Web of Science Cited 0 time in Scopus
Authors

신희원

Advisor
염헌영
Issue Date
2023
Publisher
서울대학교 대학원
Keywords
ZNS SSDOperating SystemMemory Swap SubsystemGarbage Collection
Description
학위논문(석사) -- 서울대학교대학원 : 공과대학 컴퓨터공학부, 2023. 8. 염헌영.
Abstract
스토리지 디바이스의 발달로 빠른 블록 SSD를 메모리 스왑 디바이스로 사용할 수 있지만 스왑 디바이스 활용도가 높아질수록 시스템 성능 저하가 야기된다는 심각한 문제가 있다. 이러한 문제는 운영체제가 무효화한 스왑 슬롯(swap slot)을 SSD는 유효하다고 인식하거나 스왑 아웃 패널티를 피하기 위해 사용되는 스왑 캐시(swap cache)가 블록 디바이스 내부 GC를 인지하지 않는 것과 같은 디바이스와 운영체제 간 의미 격차(semantic gap)으로 인한 것이다. 최근 제안된 Zoned Namespace(ZNS)는 논리 주소 공간을 고정된 크기의 존(Zone)으로 매핑하는 스토리지 인터페이스이다. ZNS SSD는 낸드 플래시가 덮어쓰기(overwrite)를 지원하지 않기 때문에 데이터를 존에 추가(append)하는 방식으로 쓰기를 지원한다는 특징이 있다. 기존 블록 SSD를 사용할 때 운영체제와 디바이스 간 의미 격차로 인해 성능이 저하되는 문제를 ZNS SSD의 호스트 측 관리를 사용하여 성능 저하를 완화할 수 있다. 메모리 스왑 서브시스템에 ZNS SSD를 적용한 최신 논문인 ZNSwap에서는 운영체제에서 스왑을 수행할 때 ZNS SSD의 명시적인 가비지 컬렉션을 활용할 수 있도록 하였다. 이를 위해, 운영체제가 장치의 유효한 스왑 영역을 인지하는 가비지 컬렉터를 통해 공간 효율적인 호스트 가비지 컬렉션을 제안하였다. 기존 블록 SSD를 사용할 때 운영체제와 디바이스 내부 공간 관리 간 정보의 격차로 인해 성능이 저하되는 문제를 ZNS SSD의 호스트 측 관리를 사용하여 운영체제와 디바이스가 스왑 디바이스 내부 공간 관리에 스왑 페이지 정보를 공유함에 따라 성능 저하를 완화할 수 있다고 주장하였다.
그러나 ZNSwap은 특정 논리 블록 주소(Logical Block Address, LBA) 포맷에서만 동작하며, 존의 크기가 큰 ZNS SSD에서만 실험이 수행되었다는 한계가 있다. 본 연구에서는 ZNSwap을 개선하여 일반적인 기본 LBA 포맷에서 크고 작은 다양한 존 크기에 대해 동등한 스왑 아웃 성능을 보장할 수 있도록 한다. 실험 결과, 관련 연구인 ZNSwap과 비교할 때 약 480MB/s으로 동등한 최대 스왑 아웃 대역폭을 보였다.
With the advancement of storage devices, it is now possible to use fast block-based solid-state drives (SSDs) as memory swap devices. However, as the utilization of block SSDs increases, a significant problem arises, which is the degradation of system performance. This issue stems from a semantic gap between the device and the operating system, where the operating system may consider swap slots invalidated while the SSD recognizes them as valid, or the swap cache used to avoid swap-out penalties does not take into account the internal garbage collection (GC) of the block device. Recently proposed, the Zoned Namespace (ZNS) is a storage interface that maps the logical address space into fixed-sized zones and presents it to the operating system. In particular, ZNS SSDs support writes by adding data to zones since NAND flash does not support overwrites. By utilizing host-managed ZNS SSDs, it is possible to alleviate the performance degradation caused by the information gap between the operating system and the device when using traditional block-based SSDs. In the state-of-the-art research, ZNSwap, which applies ZNS SSDs to the memory swap subsystem, explicit garbage collection of ZNS SSDs is leveraged when performing swap operations in the operating system. To achieve this, a garbage collector in the operating system is employed to recognize the valid swap areas of the device, providing space-efficient host garbage collection. By utilizing host-managed ZNS SSDs, the performance degradation caused by the information gap between the operating system and the internal space management of the device when using traditional block-based SSDs can be mitigated through the shared swap page information between the operating system and the swap device's internal space management. However, ZNSwap has limitations, as it operates only with specific Logical Block Address (LBA) formats and experiments were conducted only on ZNS SSDs with large zone sizes. In this study, we enhance ZNSwap to ensure equivalent swap-out performance for various zone sizes in a general LBA format. Experimental results show the same maximum swap-out bandwidth compared to the ZNSwap.
Language
kor
URI
https://hdl.handle.net/10371/196513

https://dcollection.snu.ac.kr/common/orgView/000000177886
Files in This Item:
Appears in Collections:

Altmetrics

Item View & Download Count

  • mendeley

Items in S-Space are protected by copyright, with all rights reserved, unless otherwise indicated.

Share