초고속 SSD와 DDR5는 유니버설 메모리의 꿈을 깨버리는가?
디지털 컴퓨터 설계 구조의 원형인 폰 노이만 아키텍처는 오늘날까지 큰 변함이 없다. 데이터와 이를 다루는 코드가 구분되지 않은 채 하나의 메모리에 담기고 CPU는 이를 읽어 들여 일을 처리한다. 너무 당연해져 자연스러운 상식이다. 우리는 드라이브에 프로그램도 데이터도 함께 담아 두고, 메모리(RAM)에는 코드도 데이터도 함께 올라온다.
그런데 메모리의 속도는 언제나 CPU의 처리 속도보다 느리기에 컴퓨터는 어느 정도 늘 대기하고 있다. 이를 폰노이만 병목이라 한다.
느린 PC는 그저 속 터지고 마는 일이지만, 느린 서버는 돈을 날린다. 레이턴시(지연)는 금전으로 환산될 수 있다. 이미 10년도 전에 아마존은 100밀리 초의 레이턴시마다 매출 1%가 날아간다고 말한 적이 있고, 0.5 초 이상 지연되면 사이트 트래픽을 20% 떨어뜨린다고 구글이 이야기하기도 했다.
네트워크를 빼면 역시 가장 답답한 부분은 저장 장치로부터 데이터를 읽어 오는 일, 역시 비좁은 스토리지 I/O는 역사적 병목 구간이다. 요즈음은 HDD 대신 SSD를 많이 쓰지만 그래도 프로그램 하나 띄우려 하거나 데이터를 읽어 들일 때 여전히 모래시계가 반긴다. 이를 고속화하기 위한 다양한 전송 프로토콜에 인터페이스에 오늘도 진보는 멈추지 않는다.
그 병목을 아예 우회하고자 서버용 소프트웨어는 인메모리(in-memory) 방식을 고안해 내기도 했다. 코드는 물론 실데이터, 인덱스, 메타데이터 등 모든 것을 속도 빠른 휘발성 DRAM 위에 띄워 놓는다. 메모리 위에 떠 있으니 극한의 레이턴시 퍼포먼스를 보여 준다.
하지만 휘발성이라는 말처럼 전원이 꺼지면 다 사라진다. 그렇다면 언젠가는 결국 비휘발성 공간으로 옮겨줘야 하는 일이니 불안하기도 하고 번잡하기도 하다. 따라서 대개 잠시 담아 두는 역할에 머무르기 마련이다.
그렇다면 저장 드라이브와 램을 구분하지 않고 아예 비휘발성 메모리 하나를 바로 쓰면 어떨까. 프로그램과 데이터 로딩이 필요 없는 유니버설 메모리의 꿈이었다.
인텔 옵테인(Optane)은 이를 현실로 만들려 했다. 인텔이 SSD 사업을 SK하이닉스에 10조 원에 넘기면서도 유독 옵테인 사업만은 쥐고 놓지 않았는데, 바로 유니버설 메모리의 못다한 꿈이 담겨 있어 각별했나 보다. 그러나 옵테인은 성공했다고 보기 힘들다. SSD치고는 빨랐지만, DRAM 메모리라 보기에는 너무 느렸다. 달리 말하면 계륵이었다.
물론 SCM(Storage Class Memory), 즉 스토리지클래스 메모리라고 부르는 제품 카테고리를 만들었고, 정말로 SSD 제품 이외에 DRAM용 DIMM 슬롯에 꽂을 수 있는 제품도 나왔다.
하지만 슬롯이 여전히 구분되어 있다는 사실은 메모리가 아무리 제 홀로 유니버설이고 싶어도 역할은 그대로 나뉘어 있다는 뜻이다.
옵테인을 SSD 슬롯에 꽂는 SSD로 쓰기에는 너무 비쌌다. 그렇다고 일반 램에 꽂아 쓰려니 DDR-T라는 인텔 특유의 프로토콜을 다룰 줄 아는 특별한 인텔 제온 프로세서에서만 작동했다. 또한, 윈도나 리눅스가 이를 이해해야 하는데 아직 많은 부분이 개발 도중이다. 전원이 꺼져도 기억을 잃지 않는 더 큰 용량의 메모리라지만, 그걸 이용할 수 있는 환경이 아직 갖춰지지 않았다.
시간은 잘도 흐른다. 어느덧 SSD는 옵테인을 위협할 정도로 충분히 빨라지고 있었다. 요즘 시장에서 살 수 있는 초고속 NVMe SSD는 초당 4GB다. 불과 10여 년 전 널리 쓰이던 DDR2 메모리의 속도를 이제 SSD의 속도가 따라잡았다.
화제가 되었던 M1 맥의 경우 같은 해에 발매된 인텔 맥에 비해 SSD 속도가 2배 이상 빨라졌는데, 설령 스왑(메모리 부족을 피해 SSD나 HDD의 공간으로 메모리 내용을 옮겨 가며 사용하는 일)이 일어나도 그 스트레스를 사용자가 잘 느끼지 못하게 되었다. 충분히 빨라진 SSD는 메모리와 구분되지 않는 현상이 정말 벌어지고 있었다.
하지만 그렇다고 메모리가 SSD로 통일되는 일은 벌어질 리 없는데, 지금 널리 쓰이는 DDR4 메모리는 어느덧 초당 20GB로 저 멀리 앞서가 버렸기 때문이다. 요즈음 신형 PC의 메모리 16GB가 꽉 차는 데는 1초도 안 걸리지만, SSD였다면 아무리 빨라도 4초나 걸린다. 게다가 올해 출시가 본격 시작될 DDR5는 50GB다. 또한 메모리(RAM)는 이름이 나타내고 있는 것처럼 ‘랜덤 액세스(RA)’에 강하고 SSD는 연속 읽기 쓰기에 강하다. SSD에게는 또 수명마저 있다.
기술은 많은 것을 통합해 버릴 것처럼 보이지만, 기술이 나뉜 채 있는 이유는 이처럼 다 제각각의 강점과 역할이 있어서다. 예컨대 SSD 천하라지만 여전히 HDD는 건재하다. 집에 수 TB 용량의 저장소를 SSD로 마련할 만큼의 재력은 모든 이에게 있지 않기 때문이다.