2013년 1월 21일 월요일

메모리 이야기 - ECC UDIMM & RDIMM

서버용 메인보드에는 고가의 ECC(error checking & correction) 메모리가 쓰이는 것으로 알고 있다. 이는 오류를 검출하는 것에 그치는 것이 아니라 정정까지 한다는 측면에서 패리티 검사와는 다르다고 한다.

ECC 기능이 실제로 어떻게 구현되는지에 대해서는 자료를 읽어도 잘 모르겠고, 다만 실제 제품으로는 UDIMM(unbuffered DIMM)과 RDIMM(registerd  DIMM)이 있다. 그리고 이 둘은 자유롭게 호환되지는 않는다.

아주 기본에 속하는 사항이지만 참고로 말하자면 DIMM(dual in-line memory module)은 실제 보드의 메모리 소켓에 꽂게 되어 있는 메모리 모듈을 말한다. 여기에는 72핀이니 168핀이니 하는 외형상의 구별이 있고, 또한 속도와 관련하여 DDR이니 DDR2니 하는 여러 용어가 있다. SDRAM(synchronous dynamic RAM)은 요즘 개인용 컴퓨터나 워크스테이션에 쓰이는 DIMM의 가장 보편적인 형태라 보면 되겠다.

Unbuffered ECC 메모리에서는 메모리와 관련된 명령이 메모리 모듈로 직접 전달된다. 그러나 registered ECC 메모리에서는 우선 메모리 뱅크의 레지스터로 전달된 다음 비로소 메모리 모듈로 향한다는 것이 다르다.

내가 쓰고 있는 두 종류의 '서버급' 메인보드의 매뉴얼을 펼쳐보도록 하겠다.


  • Tyan S7002(E5620 x 2 @2.4 GHz): DDR3 800/1066/1333 RDIMM, UDIMM, up to 64 GB
  • Supermicro X8SAX(E5520 @2.27 GHz): DDR3 SDRAM for unbuffered ECC or non ECC 1366/1066/800 MHz memory

Tyan 서버를 2009년 구입할 때, 방열판이 달린 4GB DIMM(삼성 M393B5170EH1-CH9)을 2개 달았었다. 이를 2012년에 업그레이드하면서 8 MB 메모리 8개를 꽉 채웠는데, 여기에서 빼낸 4 GB 메모리를 다른 보드에 도대체 쓸 수가 없었다. 왜냐하면 이것은 바로 registered DIMM이기 때문이다. 따라서 2012년에 따로 구입해서 조립한 Supermicro 보드나 다른 데스크탑에도 끼우지 못하고 그냥 서랍 속에 방치되고 있다.

Supermicro 보드는 Tyan 서버에 꽂힌 CPU를 E5520 1개에서 E5620 2개로 업그레이드하면서 남은 E5520을 활용하기 위해 궁여지책으로 구입하게 된 것이다. LGA1366 소켓의 제온 CPU를 꽂을 수 있는 보드를 찾는 것이 꽤 어려웠었다.

요즘의 서버 메인보드는 친절하게도 ECC 메모리와 일반 메모리 모두 사용 가능하게 제조되는 편이다. 그러나 불행히도 두 가지의 ECC 메모리를 전부 사용 가능한 서버용 보드는 저렴한 가격대에서는 별로 없는 듯. 컴퓨존 사이트에서 Tyan 보드의 사양을 살펴보면 RDIMM/UDIMM을 전부 지원하지만 Supermicro의 보드는 저가격대에서는 ECC unbuffered memory만을 지원한다. ECC 메모리 자체의 가격은 registered의 경우 좀 더 비싸다.

못쓰는 메모리에 구멍을 뚫어서 열쇠고리로 쓰는 사람도 있다지만...

참고 사이트: http://www.servethehome.com/unbuffered-registered-ecc-memory-difference-ecc-udimms-rdimms/ 그리고 국문으로 되어있는 너무나 친절한 자료 사이트는 여기! http://blog.dreamwiz.com/kgstar/3377785

댓글 없음: