개인적으로 인텔보다 AMD를 선호하기 때문에 데스크탑과 노트북을 모두 AMD 시스템으로 사용하고 있습니다.
이번 포스트에서 말씀드릴 AHCI 모드는 메인보드의 사우스브릿지 칩셋과 관련이 있는데요, 제 데스크탑은 SB750 칩셋이 노트북은 Hudson-1(SB800) 칩셋이 탑재되어 있습니다.
AHCI 모드에서 핵심적인 기능 중에 하나가 바로 NCQ입니다. 쉽게 말씀드리면 기존의 순차적인 디스크 섹터 접근이 아니라 필요한 데이터 구간으로 연속적으로 접근함으로써 디스크 성능을 높이는 기술인데요, 일반 유저들이 AHCI 모드를 사용하는 대부분의 이유가 바로 이 NCQ 활성화를 통한 성능 향상이라고 해도 과언이 아닙니다.
하지만 유독 AMD 사우스브릿지에서 NCQ를 활성화하는 방법에 대해 여러가지 말들이 많습니다.
가장 많이 퍼져있는 내용이 AHCI 모드로 설정하고 최신 AMD AHCI 드라이버를 설치하더라도 NCQ가 활성화되지 않으니, 현재 많이 사용되고 있는 윈도7이 아닌 과거 윈도 비스타 시절에 AMD에서 제공하던 구 버전의 AHCI-RAID 통합 드라이버(AMD AHCI Compatible RAID Controller Driver)를 설치하고 RAIDXpert 툴을 설치해 NCQ를 활성화하라는 내용입니다. 사실 사용자가 NCQ가 활성화되어 있는지 확인할 방법이 많지 않기 때문에 구 버전 드라이버를 설치하고 NCQ 활성화 정보를 보여주고 설정할 수 있는 RAIDXpert를 이용하는 것도 한가지 방법이 될 수 있습니다.
그러나
문제는 최신 AMD AHCI 드라이버를 설치할 경우 NCQ가 활성화되지 않는다는 정보는 잘못된 사실이란 점입니다.
위 내용 중에서 굳이 구 버전의 AHCI-RAID 통합 드라이버를 사용하는 이유는 RAIDXpert에서 디스크를 인식시키기 위함입니다. RAIDXpert는 프로그램 제목에서 알 수 있는 RAID 모드에서의 각종 설정을 용이하게 해주는 기능을 담고 있는데, 과거의 AHCI-RAID 통합 드라이버는 양 모드간 별도의 드라이버가 제공되지 않고 하나의 드라이버를 사용했기 때문에 AHCI 모드를 사용 중인 디스크도 RAIDXpert에서 인식이 됐던 것입니다.
현재 AMD에서 제공하고 있는 최신 칩셋 드라이버의 경우 AHCI 드라이버와 RAID 드라이버를 별도로 분리해 배포되기 때문에 AHCI 드라이버를 설치할 경우 당연히 RAIDXpert에서 디스크를 인식할 수 없고, NCQ 활성화 관련 항목도 확인할 수 없습니다. 이 때문에 AHCI 드라이버를 사용할 경우 NCQ 활성화를 할 수 없다는 루머가 돌게 되었는데..
이와 관련해 해외 포럼에서는 이미 오래 전에 결론이 난 상황입니다.
잠시 2010년도에 올라왔던 NCQ 관련 글을 보고 가겠습니다.
인텔 X-25M 80GB SSD를 사용 중인 한 사용자가 해외의 저장장치 관련 포럼에 AHCI 모드시 RAIDXpert에서 NCQ 활성화 상태를 확인할 수 없다는 글을 올리며 조언을 구하고 있습니다. 국내의 블로그나 커뮤니티 등지에서 의문을 불러오던 내용과 동일합니다.
여러 글들이 오갔으나 다음 답변 글로 상황이 종결되었습니다.
한 사용자가 RAID 모드의 HDD는 RAIDXpert에서 사용할 수 있었으나 AHCI 모드의 SSD는 RAIDXpert에서 인식되지 않았다며 해당 문제에 관한 AMD로부터의 답변을 인용했는데, AMD는 "NCQ is enabled as default in our SATA AHCI driver. However, if you are using our SATA RAID driver, NCQ is disabled as default."이란 답변을 했습니다.
AMD의 SATA AHCI Driver에서 NCQ는 기본 활성화되어 있지만, RAID Driver에서는 NCQ가 비활성화되어있는 것이 기본 상태라는 것입니다. 한마디로 RAIDXpert에서 NCQ를 활성화 설정을 해줘야만 하는 것처럼 보이는 이유는 RAID 드라이버는 NCQ 비활성화가 기본 상태이기 때문입니다. 최신 AHCI Driver를 설치한다면 NCQ가 기본 활성화되어 있기 때문에 RAID 모드(0~5) 등을 설정하기 위한 RAIDXpert에서 굳이 인식할 필요도, 설정할 필요도 없다는 것입니다.
결론은 AMD 사우스브릿지 칩셋과 AHCI 디스크를 사용하면서 NCQ를 활성화하고자 한다면, AMD에서 제공하는 최신 AHCI 드라이버가 포함된 AMD Chipset Drivers을 설치하시기 바랍니다. 굳이 윈도 비스타 시절에 배포되던 AHCI-RAID 통합 드라이버를 사용할 이유도, RAIDXpert에서 디스크를 인식시키고 활성화 시킬 이유도 없습니다.
덧붙이자면 RAID는 애초에 여러 디스크를 하나의 드라이브로 묶어 사용하기 위해 나온 개념이기 때문에 다양한 RAID 모드와 설정 방법이 존재하며 이를 관리하는 툴이 RAIDXpert입니다. 이에 반해 Advanced Host Control Interface의 약자인 AHCI는 기존 IDE(PATA) 모드에서 제공하지 않는 SATA 만의 고급 기능인 핫플러깅, NCQ 등을 제공하기 위해 만들어진 개념입니다. 물론 AHCI는 단독 AHCI모드와 RAID와 결합한 AHCI/RAID 모드를 제공함으로써 복수의 디스크를 하나로 묶는 기능도 제공합니다.
요약하자면 단일 드라이브에서 NCQ 등을 활성화시키기 위해서는 AMD에서 제공하는 최신 AMD Chipset Drivers를 설치하는 것만으로 준비가 끝납니다. RAID나 AHCI/RAID 모드를 사용하고자 한다면 AMD에서 제공하는 최신 RAID Driver를 설치하고, 여기에 더해 AHCI 기능을 사용하고자 한다면 RAIDXpert를 설치해 NCQ 기능이나 쓰기캐쉬 기능을 활성화시켜주면 AHCI/RAID 모드가 되는 것입니다.
추가로 쓰기캐쉬 활성화 대해서도 덧붙입니다. 쓰기캐쉬는 워낙 기초적인 기능이며 IDE PATA 시절부터 적용되어 온 비교적 오래된 기술이기 때문에 이에 대한 옵션 설정은 굳이 기재하지 않아도 될 것이라 생각했지만, 여전히 RAIDXpert를 사용하지 않을 경우 AHCI에서 쓰기캐쉬 활성화를 할 수 없다는 주장이 있어 본문에 추가합니다.
쓰기 캐쉬는 윈도 제어판 장치 관리자에서 해당 디스크를 열어 정책탭을 열면 쓰기 캐쉬 활성화 옵션 및 설정이 가능합니다. 이것은 AHCI나 RAID에서 등장한 기술이 아니기 때문에 기존 IDE PATA 디스크에서도 설정이 가능한 부분입니다.
다시 한 번 말씀드리지만 어디까지나 RAID는 복수의 디스크를 하나의 디스크처럼 만들어 큰 용량의 저장공간을 만들기 위한 기술이고, AHCI는 SATA 인터페이스에서 제공하는 핫플러깅 또는 NCQ 등의 기술을 제공하기 위해 만들어진 기술입니다. 물론 두가지 방식 모두 SATA 인터페이스를 기반으로 하고 있기 때문에 드라이버와 계층 구조가 유사한 부분이 있습니다. 이 때문에 과거 AMD의 AHCI-RAID 통합 드라이버와 같은 물건이 나오기도 했었구요. 하지만 현재 각 모드에 최적화된 드라이버가 나온 상황이라면 그에 맞는 최신 드라이버를 사용하는 것이 좋습니다.
더군다나 AHCI의 경우 핫플러깅이나 NCQ 등을 사용하기 위한 목적으로 등장한 기술인데 AHCI 전용 드라이버를 설치할 경우 NCQ가 되지 않는다고 하는 것은 AHCI의 존재의 이유를 부정하는 것과 마찬가지 아닐까 싶습니다. 당연히 AHCI 드라이버 상태에서는 NCQ가 기본 활성화되며, 사용 목적이 다른 RAID 모드와 RAID 드라이버에서는 NCQ가 기본 상태에서 활성화될 이유가 없습니다. 이 때문에 RAIDXpert에서 추가로 설정을 해줘야 하는 것이구요. NCQ나 핫플러깅과 같은 AHCI 기본 기능을 너무나 당연히 제공해야 하는 또는 제공하고 있는 AHCI 전용 드라이버는 일부 RAIDXpert를 맹신하는 유저들에 의해 고유 기능이 제공되지 않는다는 오명을 쓰고 있는 것입니다.
AMD 사우스브릿지 칩셋을 사용하면서 NCQ 활성화를 위해 구 버전 드라이버를 설치할까 고민하시는 분들에게 도움이 되었으면 합니다.
* SB600 윈도7 AHCI/RAID 드라이버 설치하기 - http://kju135.tistory.com/159