SSD IOPS란 무엇인가? 읽기·쓰기 속도와 어떤 차이가 있을까
SSD를 구매하기 위해 제품 사양을 살펴보면 가장 먼저 눈에 들어오는 것은 읽기 속도와 쓰기 속도입니다. 최신 NVMe SSD의 경우 순차 읽기 속도가 7,000MB/s를 넘거나 PCIe 5.0 기반 제품은 10,000MB/s 이상의 속도를 표시하기도 합니다.
이처럼 높은 숫자를 보면 당연히 숫자가 큰 SSD가 무조건 빠를 것이라고 생각하기 쉽습니다. 하지만 실제로 SSD를 교체한 뒤 윈도우 부팅이나 인터넷 사용, 프로그램 실행 속도에서 예상만큼 큰 차이를 느끼지 못하는 경우도 있습니다.
그 이유는 우리가 일반적으로 사용하는 컴퓨터 작업이 항상 대용량 파일을 연속으로 읽고 쓰는 방식으로 이루어지지 않기 때문입니다.
SSD 성능을 제대로 이해하려면 순차 읽기와 쓰기 속도뿐 아니라 IOPS(Input/Output Operations Per Second)라는 지표도 함께 알아둘 필요가 있습니다.
IOPS는 서버나 데이터센터에서만 사용하는 전문 용어처럼 보이지만, 실제로는 SSD의 랜덤 데이터 처리 능력을 이해하는 데 매우 중요한 지표입니다.
이번 글에서는 SSD IOPS가 무엇인지, MB/s로 표시되는 읽기·쓰기 속도와 어떤 차이가 있는지, 그리고 실제 컴퓨터 사용 환경에서는 어떤 성능이 중요한지 자세히 알아보겠습니다.
IOPS란 무엇인가
IOPS는 Input/Output Operations Per Second의 약자입니다.
쉽게 설명하면 저장장치가 1초 동안 처리할 수 있는 입출력 작업의 횟수를 의미합니다.
예를 들어 SSD가 1초 동안 100,000개의 데이터 읽기 또는 쓰기 명령을 처리할 수 있다면 이론적으로 100,000 IOPS 수준의 성능을 가진다고 표현할 수 있습니다.
여기서 중요한 부분은 데이터의 전체 용량이 아니라 작업 횟수를 측정한다는 점입니다.
작은 파일을 수없이 많이 처리하는 환경에서는 IOPS 성능이 매우 중요합니다.
반대로 하나의 거대한 파일을 이동하는 환경에서는 MB/s로 표시되는 전송 속도가 더욱 중요할 수 있습니다.
MB/s와 IOPS는 무엇이 다를까
SSD 제품 사양에서 가장 많이 사용하는 속도 단위는 MB/s입니다.
MB/s는 1초 동안 얼마나 많은 데이터 용량을 전송할 수 있는지를 나타냅니다.
예를 들어 읽기 속도가 7,000MB/s인 SSD라면 이론적으로 1초 동안 약 7GB 수준의 데이터를 읽을 수 있다는 의미입니다.
반면 IOPS는 데이터 용량이 아니라 입출력 작업의 횟수를 측정합니다.
쉽게 비유하면 MB/s는 고속도로에서 한 번에 얼마나 많은 화물을 이동할 수 있는지를 나타내는 기준과 비슷합니다.
IOPS는 일정 시간 동안 차량이 몇 번이나 빠르게 출발하고 도착할 수 있는지를 측정하는 개념에 가깝습니다.
두 지표는 모두 SSD 성능을 나타내지만 측정하는 기준은 전혀 다릅니다.
작은 파일에서는 IOPS가 중요한 이유
컴퓨터를 사용할 때 항상 수십 GB 크기의 파일만 처리하는 것은 아닙니다.
운영체제를 실행하면 수많은 작은 시스템 파일을 읽습니다.
인터넷 브라우저를 실행할 때도 캐시 파일과 설정 파일, 확장 프로그램 데이터를 불러옵니다.
게임 역시 실행 과정에서 다양한 크기의 파일을 반복적으로 읽습니다.
이러한 작업에서는 하나의 대용량 파일을 빠르게 읽는 능력보다 여러 개의 작은 파일을 얼마나 빠르게 처리할 수 있는지가 중요합니다.
그래서 랜덤 읽기와 쓰기 성능을 평가할 때 IOPS를 사용합니다.
순차 읽기와 랜덤 읽기의 차이
SSD 성능을 이해하려면 순차 작업과 랜덤 작업의 차이를 알아야 합니다.
순차 읽기는 데이터가 연속된 위치에 저장되어 있는 상황에서 차례대로 데이터를 읽는 방식입니다.
대용량 영상 파일을 복사하거나 압축되지 않은 원본 데이터를 불러오는 작업이 대표적인 예입니다.
반면 랜덤 읽기는 저장장치의 여러 위치에 흩어진 데이터를 읽는 방식입니다.
운영체제 부팅이나 프로그램 실행처럼 다양한 파일을 동시에 불러오는 작업에서 자주 발생합니다.
일반적인 컴퓨터 사용에서는 랜덤 읽기 작업이 생각보다 자주 발생합니다.
따라서 최대 순차 읽기 속도만으로 실제 체감 성능을 판단하기는 어렵습니다.
IOPS는 어떻게 측정할까
SSD IOPS는 일반적으로 일정한 크기의 데이터를 반복해서 읽거나 쓰는 방식으로 측정합니다.
가장 많이 사용되는 기준 중 하나가 4K 랜덤 읽기와 쓰기입니다.
여기서 4K는 화면 해상도를 의미하는 것이 아닙니다.
4KB 크기의 작은 데이터 블록을 의미합니다.
SSD가 4KB 크기의 데이터를 1초 동안 몇 번 처리할 수 있는지를 측정하는 것입니다.
이 결과를 통해 작은 파일 처리 능력을 비교할 수 있습니다.
Queue Depth와 IOPS의 관계
IOPS 성능을 확인할 때 반드시 함께 살펴봐야 하는 것이 Queue Depth입니다.
Queue Depth는 SSD에 대기 중인 입출력 명령의 개수를 의미합니다.
QD1 환경에서는 하나의 명령이 처리 대기 중입니다.
QD32 환경에서는 최대 32개의 명령이 동시에 대기할 수 있습니다.
Queue Depth가 높아지면 SSD 컨트롤러는 여러 명령을 동시에 처리할 수 있습니다.
결과적으로 IOPS도 크게 증가하는 경우가 많습니다.
SSD 제조사가 발표하는 최대 IOPS는 높은 Queue Depth 환경에서 측정되는 경우가 많습니다.
따라서 일반적인 PC 환경에서 항상 최대 IOPS가 나타나는 것은 아닙니다.
일반 PC에서는 최대 IOPS를 사용하기 어렵다
최근 고성능 NVMe SSD는 100만 IOPS 이상의 성능을 제공하기도 합니다.
숫자만 보면 매우 뛰어난 성능입니다.
하지만 일반적인 가정용 컴퓨터에서는 이러한 최대 성능을 지속적으로 활용하는 경우가 많지 않습니다.
문서 작업이나 인터넷 사용, 게임 실행 환경에서는 Queue Depth가 낮은 경우가 많기 때문입니다.
따라서 일반 사용자라면 최대 IOPS 숫자보다 낮은 Queue Depth에서의 랜덤 읽기 성능을 함께 확인하는 것이 좋습니다.
게임에서는 IOPS가 중요할까
게임에서는 다양한 크기의 데이터를 SSD에서 읽습니다.
맵 데이터와 텍스처, 음성 파일, 캐릭터 데이터 등이 대표적입니다.
이러한 파일은 저장장치 여러 위치에 분산되어 있을 수 있습니다.
따라서 랜덤 읽기 성능도 게임 로딩 속도에 영향을 줄 수 있습니다.
하지만 게임 성능이 SSD IOPS 하나만으로 결정되는 것은 아닙니다.
CPU와 메모리, 게임 엔진의 데이터 처리 방식도 함께 영향을 줍니다.
최근에는 DirectStorage와 같은 기술이 등장하면서 SSD에서 GPU로 데이터를 더욱 효율적으로 전달하는 방식도 발전하고 있습니다.
서버에서는 IOPS가 매우 중요하다
IOPS가 특히 중요한 환경은 서버와 데이터센터입니다.
하나의 서버에는 수많은 사용자가 동시에 접속할 수 있습니다.
데이터베이스 서버에서는 짧은 시간 동안 수많은 데이터 요청이 발생합니다.
온라인 쇼핑몰을 예로 들면 사용자가 상품을 검색하고 주문 내역을 확인하며 결제를 진행할 때마다 데이터 읽기와 쓰기 작업이 발생합니다.
이러한 환경에서는 대용량 파일 하나를 빠르게 전송하는 것보다 수많은 작은 데이터 요청을 빠르게 처리하는 능력이 중요합니다.
그래서 엔터프라이즈 SSD에서는 IOPS 성능이 핵심적인 평가 기준으로 사용됩니다.
IOPS가 높으면 무조건 좋은 SSD일까
IOPS가 높은 SSD는 많은 입출력 명령을 빠르게 처리할 수 있습니다.
하지만 IOPS 숫자 하나만으로 SSD의 전체 성능을 판단할 수는 없습니다.
지연시간과 지속 성능도 중요합니다.
일부 SSD는 짧은 테스트에서는 높은 IOPS를 기록하지만 장시간 작업에서는 발열이나 SLC 캐시 소진으로 성능이 감소할 수 있습니다.
또한 SSD 컨트롤러와 낸드플래시 종류, DRAM 캐시 유무도 실제 성능에 영향을 줍니다.
따라서 여러 성능 지표를 함께 확인하는 것이 좋습니다.
Latency도 함께 확인해야 하는 이유
Latency는 SSD가 명령을 전달받은 뒤 실제 작업을 시작하고 완료하기까지 걸리는 지연시간을 의미합니다.
IOPS가 높더라도 지연시간이 불규칙하면 일부 작업에서는 느리게 느껴질 수 있습니다.
특히 데이터베이스와 금융 시스템처럼 빠른 응답이 필요한 환경에서는 평균 IOPS보다 일정한 지연시간이 더욱 중요할 수도 있습니다.
엔터프라이즈 SSD가 소비자용 SSD와 다른 점 가운데 하나도 이러한 성능 안정성입니다.
SSD 성능표를 볼 때 확인할 부분
SSD 제품 사양을 확인할 때는 최대 순차 읽기 속도만 보는 것보다 여러 항목을 함께 살펴보는 것이 좋습니다.
순차 읽기와 쓰기 속도는 대용량 파일 처리 성능을 이해하는 데 도움이 됩니다.
랜덤 읽기와 쓰기 IOPS는 작은 데이터 처리 능력을 확인하는 기준입니다.
Queue Depth는 어떤 조건에서 해당 성능이 측정되었는지 이해하는 데 필요합니다.
여기에 낸드 종류와 컨트롤러, DRAM 캐시, 지속 쓰기 성능도 함께 확인하면 SSD의 특성을 더욱 정확하게 파악할 수 있습니다.
일반 사용자는 어떤 SSD 성능이 중요할까
인터넷과 문서 작업, 일반적인 게임이 주요 목적이라면 최대 IOPS 숫자에 지나치게 집착할 필요는 없습니다.
낮은 Queue Depth에서 안정적인 랜덤 읽기 성능을 제공하는 SSD가 실제 사용에서는 더욱 쾌적하게 느껴질 수 있습니다.
반면 영상 편집이나 대용량 데이터 작업에서는 순차 읽기와 쓰기 속도가 중요합니다.
데이터베이스나 서버 운영 환경에서는 높은 IOPS와 낮은 지연시간, 지속 성능을 함께 확인해야 합니다.
결국 SSD는 사용 목적에 따라 중요한 성능 지표가 달라집니다.
마무리
IOPS는 SSD가 1초 동안 처리할 수 있는 입출력 작업의 횟수를 나타내는 지표입니다. MB/s가 데이터 전송량을 나타낸다면 IOPS는 작은 데이터 요청을 얼마나 빠르게 반복해서 처리할 수 있는지를 보여주는 기준이라고 이해할 수 있습니다.
대용량 영상 파일을 복사하는 작업에서는 순차 읽기와 쓰기 속도가 중요합니다. 반면 운영체제 부팅과 프로그램 실행, 데이터베이스 처리처럼 작은 데이터를 반복적으로 읽고 쓰는 환경에서는 IOPS 성능이 더욱 중요할 수 있습니다.
다만 제조사가 발표하는 최대 IOPS는 높은 Queue Depth와 특정 테스트 환경에서 측정되는 경우가 많습니다. 따라서 숫자가 높다는 이유만으로 일반적인 컴퓨터 환경에서 동일한 체감 성능을 얻을 수 있다고 판단하는 것은 주의할 필요가 있습니다.
SSD를 선택할 때는 최대 읽기 속도, 쓰기 속도, 랜덤 IOPS, Queue Depth, 지연시간을 함께 살펴보는 것이 좋습니다. 여기에 낸드플래시 종류와 컨트롤러, 캐시 구조까지 이해한다면 제품 사양을 보다 정확하게 비교할 수 있습니다.
결국 가장 좋은 SSD는 가장 높은 숫자를 가진 제품이 아니라 자신의 사용 환경에 적합한 성능을 안정적으로 제공하는 저장장치입니다. IOPS의 의미를 이해해 두면 복잡하게 보이는 SSD 성능표도 조금 더 쉽게 읽을 수 있으며, 저장장치를 선택할 때도 보다 합리적인 판단을 하는 데 도움이 될 것입니다.
그동안은 컴퓨터 하드웨어 및 소스트웨어 관련 포스팅을 다우렀는데요 다음 포스팅에서는 무선통신 관련 주레로할 예정입니다.