※ x86이 32bit용이고 x64는 64bit용입니다.


pci latency tool을 소개합니다.
http://www.parkoz.com/zboard/view.php?id=my_tips&no=9387

PCI 버스의 동작 원리.
http://www.parkoz.com/zboard/view.php?id=my_tips&no=7886

실제 PCI 레이턴시로 인해 문제가 생긴 사례
http://www.teambh.net/bbs/board.php?bo_table=tbh_hwqna&wr_id=10832


일반적으로 PCI버스는 전체 공유방식입니다. 일반적으로 PCI는 32bit*32Mhz=133MB/s인데, PCI 슬롯이 6개 있으면 총 대역폭은 133MB/s * 6 = 798MB/s가 아니라 그냥 133MB/s입니다.

길 하나를 여럿이서 공유해서 쓰니깐 사용순서를 잘 정해야 문제가 없겠죠. 이걸 정하는 규칙중 하나가 PCI latency 입니다.
PCI latency 는 해당 장치가 PCI버스를 얼마나 오랫동안 붙들고 있을 수 있느냐를 정합니다. 예를들어 사운드카드와 IDE(하드디스크)가 PCI에 물려 있다고 칩시다. 그리고 사운드카드가 동작중에 하드디스크가 사용요청을 해왔다면(우선권 얘기는 편의상 생략) 사운드카드는 PCI 버스 사용을 중지해야 겠죠. 이때 PCI latency 가 0이라면 즉각중지하겠지만 128로 되있지만 128만큼 PCI버스를 더 붙들고 있다가 내주겠죠.

대부분의 경우에는 문제가 없습니다만 가끔 문제가 생기는 경우도 있습니다. 위의 경우 하드디스크 사용중에 사운드카드가 사용요청을 해왔는데 IDE PCI latency 248씩이나 잡혀있다고 치면 하드디스크가 그만큼 오랫동안 PCI 붙들고 앉아있다가 늦게 내주니깐 소리가 끊기거나 하게 되겠죠.

많은 메인보드가 기본적인 PCI latency 조절을 지원합니다만 PCI latency tool은 각 장치별로 따로 레이턴시를 조절할 수 있습니다.
문제가 있으신 분은 맨 위에 소개글 보고 한번 조절해 보세요.

덧 : 저걸 써보시면 아시겠지만 아주 구형 보드가 아니어도 의외로 PCI에 여러장치를 물려놓은 경우가 많네요. 현재 아버지 컴에 있는 Abit KV8 Pro만 해도 애슬론64 및 HT(하이퍼트랜스포트) 지원 메인보드임에도 불구하고 PCI latency tool로 보면 무려 16개 장치가 나오며 특히 USB랑 IDE슬롯을 전부다 PCI에 물려놓은게 매우 실망스럽네요.

아마 기존에 쓰던 PCI가 설계하기 쉬우니깐 저렇게 해놓은 모양인데, PCI는 지금 시점에선 구세대 슬롯입니다. 당연히 HT나 PCIE에 물리는 것보단 레이턴시나 대역폭에서 불리합니다 - 성능이 떨어지지요.

최근 nForce칩셋의 경우 하이엔드 제품에서 SATA2를 PCI에 물려놓는 뻘짓을 한것으로 추정되어 욕 먹기도 했죠.
SATA2를 PCI에 물려놓으면 제 아무리 20만원짜리 10000RPM 랩터 150G를 4개 레이드 해놔도 PCI대역폭인 133M - 그것도 이론상 한계고 실제로는 약 100~120M - 에 묶일 뿐더러 PCI에 물려있는 다른 장치들은 IDE사용중엔 PCI대역폭을 거의 못 쓰므로 전반적인 성능저하를 일으킵니다.
nForce4 - 소켓 939 시절에도 nForce에서 SIS나 ATI메인보드로 갈아탄 분들 대부분이 체감성능이 상당히 향상되었다고 했죠.

관련 벤치마크 링크 겁니다. 궁금하신 분은 직접 가서 한번 보세요.
http://www.parkoz.com/zboard/view.php?id=int_news&no=8836