'컴퓨트 익스프레스 링크(CXL)' 2.0 기반 차세대 메모리 확장 다이렉트 플랫폼 (DirectCXL) 세계 최초 개발
KAIST는 전기 및 전자공학부 정명수 교수 연구팀(컴퓨터 아키텍처 및 메모리 시스템 연구실)이 대용량 메모리 장치부터 프로세스를 포함한 컴퓨트 익스프레스 링크(CXL) 2.0 기반의 차세대 메모리 확장 플랫폼 ‘다이렉트CXL(이하 DirectCXL)’을 세계 최초로 프로토타입 제작, 운영체제가 실장된 단대단(End-to-End) 시연에 성공했다고 1일 밝혔다.
오늘날 빅데이터 분석, 그래프 분석, 인메모리 데이터베이스 등 대규모 데이터에 기반한 응용처리가 증가함에 따라, 데이터 센터에서는 이를 더 빠르고 효율적으로 처리하기 위해 시스템의 메모리 확장에 많은 투자를 하고 있다.
그러나 우리가 흔히 알고 있는 메모리 확장 방식인 더블 데이터 대역폭(DDR) 인터페이스를 통한 메모리 확장은 추가할 수 있는 메모리 개수의 제한이 있어, 대규모 데이터 기반의 응용을 처리하기에 충분치 않다. 따라서 데이터 센터에서는 CPU와 메모리로 이루어진 메모리 노드들을 따로 구성하고, 응용을 수행하는 호스트의 메모리가 부족하면 네트워크로 연결된 메모리 노드를 자신의 메모리 공간으로 사용하는 원격 데이터 전송 기술(이하 RDMA) 기반의 메모리 확장을 사용한다.
여러 메모리 노드를 사용하는 RDMA 기반의 메모리 확장을 통해 데이터센터는 시스템의 메모리 크기를 늘릴 수 있었지만, 여전히 해결해야 할 문제들이 남아있었다. 우선 RDMA 기반 메모리 확장 시스템에서는 노드 간 데이터 이동 시 불필요한 데이터 복사, 소프트웨어의 개입 그리고 프로토콜 전환으로 인한 지연을 발생시켜 성능 저하가 발생했다.
또한 시스템의 메모리 확장 시 메모리만을 추가할 수 있는 것이 아닌, 메모리와 메모리를 제어할 CPU가 하나의 메모리 노드를 이루어 시스템에 추가되어야 했기 때문에, 추가적인 비용 소모가 발생했다.
최근 컴퓨트 익스프레스 링크(Compute Express Link, 이하 CXL) 프로토콜의 등장으로 많은 메모리 고객사와 제조사가 이러한 문제를 해결할 가능성을 확인하고 있다. CXL은 PCI 익스프레스(PCIe) 인터페이스 기반의 CPU-장치(Device) 간 연결을 위한 프로토콜로, 이를 기반으로 한 장치 연결은 기존보다 높은 성능과 확장성을 지원하는 것이 특징이다.
국내외 유수 기업들이 모여 CXL 인터페이스 표준 규약을 제안하는 CXL 컨소시엄은 지난 2019년 CXL 1.0/1.1을 처음 제안했고, 이후 CXL 2.0을 발표하며 CXL 1.0/1.1에서 하나의 포트당 하나의 지역 메모리 장치만을 연결할 수 있었던 확장성 문제를 스위치 네트워크를 통해 개선, 하나의 포트를 여러 포트로 확장할 수 있도록 했다. 따라서 CXL 1.0/1.1과 달리 CXL 2.0에서는 확장된 포트에 다수의 원격 CXL 메모리 장치를 연결하는 것이 가능해 더 높은 확장성을 지원할 수 있게 됐다.
그러나 CXL 2.0의 높은 확장성에도 불구하고, 아직 CXL 연구의 방향성을 제시해줄 수 있는 시제품 개발 및 연구들이 진행되지 않아, 메모리 업계와 학계에서는 여전히 CXL1.0/1.1을 기반으로 지역 메모리 확장 장치, 시제품 개발 및 연구를 진행하고 있는 실정이다. 따라서 새로운 CXL 2.0을 통한 메모리 확장 연구의 방향성 초석을 제시할 필요성이 커졌다.
KAIST 정명수 교수 연구팀이 전 세계 최초로 프로토타입한 CXL 2.0 기반 메모리 확장 플랫폼 ‘DirectCXL’은 높은 수준의 메모리 확장성을 제공하며, 빠른 속도로 대규모 데이터 처리를 가능케 한다. 이를 위해 연구팀은 메모리를 확장해 줄 장치인 ‘CXL 메모리 장치’와 호스트 ‘CXL 프로세서 (CPU)’, 여러 호스트를 다수의 CXL 메모리 장치에 연결해주는 ‘CXL 네트워크 스위치’ 그리고 메모리 확장 플랫폼 전반을 제어할 리눅스 운영체제 기반의‘CXL 소프트웨어 모듈’을 개발해 플랫폼을 구성했다.
구성된 ‘DirectCXL’ 플랫폼을 사용한 시스템에서는 확장된 메모리 공간에 직접 접근해 데이터를 CPU의 캐시로 가져와 불필요한 메모리 복사와 소프트웨어의 개입이 없으며, PCIe 인터페이스만을 사용해 프로토콜 전환을 없애 지연시간을 최대한 줄였다.
또한 추가적인 CPU가 필요 없는 CXL 메모리 장치를 CXL 스위치에 연결하는 것만으로 메모리 확장이 가능해 효율적인 시스템의 구성이 가능했다. 국내외 소수 대기업에서 메모리 장치 일부 단품에 대한 구성을 보여준 준 사례는 있지만, CXL 2.0 기반, CPU부터 CXL 스위치, 메모리 장치가 장착된 시스템에서 운영체제를 동작시키고 데이터 센터와 응용을 실행하고 시연한 것은 정명수 교수 연구팀이 처음이다.
연구팀은 자체 제작한 메모리 확장 플랫폼 ‘DirectCXL’의 성능을 검증하기 위해 CXL 동작이 가능한 다수의 자체 개발 호스트 컴퓨터가 CXL 네트워크 스위치를 통해 연결된 다수 CXL 메모리 장치들을 제어하는 환경을 구성했다. 이후 구성된 플랫폼을 통해 CXL 메모리 장치의 성능을 기존 RDMA 기반 메모리 확장 솔루션과 비교했다. 연구팀이 제안한 ‘DirectCXL’은 확장된 메모리에 대한 접근 시간 검증에서 기존 RDMA 기반의 메모리 확장 솔루션 대비 8.3배의 성능 향상을 보였으며, 많은 메모리 접근을 요구하는 그래프 응용처리 및 인 메모리 데이터베이스 응용처리에서도 각각 2.3배, 2배의 성능 향상을 이뤄냈다.
정명수 교수는 "이번에 개발된 ‘DirectCXL’은 기존 RDMA기반 메모리 확장 솔루션보다 훨씬 적은 비용으로도 뛰어난 성능과 높은 확장성을 제공하는 만큼 데이터센터나 고성능 컴퓨팅 시스템에서의 수요가 클 것으로 기대한다ˮ며, "세계 최초로 개발된 CXL 2.0 기반의 단대단 프로토타입 플랫폼을 활용해 CXL이 적용된 새로운 운영체제(OS)는 물론 시스템 소프트웨어, 솔루션 시제품 고도화를 통해 향후 CXL을 활용한 시스템 구축에 초석을 제공할 것이다ˮ라고 말했다.
한편 이번 연구는 미국 칼스배드에서 지난 7월에 11에 열린 시스템 분야 최우수 학술대회인 유즈닉스 연례 회의 `USENIX Annual Technical Conference, 2022'에 ‘DirectCXL’이라는 논문명(Direct Access, High-performance Memory Disaggregation with DirectCXL)으로 발표되었다. 또한 미국 산호세에서 열리는 8월 2/3일에 플래시 메모리 정상회담(Flash Memory Summit)에서 CXL 컨소시움이 이끄는 CXL포럼에 발표될 예정이다.
‘DirectCXL’의 자세한 내용은 연구실 웹사이트에서 확인할 수 있다. DirectCXL은 데이터센터와 클라우드 시스템에서 다양한 응용에 쉽게 적용 가능하며, 하나의 실시예로 메타(페이스북) 추천시스템 기계학습 데이터 가속에 대한 시연 영상을 연구실 유튜브에서 확인할 수 있다.
해당 영상은 각 개인의 대규모 특성 자료들(텐서)을 CXL 메모리 풀에 올려두고 빅데이터를 활용한 인공지능이 친구나 광고 등 개인 특성에 맞는 자료들을 추천하게 하는 시스템으로 기존 데이터 센터의 원격메모리에 비해 3.2배 이상의 사용자 수준 성능 향상을 보여주고 있다.