SSD 성능
성능은 크게 "4대 성능"으로 나타낼 수 있다.
Sequential Read/Write 와 Random Read/Write
Sequential Read/Write
→ Bandwidth(MB/s, KB/s 등) 단위
→ 순차적인 접근으로 오버헤드가 없기에 속도가 빠른편
Random Read/Write
→ IOPS 단위
→ 데이터 접근을 위해서 추가적인 검색이 필요해 순차 접근보다 상대적으로 느리다.
IOPS란
Input/Output Operations Per Second 약자로
"초(second)당 읽고 쓰기(Input & Ouput) 횟수"를 의미한다.
ex) 16,000 IOPS * 16KiB = 256000 KiB/s = 256000 / 1024 = 250MiB/s
Random과 Sequential 단위를 왜 다르게 사용할까?
사실, Bandwidth = IOPS * Block Size 로
두 수치는 서로 비례하는 값이다.
그럼에도 단위를 통일하지 않은 이유는 데이터 형태를 생각하면 짐작할 수 있다.
Case) 용량이 큰 비디오 파일 1개 저장할 때 시간이 얼마나 걸릴까?
→ (전체 용량 / Bandwidth)
Case) 아주 작은 파일에 대해 같은 작업을 여러번 반복한다면?
→ "일정 시간동안 같은 작업을 몇번 반복하는지"
IOPS 계산 방법
초당 데이터 전송량 = IOPS * 블럭 크기
→ IOPS = 초당 데이터 전송량 / 블럭 크기
→ IOPS * 블럭 크기 = 초당 데이터 전송량
→ IOPS * 블럭 크기 * 수행 시간 = Total IO 양
→ 수행 시간 = Total IO 양 / (IOPS * 블럭 크기) = 파일을 옮기는데 걸리는 시간
Latency
입출력 명령이 전달된 후 응답 받기까지 시간
일반적으로는 μs(마이크로 초) 또는 ms(밀리 초) 사용
Throughput
"전송 속도"를 나타내며,일반적으로 KB/s 또는 MB/s 사용
예를 들어 1000 IOPS 속도에 단위 데이터 용량 (4KB) 이라면
→ Throughput = 1000 x 4096 = 4 MB/s
Throughput 수치가 높다고 해서 시스템이 빠르다고 할 수 없다.
Throughput 수치가 높은데 Latency 수치도 높으면 전체적인 시스템 처리가 늦을 수 있다.
ex) 데이터 전송 자체는 빠르지만 Connection 연결이 느린 경우
📌 증감율
'반도체' 카테고리의 다른 글
Flash NAND 내구성이란 (1) | 2024.11.29 |
---|---|
[임베디드/펌웨어] TCM과 TIM 영역 (0) | 2024.07.27 |
[임베디드/펌웨어] HDD와 SSD 차이 비교 (0) | 2024.05.11 |
[임베디드/펌웨어] TRIM(트림) 이란? (0) | 2024.05.09 |
[임베디드/펌웨어] CRC(Cyclic Redundancy Check) (5) | 2024.05.06 |
댓글