I/O ETC

서버/하이엔드PC의 주기억을 변혁하는 NVDIMM 기술

by 아키텍트 posted Oct 02, 2017
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

크게 작게 위로 아래로 댓글로 가기 인쇄

서버나 PC, 스마트폰 등의 메인 메모리(주 기억)에는 보통 DRAM을 싣는다. 탑재하는 DRAM의 개수는 용도에 따라 다르다. 탑재하는 개수가 많고 메인 메모리의 기억 용량이 큰 경우는 수많은 DRAM을 DIMM(Dual-Inline Memory Module)이라고 부르는 모듈을 싣는다. DIMM의 외형은 직사각형 보드로 마더보드 DIMM 커넥터에 보드를 실어 사용한다.


DIMM을 표준적으로 채용하고 있는 것은 대용량의 메인 메모리를 필요로 하는 서버와 하이 엔드 PC 등이다. 기억 용량의 크기가 한정되는 노트PC나 스마트폰 등의 모바일 기기는 DIMM을 싣지 않았다. 싣고 있다고 해도 특수한 소형 DIMM(예를 들면 SO-DIMM)이다. 상기 사항은 PC 사용자에게는 지극히 당연하다. 그러나 위의 전제를 확인하는 것은 "DIMM 보드가 본격적으로 변하려 하고 있는 미래"를 아래부터 확인하기 위해 중요한 것이다.


그리고 DIMM에 왜 DRAM이 탑재되고 있는지, 혹은 메인 메모리에 왜 DRAM이 채용되고 있는가는 DRAM은 다음과 같은 특징을 갖추고 있기 때문이다. 즉, 고속의 읽기, 큰 기억 용량, 저비용의 3가지다. 엄밀히 말하면 이들 3가지 특징의 균형이 가장 좋은 메모리가 DRAM이다. 이 장점이 있어 DRAM은 1970년대 초반에 등장하면서 온갖 종류의 컴퓨터에서 메인 메모리에 채용되었다고 할 수 있다.


메인 메모리의 대용량화에 의해 표면화되는 DRAM의 약점

다만 DRAM에 약점이 없는 것은 아니다. 주로 2가지 약점이 있다. "휘발성"과 "재충전"이다.


photo000_s.jpg


"휘발성"이란 전압이 크게 꺾이거나 전원 공급이 끊기면 데이터가 없어지는 성질이다. 전원 공급이 끊기는 원인으로 상상하기 쉬운 것은 정전이다. 일본에서는 전력 사정이 양호하므로 실감할 수 없지만 해외에서는 선진국에서도 정전은 일상적인 사건에 가깝다. "순정"이라 불리는 극히 짧은 시간만 순간적으로 전압이 떨어지는 현상, 혹은 순간적으로 전원 공급이 정지하는 현상이 자주 발생한다.


시스템 외부에서 돌발적인 전원 이상에 대처하는 표준적인 수단은 UPS(무정전 전원 장치)의 도입이다. 대규모 서버 시스템에서는 UPS의 도입은 당연하다. 단, 시스템 내부의 돌발적인 전원 이상에는 UPS로 대처할 수 없다. 전원 공급 능력에 여유를 갖게 함으로써 어느 정도는 전원 이상의 발생을 막을 수 있다. 그러나 근본적인 대책은 아니다.


"재충전" 문제는 DRAM은 대기시, 즉 메모리 액세스가 아니더라도 일정한 전력을 소비하는 것이다. 메모리 셀 데이터를 일정 시간 내에 리프레시하는 동작이 DRAM에서는 필수적이기 때문이다. 이 수정 동작을 "재충전"이라고 부른다.


DRAM은 축전기를 충전해서 데이터를 유지하고 있다. 캐패시터의 충전 전하는 충전이 완료됨과 동시에 상당한 기세로 방전되어 사라진다. 거기서 신호 전하가 잃기 전에 DRAM의 모든 데이터 값을 다시 읽고 데이터를 쓰고 있다.(물리적으로는 캐패시터를 풀 충전하고 있다) 메모리 액세스 유무에 상관 없이 DRAM에서는 데이터의 읽기가 발생하는 것이다.


휘발성과 재충전, 이 2가지 약점은 메인 메모리의 기억 용량이 급격히 커짐과 동시에 표면화되고 무시할 수 없는 문제다. 이 때문에 2013년~2014년경부터 이 2가지의 과제 해결을 노린 DRAM 모듈이 제품화되기 시작했다. 주로 DDR3 DIMM 슬롯에 대응하고 있으며 NAND 플래시 메모리를 DIMM 보드에 올리는 것으로 과제에 대처하겠다고 밝혔다.


photo001_s.jpg


"NVDIMM"의 대부분은 백업 기능이 있는 DRAM DIMM

NAND 플래시 메모리를 DIMM 보드에 올리는 제품은 크게 나누면 2종류로 나뉜다. 1개는 DRAM DIMM과 외형은 거의 같고, 전원 이상을 검지하고 DRAM의 데이터를 NAND 플래시 메모리로 이동시키는 기능을 갖춘 DIMM이다. DRAM의 약점인 "휘발성"을 해결한 제품이라 하겠다. 다른 1개는 DDR 타입의 DIMM 보드에 NAND 플래시 메모리와 독자 컨트롤러를 올린 제품이다. DRAM이 안고 있는 약점인 "재충전"과 "휘발성"을 모두 해결하면서 DRAM DIMM 보다 훨씬 큰 기억 용량을 실현하고 있다.


이들 2종류의 DIMM 제품 중에서 "비휘발성 DIMM"과 "NVDIMM(Non-Volatile Dual-Inline Memory Module)"등의 제품명으로 판매된 것은 전자다. 이 때문에 NVDIMM이 곧 "백업 기능이 있는 DRAM모듈"로 생각하는 사용자는 적지 않다.


정확히는 "백업 기능이 있는 DRAM 모듈"은 NVDIMM에서 "NVDIMM-N"으로 불리는 카테고리로 분류된다. "NVDIMM"이라 공급자가 호칭해도 잘못은 아니지만 엄밀하게는 유의해야 한다.


photo002_s.jpg
photo003_s.jpg


AMD CPU와 Windows 10 OS가 DDR4의 "NVDIMM-N" 지원

백업 기능이 있는 DRAM 모듈인 "NVDIMM-N"은 최근까지 채용은 일부 서버에 머물렀다. OS의 문제가 아닌 CPU의 지원이 없다는 문제를 안고 있었기 때문에 서버 시스템의 메인 메모리 도입에는 장벽이 높았다.


그러나 2017년 가을 현재 이들 문제는 대부분 제거되고 있다. DDR4 DRAM을 메인 메모리로 하는 시스템에서 "NVDIMM-N"을 도입하는 환경이 상당히 정비되고 있는 것이다.


우선 표준 규격에 관해서는 대형 반도체 협력 업체와 대형 반도체 업계 단체 JEDEC이 "DDR4 메모리용 NVDIMM-N의 기술 사양(JESD248)을 책정했고, 지난해(2016년)가을에 공개했다. OS는 리눅스에서 지원이 시작되고 윈도우로 이어졌다. 2016년 1월에 발매된 리눅스 커널 4.4(Lunix Kernel 4.4)와 2016년 9월에 발매된 윈도우 서버 2016이 NVDIMM-N을 지원하고 있다. 윈도우10의 지원도 시작되어 2017년 8월에 발표된 "Windows 10 Pro for Workstations"(2017년 가을 발매 예정)이 NVDIMM-N을 지원한다.


photo004_s.jpg
photo005_s.jpg


그리고 CPU는 AMD가 올해(2017년) 6월에 발표한 서버용 CPU "EPYC 7000" 패밀리가 DDR4 NVDIMM-N을 지원 대상 메모리에 추가했다.


"NVDIMM-N"의 장점과 단점

백업 기능이 있는 DRAM 모듈인 "NVDIMM-N"의 장점은 전압 강하 및 전원의 정지(정전) 등에 대처하는 비용이 내려가는 것이다.


여기서 비용은 무정전 전원 장치(UPS) 도입과 유지 비용, 다운 시간 단축을 위한 장비 등 데이터 센터와 Web 시스템 같은 리얼 타임 처리가 필요한 시스템에서 다운 타임은 금액적 손실이기 때문에 다운 타임이 최대한 짧은 것이 바람직하다.


"NVDIMM-N" 단점은 우선 DIMM의 비용이 상승하는 것이다. 부품 비용만도 NAND 플래시 메모리와 컨트롤러, 백업 전원용 슈퍼 커패시터 비용이 통상적인 DRAM DIMM에 추가된다. 또 기존 애플리케이션은 NVDIMM-N에 대응하지 않고 있어 애플리케이션으로부터 NVDIMM-N의 존재를 은폐하는 구조가 필요하다.


"NVDIMM-N"에 기대되는 응용 분야

이들의 장단점을 감안하여 현재는 24시간 가동을 전제로 하는 비교적 고가 시스템에서 도입이 시작될 것으로 기대되고 있다. 처리가 중단된 시간이 길어지면 금전적 손실이 지수 함수적으로 증대하는 시스템, 연속해서 생기는 막대한 데이터를 처리하면서 분석 결과를 연속적으로 출력하는 실시간 분석 등은 특히 기대되는 분야다.


photo006_s.jpg


대규모 컴퓨터 메모리 계층이 바뀐다

NVDIMM의 등장과 보급은 서버를 비롯한 대형 컴퓨터의 메모리/스토리지 계층을 바꾼다. 정리하면 "주 기억의 계층 분화"이며 "메모리와 스토리지의 융합" 이다.


메모리 계층의 분화는 스토리지가 빨랐다. 2011년~2012년 무렵에 등장한 SSD는 스토리지의 계층화를 가속했다. 그때까지는 HDD뿐이던 것이 SSD는 HDD의 상위 계층에 고속 스토리지 계층을 형성했다. 이제 SSD는 HDD 호환이라는 당초의 존재를 넘어 독자적인 고속 인터페이스를 갖춤으로써 초고속 스토리지의 위치를 견고하게 하고 있다.


photo007_s.jpg


그동안 주로 기억에 사용된 메모리는 모두 "고속이지만 휘발성"이라는 트레이드 오프를 갖고 있었다. NVDIMM은 스토리지가 갖춘 "비휘발성"이 추가되어 메모리로 다루거나 스토리지로도 다룰 수 있게 된다.


기존 DRAM DIMM에 비하면 NVDIMM의 속도는 동등하거나 저속으로 DRAM DIMM 보다 고속으로 될 수는 없다. 그래서 주로 기억은 조만간 DRAM DIMM이 상층, NVDIMM이 하층에 위치하는 2가지 계층으로 분화할 가능성이 적지 않다.


높은 캐시와 주 기억 사이를 보면 초고속 DRAM 모듈인 "HBM"이 등장하고 이미 일부 하이엔드 머신에 사용되고 있다. HBM은 캐시가 아니라 초고속 주 기억이다. 현재의 쓰임새는 초고속 메모리 버퍼가 많다.


photo008_s.jpg


그 후 HBM과 NVDIMM의 등장과 계층 분화다. HBM은 캐시와 DRAM DIMM의 성능 차이를 메운다. 그리고 NVDIMM은 스토리지와 DRAM DIMM의 성능 차이를 메운다.



photo009_s.jpg


더욱 앞을 바라보면 시스템 의해 DRAM DIMM 계층이 없어지고 주 기억은 HBM 계층과 NVDIMM 계층만으로 구성되는 미래가 보인다. NVDIMM-N은 시작에 불과하며 NVDIMM 기술이 갖춘 자유도는 DRAM DIMM을 모두 교체할 잠재력을 지니고 있다.


출처 - http://pc.watch.impress.co.jp/docs/column/semicon/1083346.html






Articles

15 16 17 18 19 20 21 22 23 24