RadarURL

레이드에있어서의 Stripe size와 다시쓰기캐쉬적용의 비교

by JaeSoo posted Feb 07, 2010
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

크게 작게 위로 아래로 댓글로 가기 인쇄

6400AAKS *2 raid0 ICH9R 로 테스트하였으며,
Stripe size 를 8KB 에서 128KB 까지의 셋팅입니다.
윈도우 XP NTFS 시스템으로서 OS 기본 Cluster size 는 4KB 입니다.








































Stripe size 4KB / 다시쓰기캐쉬 off Stripe size 4KB / 다시쓰기캐쉬 on
Stripe size 8KB / 다시쓰기캐쉬 off Stripe size 8KB / 다시쓰기캐쉬 on
Stripe size 16KB / 다시쓰기캐쉬 off Stripe size 16KB / 다시쓰기캐쉬 on
Stripe size 32KB / 다시쓰기캐쉬 off Stripe size 32KB / 다시쓰기캐쉬 on
Stripe size 64KB / 다시쓰기캐쉬 off Stripe size 64KB / 다시쓰기캐쉬 on
Stripe size 128KB / 다시쓰기캐쉬 off Stripe size 128KB / 다시쓰기캐쉬 on



여기서 부터는 HD Tune 입니다.
셋팅은 64KB 로 테스트 하였습니다.



▲Stripe size 4KB / 다시쓰기캐쉬 off


▲Stripe size 4KB / 다시쓰기캐쉬 on



▲Stripe size 8KB / 다시쓰기캐쉬 off



▲Stripe size 8KB / 다시쓰기캐쉬 on



▲Stripe size 16KB / 다시쓰기캐쉬 off



▲Stripe size 16KB / 다시쓰기캐쉬 on



▲Stripe size 32KB / 다시쓰기캐쉬 off



▲Stripe size 32KB / 다시쓰기캐쉬 on



▲Stripe size 64KB / 다시쓰기캐쉬 off




▲Stripe size 64KB / 다시쓰기캐쉬 on



▲Stripe size 128KB / 다시쓰기캐쉬 off



▲Stripe size 128KB / 다시쓰기캐쉬 on


 


어떤점이 느껴지시고 어떤것이 좋아보이시나요?
전문적인 지식도 좋고 전문적이지 않은 지식도 좋습니다.



클러스터 크기의 차이점이라고하면,
기본적으로 가장많이 쓰이는 NTFS 시스템의 클러스터는 4KB 입니다.
그래서 4KB 이하의 파일을 생성하더라도 4KB 만큼의 공간을 차지하게 됩니다.


만약 이 클러스터 사이즈를 변경하면 어떤현상이 발생할까요?
이를테면 클러스터 사이즈를 64KB 로 잡았다면,
1Kbyte의 텍스트파일을 생성하더라도 실제 하드디스크 공간은 64KB 를 잡아먹게 됩니다.
다만 하드의 주소체계가 4KB에서 64KB로 바뀌었기때문에 해당 주소를 찾아가는 시간은 더 빨라지게 되는것입니다.


허나 이것은 일반시스템에서 OS의 저장방식을 일컫음이고,
raid 상의 Stripe size 는 간단히 생각해서 이쪽하드랑 저쪽하드에 데이터를 나눠 저장하는데
그 나눠서 저장하는 부분만큼의 사이즈를 얼만큼으로 정하느냐가 되게 됩니다.


즉 Stripe size를 128KB 로 잡았다면 그 이하의 데이터라면 두개의 하드로 나뉘지 않고
한개의 하드에만 저장되게 되는셈입니다.
그럼 그 이하의 사이즈에서는 raid0 로 구성된 하드로서 잇점을 전혀 살리지 못하게 되는셈이죠.


그런데 아주 아이러니 하게도 시퀸스 리드, 즉 연속적인 데이터 처리에 있어서는
당연스럽게 Stripe size 가 큰쪽이 높은속도를 보여주게 됩니다. 이것은 HDD 내의 데이터들이 매우 질서정련하게
연속된 데이터로 남아있는것이 아니기 때문입니다. 게임을 할때도 이 맵을 읽어도 이것이 하나의 파일에 있는것처럼 보여도
실제로는 압축된 파일이고 각 맵이나 객체에 대한 파일이 따로 있기때문에 절대 연속적일수가 없습니다.


그리하여 Stripe size 를 올리면 속도에 차이가 나는셈입니다.


OS 를 구성함에 있어 레이드클러스터 사이즈 ( raid0 에 있어서는 Stripe size) 라는것은
자기가 흔히 쓰는  프로그램에 따라 따로 분류되야 하는데요,
이것에 대한 쿨엔분들의 의견을 듣고자 합니다 ^^



또한 한가지 더 언급해야 할 사항이 있는데 잘보시면
다시쓰기 캐쉬의 사용성에 대한것입니다. 다시쓰기캐쉬를 이용함으로서
버퍼를 충분히 활용하고, 순간적인 데이터 입출력속도는 레이드 이전과는 비할수도 없이 늘어나게됩니다.
Burst rate 가 그것인데요, 그것이 HDD 속도를 완전히 넘어서는것은 그 이유때문입니다.
HDD 의 캐쉬는 보통 8M/ 16M / 32M 인데요 이 숫자는 사실상 데이터 저장에 있어 동영상같은것을 제외하면
상당히 큼지막한 데이터 단위입니다.
이것과 함께 소프트웨어적인 방법을 이용하기때문에 HDD 의 속도를 완연히 넘어선 순간속도를 보여주는것이죠.


허나 자세히 보면 다시쓰기캐쉬를 적용하지않았을때는 점유율에 큰 차이가 없지만,
다시쓰기 캐쉬를 적용한상태로 클러스터 사이즈를 줄이게되면 cpu 점유율은 엄청나게 늘어납니다.
128KB에서는 5.1%에 불과하지만 4KB에서는 27%까지 늘어났습니다.
듀얼코어이긴하지만 4Ghz 오버클럭상태인데 27% 라는 수치는 전혀 무시할수 있는 수치가 아닙니다 ^^
이런것들때문에 내장 레이드와 값비싼 내장메모리를 보유한 외장레이드와의 비교가 오게되는것이죠.


흔히들 사용하듯 128KB 로 사용할때는 내장레이드라도 점유율에 별것없지만 말이죠 ^^


그리고 Crystal Disk Mark 를 보시면 다시쓰기캐쉬의 폐해가 역력히 드러납니다.
클러스터 사이즈가 작아질수록 다시쓰기 캐쉬를 사용하면 그 성능이 심하게 저하되며,
또한 클러스터 사이즈와 무관하게 512K 사이즈의 테스트에서 그 쓰기 성능이 거의 3배정도 차이가납니다.
대신 매우 작은 4KB 사이즈의 파일을 읽어오는 속도에 대해서는 그 주소를 캐쉬로 가지는것인지
확실히 성능이 좋아집니다.



이것이 일전에 테스트했던


제목: Raid 에 대한 잘못된 상식 바로잡기.
링크: http://www.coolenjoy.net/bbs/cboard.php?id=hdd&no=560


이 글에 썼던 포토샵 설치에 있어서 다시쓰기캐쉬를 적용하고 한참 느려졌던 이유가 될것입니다.
포토샵같은 프로그램의 경우 512Kb 정도의 파일이 무수히 많기때문에 설치에 있어서
다시쓰기캐쉬를 끈 경우에 큰 성능향상이 있었던것이죠.


다시쓰기 캐쉬를 적용함으로서 높은클러스터를 잡고서도 작은클러스터 파일을 읽을때
순간속도에 있어 분명한 향상이있고


또한 억세스를 하는데 있어 튐현상을 확실히 줄여주지만,
분명히 손해보는 부분도 있다는것이죠 ^^


 


게시글은 충분히 토론이 되거나 토론이 부족할경우 카테고리 변경하겠습니다 ^^


--------------------
그리고 테스트하면서 절실히 느낀건데 - .-;
Crystal Mark 의 512K 라는것은 512KB가 아니라 512Kbit 인듯합니다 ㅡ,.ㅡ
망할 크리스탈~~!!!!



출처 : http://www.coolenjoy.net/bbs/zboard.php?id=hdd&no=759

Articles

1 2 3 4 5 6