메모리도 가끔 거짓말을 해요
컴퓨터에서 가장 믿음직해 보이는 부품이 메모리인데요, 사실 메모리는 가끔 거짓말을 해요. 저장해둔 0이 어느 순간 1로 바뀌어 있는 '비트 플립' 현상 때문이에요. 원인은 다양해요. 우주에서 날아온 방사선 입자가 메모리 셀을 때리기도 하고(농담이 아니라 실제로 알려진 원인 중 하나예요), 전기적 노이즈나 셀의 미세한 누설 때문에 생기기도 하죠. 한 대의 PC에서는 드문 일이지만, 메모리가 수십 GB로 커지고 서버가 수천 대가 되면 통계적으로 일상이 돼요. 구글이 자사 데이터센터를 분석한 유명한 연구에서도 메모리 오류는 생각보다 훨씬 흔하다는 게 확인됐고요. 그래서 서버에는 ECC(Error Correcting Code) 메모리를 쓰는 게 상식이에요. 여분의 칩에 검증용 정보를 함께 저장해서 오류를 감지하고, 1비트 오류는 그 자리에서 바로잡아 주거든요.
'DDR5는 ECC가 기본'이라는 말의 함정
그런데 DDR5가 나오면서 'DDR5는 ECC가 기본 탑재'라는 말이 퍼졌어요. 절반만 맞는 이야기인데요. DDR5 표준에 포함된 건 온다이(on-die) ECC라는 거예요. 이게 뭐냐면, 메모리 칩 '내부'에서 생긴 오류를 칩이 스스로 조용히 고치는 기능이에요. DDR5는 집적도가 올라가고 공정이 미세해지면서 셀 자체의 오류율이 높아졌는데, 제조사들이 수율을 맞추기 위해 넣은 자구책에 가까워요. 문제는 커버 범위예요. 데이터가 메모리 칩에서 CPU로 이동하는 전송 구간, 즉 버스에서 생기는 오류는 온다이 ECC가 전혀 못 잡아요. 그리고 더 중요한 건, 오류가 나서 고쳐졌는지 어쨌는지를 운영체제에 전혀 알려주지 않는다는 거예요. 조용히 고쳐지거나, 조용히 틀린 데이터가 흘러가거나 둘 중 하나죠.
진짜 ECC, 그러니까 사이드밴드 ECC는 달라요. 메모리 모듈(DIMM)에 여분의 메모리 칩을 추가로 달고, CPU의 메모리 컨트롤러가 읽기와 쓰기 때마다 검증 비트를 함께 확인해요. 칩 내부든 전송 구간이든 경로 전체가 보호되는 거죠. 그리고 오류가 발생하면 운영체제에 보고돼요. 리눅스라면 EDAC 서브시스템이나 rasdaemon 같은 도구로 어느 DIMM에서 오류가 몇 번 났는지 모니터링할 수 있어요. 특정 DIMM이 오류를 자주 내기 시작하면 완전히 고장 나기 전에 미리 교체할 수 있다는 뜻이에요. 이 '보고' 기능이야말로 온다이 ECC와의 결정적인 차이예요.
그런데 왜 다들 안 쓰냐면
좋은 건 알겠는데 왜 개인용 PC에는 ECC가 없을까요. 시장 세분화 때문이에요. 인텔은 일반 데스크톱 CPU에서 ECC 기능을 꺼두고, 제온 계열이나 W680 같은 워크스테이션용 칩셋을 사야만 쓸 수 있게 해놨어요. 서버 시장의 가격을 지키려는 전략이죠. AMD 라이젠은 좀 나은 편인데, CPU 차원에서 막지는 않지만 실제 동작 여부가 메인보드 제조사의 지원에 달려 있어요. 일부 보드만 ECC 지원을 명시하고 있고요. 게다가 ECC를 지원하는 DDR5 메모리는 일반 메모리보다 가격이 꽤 비싸고 유통 물량도 적어서 구하기가 번거로워요. 결국 ECC는 늘 '아는 사람만 챙기는 옵션'으로 남아 있는 거예요.
그래서 나는 챙겨야 할까요
판단 기준을 드려볼게요. 홈서버나 NAS를 운영하신다면, 특히 ZFS 파일시스템을 쓴다면 ECC를 진지하게 고려할 만해요. ZFS는 모든 데이터에 체크섬을 붙여 디스크의 오류를 잡아내는 파일시스템인데, 정작 메모리에서 데이터가 오염되면 그 노력이 무의미해질 수 있거든요. 며칠씩 돌아가는 컴파일, 렌더링, 머신러닝 학습용 워크스테이션도 마찬가지예요. 중간에 비트 하나 뒤집혀서 결과가 미묘하게 오염되는 것만큼 억울한 일이 없으니까요. 반대로 게임용 PC라면 굳이 프리미엄을 낼 필요는 없다고 봐요. 조립하실 때는 CPU, 메인보드, 메모리 세 가지가 전부 ECC를 지원하는지 각각 확인해야 한다는 것만 기억해 두세요. 하나라도 빠지면 그냥 비싼 일반 메모리가 돼버리거든요.
마무리
한 줄로 정리할게요. DDR5의 온다이 ECC는 제조사의 수율을 지키는 기능이고, 진짜 ECC는 여러분의 데이터를 지키는 기능이다. 여러분은 어떠세요? 개인 서버나 작업용 PC에 ECC 프리미엄을 낼 가치가 있다고 보시나요? 각자의 선택과 이유가 궁금해요.
🔗 출처: Hacker News