ACROFAN

[인텔 데이터 센트릭 프레스 워크숍] 옵테인 DC 퍼시스턴트 메모리 기술 개요

기사입력 : 2019년 04월 03일 07시 20분
ACROFAN=권용만 | yongman.kwon@acrofan.com | SNS
인텔(Intel)은 3월 5, 6일 양일간 미국 오레곤(Oregon)주 힐스보로(Hillsboro)의 인텔 존스 팜 캠퍼스(Intel Jones Farm Campus)에서 ‘인텔 데이터 센트릭 프레스 워크숍(Intel Data-Centric Press Workshop)’을 열고, 데이터 주도의 시대를 위한 인텔의 솔루션 포트폴리오를 소개했다. 이 자리에서는 차세대 제온 스케일러블(Xeon Scalable) 프로세서와 옵테인 DC 퍼시스턴트 메모리(Optane DC Persistent Memory) 등, 차세대 프로세서와 플랫폼의 기술적 특징들이 소개되었다.

IoT와 클라우드, 5G와 인공지능에 이르기까지 다양한 IT 기술의 변화는 폭발적인 데이터의 증가 추세를 만들어내고 있으며, 이 데이터를 다루는 역량이 경쟁력으로 연결되고 있다. 이와 함께 IT 인프라 또한 클라우드 컴퓨팅으로의 이동과 AI, 분석의 활용 증가, 네트워크와 엣지의 클라우드화 등이 변화의 수요를 이끌고 있다. 인텔은 이 ‘데이터 주도’ 시대에 총 규모 2000억 달러의, 역대 최대 규모의 시장 기회가 있을 것으로 예상하고, 이 시장에 대비하기 위해 모든 것을 처리하고, 더 많은 것을 저장하고, 더 빠르게 옮길 수 있는, 소프트웨어와 시스템 레벨에 최적화된 솔루션을 제시한다는 계획을 소개했다.

인텔은 이 ‘데이터 주도’ 시대를 위한 새로운 포트폴리오로, 2세대 제온 스케일러블 프로세서와 새로운 제온 D 프로세서, Agilex FPGA, 옵테인 DC 퍼시스턴트 메모리와 옵테인 DC SSD, QLC 3D NAND 기반의 DC 시리즈 SSD, 800 시리즈 이더넷 어댑터 등을 소개했다. 새로운 제온 스케일러블 프로세서와 옵테인 DC 퍼시스턴트 메모리, 옵테인 DC SSD, 이더넷 기술 등은 시스템 레벨에서 긴밀히 결합되고, 소프트웨어 레벨의 최적화를 통해 다양한 워크로드에서 뛰어난 성능과 효율성을 제공할 수 있을 것으로 기대되며, 검증된 최적화된 구성의 ‘인텔 셀렉트 솔루션’을 통해 이러한 혁신을 더욱 빨리 누릴 수 있게 한다고 밝혔다.

▲ DDR4 메모리 인터페이스 기반의 비휘발성 메모리 ‘인텔 옵테인 DC 퍼시스턴트 메모리’

▲ ‘메모리 모드’는 더욱 고용량의 메모리 구성을 사용할 수 있게 한다

▲ ‘앱 다이렉트 모드’는 이를 지원할 수 있는 소프트웨어 환경이 필요하다

‘옵테인 DC 퍼시스턴트 메모리’에 대한 소개는 인텔 데이터센터 그룹의 시니어 엔지니어 모하마드 아라파(Mohamed Arafa), 릴리 루이(Lily Looi)가 진행했다. ‘옵테인 DC 퍼시스턴트 메모리’는 DRAM에서 테이프에 이르는 데이터 저장 구조에서, 옵테인 DC SSD와 DRAM 사이에 위치하여, 메모리와 스토리지 사이의 성능과 용량의 격차를 줄이고, 메모리와 스토리지의 역할 양 쪽을 모두 할 수 있는 독특한 위치에 있다. 이 때 옵테인 DC 퍼시스턴트 메모리의 낮은 지연시간은 DRAM 급의 성능을 기대할 수 있게 하고, 스토리지 측면의 접근에서는 DRAM보다 더 큰 용량과 비휘발성 메모리의 특징을 제공한다고 덧붙였다.

옵테인 DC 퍼시스턴트 메모리는 ‘메모리 모드’와 ‘앱 다이렉트 모드’로의 사용이 가능하다. 이 중 ‘메모리 모드’로의 사용은, 옵테인 DC 퍼시스턴트 메모리 풀을 애플리케이션에서 메모리 영역으로 인식하도록 하며, 별도의 소프트웨어 변경도 필요 없다. 이 때, DRAM은 옵테인 DC 퍼시스턴트 메모리 영역의 캐시로 활용하며, 전체 사용가능 용량은 옵테인 DC 퍼시스턴트 메모리의 구성 용량이 된다. 이 때, DRAM과 옵테인 DC 퍼시스턴트 메모리는 같은 메모리 컨트롤러에 구성되어야 하며, 구성 비율 등은 다양한 방법이 가능하고, 관리는 호스트 메모리 컨트롤러가 담당한다.

‘앱 다이렉트 모드’는 애플리케이션이 옵테인 DC 퍼시스턴트 메모리를 DRAM과 블록 스토리지 사이의 새로운 스토리지 티어로 설정해 직접 접근할 수 있게 하며, 이를 위한 운영체제와 소프트웨어 등의 대응이 필요하고, 인텔은 이를 위한 PMDK를 제공하고 있다. 이 ‘앱 다이렉트 모드’는 별도의 페이징이나 컨텍스트 스위칭, 인터럽트 등이 없는 특징과 함께, 메모리와 유사한 방식의 바이트 단위 접근을 사용한다. 이 외에도 캐시 일관성이나 DMA, RDMA 등의 활용이 가능하다. 한편 이 구성에서는, 전원 장애에 대응하기 위한 별도의 대비가 필요하다고 덧붙였다.

옵테인 DC 퍼시스턴트 메모리를 블록 스토리지처럼 쓰는 ‘앱 다이렉트 모드’를 위한 NVDIMM 드라이버는 현재 리눅스 커널 4.2부터 지원하고 있다. 이 모드의 경우 메모리 컨트롤러에 위치함으로써 전통적인 스토리지 서브시스템보다 더 단순한 접근 경로를 통해 낮은 지연시간, 더 높은 전송속도와 IOPS 등을 얻을 수 있다. 시스템 구성에서는, DRAM과 옵테인 DC 퍼시스턴트 메모리는 반드시 함께 사용해야 하며, 프로세서 당 6개 모듈까지 장착할 수 있다. 권장되는 구성은 프로세서당 12개 DIMM 중 6개는 DRAM, 6개는 옵테인 DC 퍼시스턴트 메모리를 사용하여 6채널 구성을 맞추는 것인데, 시스템 구성상 여의치 않은 경우에는 뱅크 안에서 3+3 구성도 가능한 것으로 알려졌다.

▲ 메모리 컨트롤러에는 비휘발성 메모리 지원을 위한 ‘DDR-T’ 프로토콜이 필요하다.

▲ ‘옵테인 DC 퍼시스턴트 메모리’의 모듈 구성

메모리 컨트롤러를 활용하는 비휘발성 메모리와 스토리지의 구현을 위한 규격으로는 ‘DDR-T’ 프로토콜이 사용된다. 이 프로토콜은 기본적으로 DDR4의 기계적, 전기적 인터페이스를 그대로 활용해, 같은 메모리 컨트롤러에서 DDR4와 DDR-T를 모두 활용할 수 있게 한다. 또한 비동기 커맨드, 데이터 타이밍의 사용이 가능하며, 호스트 컨트롤러와의 통신에는 request, grant 스키마를 사용하고, 데이터 버스의 방향과 타이밍은 호스트가 관리한다. 이 외에도, 트랜잭션은 옵테인 DC 퍼시스턴트 메모리의 컨트롤러에서 재배열이 가능하다.

옵테인 DC 퍼시스턴트 메모리의 데이터, 커맨드 경로는 메모리와 스토리지에서의 경로에서 볼 수 있는 특징을 절충한 모습이다. 메모리의 경우 하드웨어 기반 구현이고 지연시간과 대역폭이 크지만 미디어 관리가 유연하지 않다. 그리고 스토리지의 경우 지연시간에 덜 민감하고, GC(Garbage Collection)나 블록 삭제 관리가 필요하다. 하지만 옵테인 DC 퍼시스턴트 메모리의 경우 메모리가 가지는 지연 시간의 중요성 측면을 유지하고, 얼정 부분의 미디어 관리 기능을 수행하면서, GC가 필요하지 않다는 특징을 가지고 있다고 소개되었다.

옵테인 DC 퍼시스턴트 메모리 모듈은 데이터와 ECC, 스페어를 위한 총 11개의 옵테인 미디어와 PMIC, 펌웨어를 위한 SPI 플래시, DQ 버퍼와 AIT DRAM, 급작스러운 전원 문제에 대응을 위한 캐패시터 등으로 구성되어 있다. 또한 옵테인 DC 퍼시스턴트 메모리는 비휘발성이라는 특성상 ‘하드웨어 암호화’가 기본 적용되어 있으며, 서버 클래스의 RAS 기능도 적용되어 있다. 수명의 경우 5년의 보증기간을 제공하며, 15W 전력 설정과 100% 쓰기 상태에서 350PBW 이상이 예상된다. 한편 옵테인 DC 퍼시스턴트 메모리의 적극적인 활용을 위한 소프트웨어 개발 환경 지원에서는 ‘퍼시스턴트 메모리 프로그래밍 모델’과 PMDK 라이브러리 등이 마련되어 있다.

▲ ‘메모리 모드’에서는 DRAM 캐시 적중률에 따라 성능이 달라진다

▲ ‘앱 다이렉트 모드’는 스토리지 접근의 오버헤드를 줄여 애플리케이션 성능 최적화가 가능하다

옵테인 DC 퍼시스턴트 메모리는 전력 소비와 성능의 최적화 측면에서 12~18W 사이에서 0.25W 단위로 전력 소비 상한선을 설정할 수 있게 했으며, 높은 전력 설정일수록 높은 성능을 얻을 수 있을 것이라고 밝혔다. 그리고 256GB 모듈의 18W 설정에서, 256B 읽기는 8.3GB/s, 쓰기는 3GB/s 정도, 64B 에서는 읽기 2.13GB, 쓰기 0.73GB 정도의 테스트 수치를 소개했다. 특히 지연 시간 측면에서, 옵테인 DC 퍼시스턴트 메모리는 옵테인 미디어 기반의 SSD인 P4800X보다도 크게 낮은 지연시간을 제공하며, 읽기, 쓰기 성능의 경우 한 개의 모듈로도 높은 성능을 보이지만 복수 모듈로 멀티 채널 구성을 통해 더욱 높은 성능을 얻을 수 있다고 덧붙였다.

‘메모리 모드’로 옵테인 DC 퍼시스턴트 메모리를 활용할 때, DRAM 캐시가 적중하는 경우 DRAM과 동일한 지연시간이 나오지만, 캐시 적중에 실패한 경우 메모리와 옵테인 DC 퍼시스턴트 메모리 양 쪽을 모두 거치며 지연시간이 배가된다. 이에 최적의 성능을 얻기 위한 워크로드 최적화 측면에서는, DRAM 캐시 적중률을 높일 수 있도록 하고, 메모리 대역폭 요구가 낮은 경우가 적합하며, 읽기 위주의 작업과 워크로드 크기 측면의 고려가 필요할 것이라 조언했다. 또한 ‘메모리 모드’를 통한 더 큰 메모리 용량은 더 큰 데이터베이스나 데이터 셋의 활용, 비용 대비 성능의 균형 추구, VM 운영 환경에서 더 많은 VM의 운영 등을 가능하게 할 것이라 덧붙였다.

전통적인 스토리지 기반 구성에서 읽기에 페이지 폴트가 나온 경우 외부의 디스크로 4K 블록 전송을 통해 데이터를 메모리에 받고, 이를 프로세서가 메모리에서 받아오는 단계를 거치지만, ‘앱 다이렉트 모드’는 프로세서가 메모리 컨트롤러를 벗어나지 않고도 일련의 작업을 한 번에 끝낼 수 있게 한다. 물론 앱 다이렉트 모드에서 DRAM과 옵테인 DC 퍼시스턴트 메모리는 분리되어 있으며, 메모리의 데이터를 옵테인 DC 퍼시스턴트 메모리 쪽으로 옮김으로써 더 적극적인 활용도 가능하다. SAP HANA의 활용 사례가 대표적인데, DRAM에는 워킹 메모리와 데이터 구조 정보 정도를 남기고, 메인 스토어를 옵테인 DC 퍼시스턴트 메모리로 옮김으로써 고성능과 비용 최적화가 가능해진다.

‘앱 다이렉트 모드’는 기존에 SSD 등 디스크에 위치하던 데이터를 이동시켜 더 낮은 지연시간과 높은 성능을 얻을 수도 있다. 이 때는 블록 기반 접근이 아닌 바이트 기반 접근을 통해, 소프트웨어 오버헤드를 제거할 수 있고, 캐시로의 사용도 가능하다. 이 외에도 초기 테스트를 위해 앱 다이렉트 모드에서 파일시스템을 연결할 수도 있다. Redis에서의 활용 사례에서는, 기존에 메모리 영역에 있던 밸류 데이터를 옵테인 DC 퍼시스턴트 메모리에 저장함으로써 DRAM의 소비량이나 SSD의 쓰기 부하를 줄이고, 전체 성능을 향상시킬 수 있었다. 또한 아파치 스파크(Spark) SQL OAP 캐시로의 활용에서는, 옵테인 DC 퍼시스턴트 메모리를 캐시로 활용해 I/O 집중 워크로드에서 DRAM보다 비용 효율적으로 오버헤드를 낮출 수 있다고 덧붙였다.





Copyright ⓒ Acrofan All Right Reserved



[명칭] 아크로팬   [제호] 아크로팬(ACROFAN)    [발행인] 유재용    [편집인] 유재용    [청소년보호책임자] 권용만
Copyright © ACROFAN All Right Reserved