테크노아
> 기획&벤치 > 강좌
ATA/100의 비밀 - 2. 속도 (2) 전송률과 속도
테크노아  |  webmaster@technoa.co.kr
폰트키우기 폰트줄이기 프린트하기 메일보내기 신고하기
승인 2001.06.29  11:38:08
트위터 페이스북 미투데이 요즘 네이버 구글 msn


[강좌] ATA/100의 비밀 - 2. 속도 (2) 전송률과 속도


ATA100과 ATA33은 정말로 세배나 차이가 날까..

드라이브의 성능과 데이터 전송률

흔히 볼 수 있는 질문중에서 이런것이 있다. 'ATA 66은 ATA 33보다 2배가 빠른가?' 같은 것이다. 이러한 질문은 일면 옳을수도 있고, 다르게 생각하면 틀릴수도 있다. 문제는 저 명제에서 지칭하고 있는 각각의 대상이 어떤것이냐이다. 여기서 이야기하고 있는 ATA 66/33이라는 것이 인터페이스 그 자체를 지칭하는 것이라면, ATA 66이 ATA 33보다 2배의 데이터 전송능력을 가지고 있다는 것이 맞다. 그러나 대개의 사용자들이 질문하는 저 내용에서의 'ATA 66'이라는 것은 인터페이스를 지칭하는 것이 아니라 'ATA 66 인터페이스를 가지고 있는 디바이스(하드디스크 드라이브, CD-ROM 드라이브, 등등)'를 지칭하는 것이며, 문제는 바로 여기에서 발생한다.


일반적으로 사용하는 7,200RPM 하드디스크 드라이브의 지속적 데이터 전송속도
가장 빠른 구간에서도 40MB/s 정도에 불과하다.

일반적인 하드디스크 드라이브의 전송속도는 7,200RPM을 기준으로 약 30~40MB/s 정도이다. 물론 플래터 밀도에 따라서 달라지겠지만, '지속적인 데이터 전송속도'는 그정도에 불과하다. 물론 5,400RPM이라면 더욱 떨어진다. 여기서 필자가 '지속적인'이라는 표현을 사용한 것에 유의하자. '지속적인' 데이터 전송속도와 '순간적인' 데이터 전송속도에 대해서는 뒤에서 다시 이야기할 것이다. 여하튼, 하드디스크 드라이브가 10,000RPM이라고 하더라도 지속적인 데이터 전송속도는 아무리 높게 잡아도 80MB/s에 불과하다. 결국, ATA/66이나 100이라는 인터페이스를 가지고 있다고 해도 실질적으로 '거대한' 데이터를 옮기는데에는 거의 도움이 되지 않는다. 하물며, 5,400RPM 짜리 하드디스크 드라이브라면야 ATA/33이나 66이나 100이나 일단은 거기서 거기라고 할 수 있겠다.

고속 인터페이스의 용도 - 1. RAID

RAID라는 것은 'Redundant Array of Independent Disk'의 약자이다. 그대로 해석자면, 독자적인 여분의 디스크를 가지고 있는 디스크들의 집합' 정도가 되는데, 그 목적은 '여분의 디스크에 여분의 정보를 담아서 디스크가 손상되었을 경우 이러한 여분의 데이터를 사용하에 본래의 데이터를 복구하는 것'이다. 최근에는 그 의미가 약간 변질되어서 여러개의 디스크를 묶어서 사용하면 죄다 RAID로 간주하기도 한다. RAID의 특징과 장단점, 종류들에 대해서는 나중에 더 자세한 강좌를 통해서 소개하겠지만, 간단한 종류와 특징은 이전의 리뷰에서 잠시 언급한 적이 있으므로 해당 글을 참조하도록 하자.

관련리뷰 Link >> RAID에 대한 간략한 소개 (Abit VP6 메인보드 리뷰 중)

RAID는 다수의 디스크 드라이브를 사용해서 데이터의 신뢰도를 향상시키기도 하지만, I/O 성능을 극대화하기도 한다. 이 때, 다수의 드라이브가 동시에 동작함으로써 극대화되는 I/O 성능을 받쳐주기 위해서 고속의 인터페이스가 필요해진다. 예를 들어서 RAID 0으로 구성된 2개의 7,200RPM 하드디스크 드라이브가 있다고 치자. 이 때, 하나의 디스크가 최대 40MB/s의 전송속도를 가지므로 이론적으로 이 때 만들어진 레이드 셋은 최대 80MB/s의 데이터 전송속도를 가질 수 있다. 아래의 그래프를 보자.


단일 디스크와 RAID 0일 경우의 데이터 전송률의 차이
5,400RPM의 HDD를 사용했기 때문에 단일디스크의 최대전송률은 30MB/s 정도이다

RAID 0은 2개의 디스크 드라이브를 사용해서 2배의 I/O 성능과 2배의 용량을 얻는다.(물론, 데이터 신뢰도는 단일 디스크일때보다 떨어진다.) 그래서 하나의 HDD를 사용할 때 최대 30MB/s 정도이던 전송률이 RAID 0이 되면서 좀 불안하기는 하지만(EIDE RAID라는 것 자체가 본래 불안한 것이다. -_-;) 최대 60MB/s 정도의 전송률을 보일 정도로 향상되었음을 알 수 있다.

고속 인터페이스는 바로 이러한 용도에서 큰 역할을 한다. 앞서 언급한것과 같은 7,200RPM의 HDD를 2개 연결했을 때, 데이터 전송률은 최대 80MB/s에 달한다. 그러나 여기서 ATA 66이나 그 이하의 인터페이스가 사용된다면, 결국 RAID 셋의 성능을 제한하는 격이 된다. HDD 자체는 더욱 빠른 속도를 낼 수 있으나 인터페이스가 그 속도를 막고있는 격이며, 페라리가 68번 지방국도를 어기적거리며 달리고 있는 꼴이 된다.(68번 지방국도가 있던가? -_-;) 이 때라면 당연히 ATA/100 정도의 고속 인터페이스를 제공해 주어야 하며, 그래야 제대로 된 성능을 발휘할 수 있다.

고속 인터페이스의 용도 - 2. 버퍼

버퍼(buffer), 혹은 캐시(cache)라는 것은 빠른 기기와 느린 기기의 중간에서 속도의 완충재 역할을 하는 부분이다. CD-RW에서 사용되는 버퍼를 제외한 나머지는 모두 한가지 원리에 기반하고 있다. 바로 '한번 A라는 데이터가 사용되었을 경우 그 다음에는 A라는 데이터가 다시 사용되거나 A 바로 다음에 있는 데이터가 사용될 확률이 높다'라는 원리이다. 이것에 의해서 버퍼는 다음과 같이 동작한다.

위 일러스트의 상황은 이러하다. 우선, 빠른 기기와 느린 기기가 서로 연결되어 있는데, 이 중간에 버퍼가 끼여있다. 그리고, 느린 기기에는 빠른 쪽에서 데이터 처리를 위해서 필요로 하는 데이터가 들어있다. 빠른 쪽에서 데이터를 요구하면 느린 쪽에서는 데이터를 보내주기 시작한다. 다만, 속도가 느리기 때문에 빠른 쪽에서는 시간을 낭비하고 있다.

전달되는 데이터는 버퍼를 거쳐서 빠른 쪽으로 전해진다. 이 때, 버퍼를 거치면서 버퍼는 전달되는 데이터의 사본을 남겨둔다. 그리고, 빠른 쪽에서 데이터를 처리하거나 다른 일을 하느라 데이터의 요구가 없어도 버퍼는 버퍼의 용량이 닿는 한도까지 느린 쪽에서 데이터를 읽어서 채워놓는다. 물론 이 때 읽어들이는 데이터는 앞서 읽어들인 것의 바로 다음에 이어지는 데이터들이다.

이 상황에서 빠른 기기가 데이터를 요구하게 될 때, 버퍼 안에 요구되는 데이터가 들어있다면, 느린 기기에서 데이터를 읽어가는 것이 아니라, 버퍼에서 직접 데이터를 읽어간다. 버퍼는 용량이 작은 대신에 그 속도가 대개 빠른 쪽의 속도에 더 가깝다. 그래서 느린쪽에서 데이터를 읽어들이는 것보다는 월등히 수월하게 데이터를 읽어들일 수 있다.

이제 본론으로 돌아가서, 버퍼가 인터페이스와 어떤 관계를 가지는지를 생각해보자. 위의 일러스트에서 Fast라고 쓰여 있는 빠른 기기는 바로 시스템을 의미한다. 그리고, Slow는 하드디스크 드라이브의 내부, 그리고 버퍼는 하드디스크에 탑재되는 바로 그 버퍼를 말한다.

그리고, ATA 인터페이스는 버퍼에 연결되어 있고, 버퍼와 디스크 자체는 하드디스크 드라이브의 내부 인터페이스에 의해서 연결되어 있다. 디스크와 버퍼 사이의 내부 인터페이스는 사실 사용자가 관여할 부분이 아니다. 하드디스크 드라이브 조립공정에서만 관여될 뿐이다. 다만, 눈여겨 보아야 하는것은 바로 '버퍼와 시스템을 이어주는' ATA 인터페이스이다. 중요한 것은 ATA 인터페이스가 시스템과 '버퍼' 사이에 있다는 것이다.


후지쯔 알레그로 7 하드디스크 드라이브에 탑재된 8MB의 버퍼메모리
큰 사진을 보려면 사진을 클릭

하드디스크 드라이브의 버퍼는 대개 SDRAM을 사용한다. SDRAM의 종류에 따라 다르겠지만, 대개 800MB/s에서 1GB/s 정도의 메모리 입출력 대역폭을 갖는다. 이는 ATA 인터페이스가 가지고 있는 데이터 전송 대역폭의 열배 정도에 해당하는 것이다.

이제, 눈치빠른 독자라면 필자가 무엇을 말하고자 하는지를 이해했을 것이라고 생각한다. 바로, ATA 인터페이스(를 비롯한 모든 스토리지 기기의 인터페이스)는 버퍼에서 데이터를 읽어오거나 버퍼로 기록할 때 가장 큰 성능을 가진다. 버퍼 메모리는 외부 인터페이스에 비해서는 월등히 빠른 속도로 동작하므로, 아무리 인터페이스가 빨라져도 버퍼와의 데이터 전송이 일어나는 동안이라면 그 인터페이스는 최고의 효율로 동작한다. 그래서, 버퍼가 크면 클수록 빠른 인터페이스의 잇점을 많이 활용할 수 있다. 그래서 최근 만들어지고 있는 고가의 하드디스크 드라이브들에서는 대개 8MB 혹은 16MB 등의 대용량 버퍼 메모리를 탑재하고 있는 것을 자주 볼 수 있다.

기본적으로 하드디스크 드라이브의 속도는 40MB/s 이하, 즉 ATA 66 정도면 충분히 커버하고도 남음이 있으며, 5,400RPM 하드디스크 드라이브라면 ATA 33으로도 '전송률'은 충분히 충족시켜주지만, 버퍼에서 옮겨지는 데이터에 대해서는 인터페이스가 빠르면 빠를수록 그 효율도 높아진다.

앞서의 질문을 생각해보자. ATA 33 에서 ATA 66이나 100으로 업그레이드했을때의 속도 향상은 하드디스크 드라이브의 성능에 비추어본다면 거의 없다고 보아도 좋다. 그러나 버퍼 메모리로 인한 성능향상을 감안해야 한다. 그 용량에 따라서 다르겠지만 최근 출시되는 하드디스크 드라이브에 탑재되어 있는 2MB의 버퍼 메모리는 약 5% 정도의 성능향상을 가져올 수 있다. 물론 이러한 성능향상은 자잘한 데이터를 자주 긁어올 때 더욱 커지며, 거대한 데이터를 다루는 작업에서는 거의 이득을 볼 수 없다는 것도 고려해야 할 것이다.

테크노아의 다른기사 보기  
폰트키우기 폰트줄이기 프린트하기 메일보내기 신고하기
트위터 페이스북 미투데이 요즘 네이버 구글 msn 뒤로가기 위로가기
이 기사에 대한 댓글 이야기 (0)
자동등록방지용 코드를 입력하세요!   
확인
- 200자까지 쓰실 수 있습니다. (현재 0 byte / 최대 400byte)
- 욕설등 인신공격성 글은 삭제 합니다. [운영원칙]
이 기사에 대한 댓글 이야기 (0)
e피플
[e피플] 나이가 대수? 공조냉동기계기능사 필기시험 100점 맞은 NCS교육생
[e피플] 나이가 대수? 공조냉동기계기능사 필기시험 100점 맞은 NCS교육생
나이가 들면 들수록 공부하기가 어렵다는 말이 있다. 더군다나 실업인 상태에서 공부하는 것이라면 부담이 더 클 수 밖에 없다.하지만 이를 비웃듯이 극복하고, 올해 2월 공조냉동기능사...

제호 : 테크노아  |  발행인 : 김필규  |  편집인 : 김필규  |  청소년보호책임자 : 박상규
서울지사 : 서울특별시 구로구 디지털로32가길 18, 7F | 제보 : it@technoa.co.kr
발행소 : 전라북도 전주시 완산구 전룡6길 6 3F | 등록번호 : 전라북도 아00057
등록일자 : 2008년 1월 14일  |  대표전화 : 070-8755-6291  |  FAX : 02-6280-9562
Copyright © 1999-2017 테크노아. All rights reserved. mail to technoa@technoa.co.kr