파네시아, SSD 기반의 메모리 확장 기술, 'CXL-SSD' 개발

20 Jun 2022

Share

파네시아는 CXL(Compute Express Link) 기술을 활용하여 SSD를 일반적인 시스템 메모리처럼 활용하는 기술, CXL-SSD를 개발하였습니다. 해당 기술은 올해 6월 열리는 ACM HotStorage 학회에서 발표될 예정입니다.

CXL-SSD의 개요

CXL은 다양한 프로세서, 가속기, 메모리 장치를 캐시 일관성을 보장하는 형태로 연결하는 인터커넥트 프로토콜로, CXL.io, CXL.cache, CXL.mem, 세 가지 서브프로토콜을 포함하고 있습니다. 파네시아는 CXL 프로토콜이, SSD와 같은 블락 스토리지 장치를 일반적인 시스템 메모리처럼 활용하는데 쓰일 수 있다고 생각하였습니다. 이에 '어떻게 하면 SSD를 메모리처럼 노출시킬 수 있을지', 'SSD를 메모리처럼 노출시켰을 때 발생 가능한 문제는 무엇인지', '이 때 발생한 문제는 어떻게 해결할 수 있을지' 탐구하였으며, 관련 내용을 논문 형태로 공개하였습니다. 각각에 대해 탐구한 내용을 간단히 요약하면 다음과 같습니다.

어떻게 하면 SSD를 메모리처럼 노출시킬 수 있는가?

파네시아는 우선 SSD를 CXL 장치(CXL-SSD)로 활용함으로써, 기존의 블락(수백 혹은 수천 바이트) 단위가 아닌 바이트 단위로 접근할 수 있도록 만들었습니다. 또한, CXL의 세 가지 서브프로토콜 중 CXL.cache 프로토콜을 활용할 경우, CXL-SSD 장치의 성능이 저하될 수 있다는 것을 발견하였습니다. 다수의 CXL-SSD 장치와 다수의 호스트(CPU)가 있을 때, 어떤 식으로 CXL-SSD의 메모리 공간을 호스트에게 할당하는 것이 합리적인지에 대해서도 탐구하였습니다.

SSD를 메모리처럼 노출시켰을 때 발생 가능한 문제는 무엇인가?

파네시아는 CXL-SSD를 메모리처럼 활용할 경우, SSD의 내부 동작으로 인해 예상치 못한 지연이 발생할 수 있음을 발견하였습니다. 예를 들어, SSD에서 용량을 확보하기 위해 주기적으로 수행하는 가비지컬렉션(garbage collection) 동작이 진행되는 도중에 호스트가 SSD에 저장된 데이터를 로드(load)하는 명령을 보낼 경우, 호스트가 예상치 못한 지연이 발생할 수 있습니다.

이 때 발생한 문제는 어떻게 해결할 수 있는가?

앞서 언급한 '예상치 못한 지연'을 방지하기 위해, 파네시아는 호스트 측에서 CXL-SSD에게 일종의 힌트를 건네 주는 기법을 제안하였습니다. 예를 들어, 호스트가 판단하기에 긴급하게 처리되어야 하는 메모리 접근 명령이 있을 경우, 해당 명령을 보낼 때 '긴급하게 처리가 필요하다'는 힌트를 함께 보내면, CXL-SSD에서 내부 동작을 일시 중지하고 긴급한 명령부터 우선적으로 처리하도록 설계하였습니다.

해당 연구 내용은 해외 언론 테크타겟(TechTarget)에서, CXL-SSD 기술을 선도하는 연구 내용으로써, 삼성, 키옥시아 기술과 함께 소개되었습니다. 자세한 내용은 아래의 링크를 통해 확인할 수 있습니다.

테크타겟



Share this article:


GET IN TOUCH

Want to Learn More About Panmnesia's Link Solution?