이 글은 CCL 저작자표시-비영리-변경금지 2.0 대한민국을 사용하고 있습니다.
인용 부분의 저작권은 인용 출처에 있습니다.
본 글은 이방인(ebangin127)의 개인적인 해석을 포함하고 있습니다.
절대 본 글이 JESD 등 인용문에 대한 절대적인 해석이 될 수 없음을 알려드립니다.
본 글의 내용은 일반 사용자의 보편적 이해를 위해 비유를 사용하여 정확성을 희생하였습니다.
정확한 내용을 원하시는 분들은 각 내용에 해당하는 논문을 보세요.
3. 수명 테스트 글 읽기
들어가기 전에 먼저, 도대체 이방인이 올리는 수명 테스트 글은 왜 어려운 걸까요?
그 이유는 이 글 – JESD 수명 테스트 입문하기 – 과 수명 테스트 글의 목적이 다르기 때문입니다.
제목 |
JESD 수명 테스트 | JESD 수명 테스트 입문하기 |
주안점 |
실험 결과 전달하기 최대한 옳은 내용 |
실험 내용 설명하기 최대한 쉬운 내용 |
개인의 해석 |
최대한 배제 | 해설을 위해서는 들어가야 함 |
느낌 |
이처럼 이 둘은 다른 목적을 가지고 있기 때문에, 어찌 보면 난이도가 더 어려운 글처럼 보일 수 있습니다.
그러나 실험 데이터에 직접 소감을 남기게 되면 플레임성 글이 될 수 있기 때문에, 해당 글에 뒷받침 자료를 링크하는 것 외에는 저는 별다른 해설을 하지 않고 있습니다. 반대로 생각하면 이 글은 이방인이라는 사람의 표준에 대한 개인적인 해석을 포함하고 있을 수 있다는 이야기도 됩니다. 고로 JESD에 대해서 직접 판단하고 싶으신 분들은 이 글에서 지금 하차하셔도 좋습니다.
제 수명 테스트 글의 구조는 다음과 같습니다.
[인증샷 1]
[인증샷 2]
[온도]
[SMART]
[시간 지연 & 건강 상태]
[현재 트레이스]
[비고]
이 중 비고는 특별한 전달 사항이 있을 때 간단하게 쓰는 곳이므로 여기서 따로 해설하지 않겠습니다.
자 그럼 처음부터 봅시다.
가. 인증샷 1 & 2
처음에 글에 들어오게 되면 보이는 것이 바로 인증샷입니다.
사실 이 인증샷은 고수분들이 이용하는 경우가 많은데요, 아래의 ‘온도’부터는 테스터가 선별한 자료를 보여주게 되기 때문에 그보다 더 많은 정보를 얻고 싶을 때 주로 씁니다. 마치 뼈에 남은 마지막 조그만 살점까지 발라먹는 느낌으로 파고들려 하면 필요한 것이지요. 그래서 딱히 이 부분이 중요할만한 이유는 없어서 설명할 꺼리는 없네요. 일반적으로는 그냥 테스트가 진행되고 있는 거구나, 이런 느낌으로 보시면 됩니다.
나. 온도
그 다음으로 제 글에 나오는 부분이 바로 온도입니다. 제 글에서는 온도를 두 가지로 나눠서 보여드리고 있는데요, SMART 기준 온도와 마이크론 권장 포인트 측정 온도입니다. SMART 기준 온도는 CrystalDiskInfo를 켜면 나오는 온도입니다. 중요한 건 마이크론 권장 포인트 측정 온도일겁니다.
마이크론 권장 포인트는 마이크론에서 최대 허용 온도/최소 허용 온도 등의 사양을 명시할 때 기준으로 한 곳입니다. SMART 온도는 기판의 온도를 기판에 달린 특정 센서에서 측정한 건데, 거기가 아니라 마이크론은 따로 기준이 되는 부분을 마련했습니다.
인용: http://www.micron.com/products/datasheets/3be4e97b-b78e-4707-8338-cb4a1682bc32?page=3
온도는 케이스 외장 중 SATA 케이블이 보이는 면의 정 중앙에서 측정할 때 가장 잘 나옵니다. 드라이브 라벨(스티커)이 닿는 것은 허용됩니다. PCB단의 온도는 SMART 속성 194번에 나오며 케이스 온도와는 다를 수 있습니다.
* 추가: 마이크론 권장 포인트 온도는, 검증 결과 CAS 온도계 외부 센서가 표면 온도 측정에 적합하지 않은 것으로 밝혀져 삭제했습니다. 차후 수명테스트에서는 별도 온도 측정이 필요할 경우 표면 온도 측정에 적합한(표면용 온도탐침, 박막센서) 온도계로 측정해주시기 바랍니다.
다. SMART
SMART는 알고 보면 수명 테스트가 존속할 수 있는 이유라고도 할 수 있을만큼 중요한 부분입니다. 과연 여기서는 어떤 정보를 얻을 수 있을까요.
저의 이번 글에서 나왔던 자료를 가지고 하나씩 짚어봅시다. 맨 앞의 16진수 숫자(01, 05 등)는 위의 인증샷에서 찾을 때 쓰시면 됩니다. 마지막의 F7+F8은 두 수치를 더하면 됩니다.
01 원시 읽기 오류율: 0
읽기를 수행할 때 오류가 발생하면 이 오류율이 올라갑니다. 자세한 사항은 저도 마이크론 관계자가 아니라 알 수는 없지만, 읽은 자료가 잘못되었음이 판명나거나 읽다가 말면 이 오류율이 올라갈 것으로 보입니다.
05 재할당 섹터 수: 0
재할당 섹터는 배드 섹터와 다릅니다. 업체에 따라 구현이 다르긴 하지만, 재할당 섹터는 보통 ‘은퇴’라고 볼 수 있습니다. 업체마다 은퇴의 기준이 다른 것처럼, 재할당 섹터도 그렇습니다. SSD의 경우 너무 늙어서 아무 일도 할 수 없음에도 은퇴시키지 않으면 그것이 HDTune 등에서 검사하면 나오는 배드 섹터로서 사용자에게 피해를 주게 됩니다.
C4 재할당 이벤트 개수: 16
위와 마찬가지입니다. 한 이벤트로 여러 섹터를 은퇴시킬 수 있기 때문에 위의 수치와 아래 수치가 항상 일치하는 건 아닙니다. 마이크론의 경우 이 수치가 기본으로 올라가 있는 모습을 볼 수 있는데 이 부분은 저도 알 수 없습니다.
AB 프로그램 실패: 0
쓰기에 실패하면 여기에 기록됩니다. 프로그램=쓰기입니다.
AC 지우기 실패: 0
지우기에 실패하면 여기에 기록됩니다. 덮어쓰기=지우기+프로그램입니다.
AD 평균 블록지우기 횟수: 247
(웨어레벨링 카운트)
SSD는 쓰면 쓸수록 닳기 때문에 최대한 적게 닳는 것이 중요합니다. 그러나 현실적으로는 쓴 것보다도 적게 닳는 것은 불가능하기 때문에, 적어도 “비슷하게” 닳게 만들려고 노력합니다. 평균 블록지우기 횟수는 SSD가 전체적으로 몇 번 쓰였는지를 알려줍니다. 여기에 SSD의 용량을 곱하면 현재 낸드 쓰기량을 대략적으로 구할 수 있습니다.
B4 예약 낸드 블록: 1036
누구를 은퇴시켜야 하는데 자리를 채울 사람이 없습니다. 그렇다면 그 부분의 담당자가 없어 불편하겠죠. 예약 낸드 블록은 이럴 때 투입시킬 수 있는 인력이 얼마나 남아있는지를 보여줍니다. 예약 낸드 블록이 다 닳게 되면 대체할 사람이 없기 때문에 고스란히 배드 섹터가 됩니다.
CA 사용된 수명(%): 8
자신이 평가한 자신의 건강 상태입니다. 이 기준은 업체만이 알겠지요. 테스트를 보면 수명 끝날때까지 이 수치가 많이 닳지 않는 제품들이 있는데 그러면 곤란합니다.
F7 토탈 호스트 쓰기: 2.76TBW
F7+F8 토탈 낸드 쓰기: 50.70TBW
유일하게 원래 수치가 아니라 환산 수치로 등장합니다. 왜냐하면 이 값들은 각각 단위가 있고, 그 단위가 실제 단위와 일치하지 않아 이해하기 어렵기 때문입니다. 토탈 호스트 쓰기와 토탈 낸드 쓰기의 관계에 대해서 여기서 쓰면 너무 길어져서 다음에 알아보도록 합시다.
라. 시간 지연 & 건강 상태
시간 지연은 말 그대로 명령을 시켰을 때 얼마만에 돌아오냐? 하는 부분입니다.
이 부분은 원래 속도로도 환산할 수 있는데요, 10초만에 100M를 달린다와 10M/s가 같기 때문입니다.
그런데 굳이 시간 지연으로 나타낸 이유는, 이 수치가 프리징과 관련이 있기 때문입니다.
흔히 무슨 일을 많이 시키면 매우 느려지는 현상이 있을 때 프리징이 왔다고 합니다.
0.03MB/s라고 하면 ‘많이 느리네’라고 생각하실겁니다. 그러나 1MB짜리 작업에 30000ms, 즉 30초가 걸린다고 한다면? 감이 오실겁니다. 바로 30초동안 시스템이 멈추는 증상이 나타났다는 겁니다.
그래픽 카드 벤치마크에서 평균 프레임률만 표시하다가 요즘 최소 프레임률을 표시하게 되었습니다. 그 이유는 평균 프레임률이 아무리 빨라도 순간순간 복잡한 장면에서 멈칫하게 되면 그 부분이 사용자들에게 매우 크게 느껴지기 때문입니다.
요즘 SSD들은 다 빠릅니다. 그러나 저런 문제가 있는 SSD들이 가끔 보이고, 이게 제가 시간 지연을 도입하게 된 배경입니다.
건강 상태는 CrystalDiskInfo에서 해석한 SSD의 상태입니다. 저는 저 프로그램의 개발 상세를 잘 몰라서 이게 어떤 의미를 갖는지는 잘 모르겠습니다.
마. 현재 트레이스
지난 글을 보신 분들은 트레이스가 ‘사용자의 PC에서 일어나는 모든 명령을 기록한 것’이라는 건 아실겁니다. JEDEC에서는 테스트를 쉽게 할 수 있도록 표준 트레이스를 올려놓고 있는데요, 이 트레이스를 몇 번 SSD에서 반복 수행했는지를 나타내는 수치입니다. 어떻게 보면 보시는 분들과는 그렇게 관련이 있는 수치는 아닙니다.
일일 쓰기 기준… 이것도 위의 토탈 쓰기, WAF와 함께 새로운 글로 다음에 다뤄질 예정입니다.
이렇게 수명 테스트 글을 간단하게 한 번 돌아봤습니다. 생각보다 글이 꽤 길어졌네요. 그럼에도 불구하고 아직 다루지 못한 부분들이 남아있습니다. 이 부분으로 다음 시간에 만납시다 ^^