ทดสอบ IOPS ด้วย KDiskMark

Published on August 18, 2025
ทดสอบ IOPS ด้วย KDiskMark

หากพูดถึง CrystalDiskMark ก็ต้องบอกว่าเป็นที่รู้จักกันในโลกของ Windows กันมา พอสมควรแล้ว เพราะถูกใช้กันอย่างกว้างขวางในการทดสอบ IOPS บน Disk/SSD แต่วันนี้เราจะพาไปรู้จักกับ โปรแกรมอีกตัวหนึ่งบนโลกของ opensource ซึ่งคือ KDiskMark ซึ่งทำงานเหมือนกับ CrystalDiskMark ไม่แตกต่างกัน แต่แค่คนละ แพลตฟอร์มเท่านั้นเอง

IOPS คืออะไร
IOPS (Input/Output Operations Per Second) หรือแปลตามตัวเลยก็หมายถึง จำนวนการทำงานอ่าน/เขียนข้อมูลต่อวินาที ของอุปกรณ์จัดเก็บข้อมูล ทั้ง HDD, SSD, SAN และ NVMe

Input/Output operation = การอ่านหรือเขียนข้อมูลขนาดหนึ่งครั้ง
Per Second = นับจำนวนครั้งที่อุปกรณ์สามารถทำงานเหล่านี้ได้ใน 1 วินาที

หรือสรุปเลยก็คือ
IOPS = “ความเร็วในการทำงานของดิสก์ ว่าสามารถอ่าน/เขียนข้อมูลกี่ครั้งต่อวินาที”

แล้วทำไม IOPS จึงสำคัญ

เพราะมันใช้วัด ประสิทธิภาพของ Storage เพื่ออย่างน้อยเราจะได้รู้ว่า เราได้ใช้งานตามสเปคที่กำหนด โดยยิ่ง IOPS สูง ก็หมายถึง การตอบสนองของระบบเร็วขึ้น และทำให้โปรแกรมหรือฐานข้อมูลโหลดข้อมูลเร็วขึ้นนั่นเอง เพราะการตอบสนองที่เร็วนั้นสำคัญมากกับ ระบบฐานข้อมูล, Virtual Machine, Web server & App Server ในปัจจุบัน

ประเภทของ I/O

1. Sequential I/O หรือ อ่าน/เขียนข้อมูลต่อเนื่องเป็นลำดับ ซึ่งอยู่ใน HDD จะทำได้ดีเพราะหัวอ่านไม่ต้องเคลื่อนมาก
2. Random I/O หรือ อ่าน/เขียนแบบกระจาย (ไม่ต่อเนื่อง) จะทำงานได้ดีใน SSD เพราะเป็นอิเล็กทรอนิกส์ HDD

เรามาดูตัวเลขคร่าวๆ กัน
SSD สามารถทำ 100,000 IOPS (4K random read)
HDD 7200rpm ทำได้ประมาณ 100–200 IOPS (4K random read)
เราจะเห็นได้ว่า HDD นั้นทำงานได้ต่ำมาก หากเทียบกับ SSD

หมายเหตุ: IOPS สูงสุดไม่จำเป็นต้องเท่ากับความเร็ว (MB/s)
ยกตัวอย่างเช่น IOPS 100,000 กับ ขนาดข้อมูล 4KB 100,000 × 4 KB ≈ 400 MB/s
เมื่อขนาดบล็อกใหญ่ขึ้น MB/s สูง จะทำให้ IOPS ลด

1. Sequential Read / Sequential Write (Seq Read / Seq Write)
ความหมาย: ความเร็วในการอ่านหรือเขียนไฟล์ขนาดใหญ่แบบ ต่อเนื่อง
หน่วย: MB/s
ซึ่งจะมีผลกับ การคัดลอกไฟล์ขนาดใหญ่ การอ่าน/เขียนวิดีโอ, ISO, หรือ backup file
ตัวอย่าง: Seq Read = 500 MB/s ดิสก์อ่านไฟล์ใหญ่ต่อเนื่องได้ 500 MB ต่อวินาที
2. Random Read / Random Write (Rand Read / Rand Write)
ความหมาย: ความเร็วในการอ่านหรือเขียน แบบกระจาย (ไม่ต่อเนื่อง)
หน่วย: MB/s หรือ IOPS (ขึ้นอยู่กับการตั้งค่า)
มีผลกับ Database, VM, OS, แอปพลิเคชันที่อ่าน/เขียนไฟล์เล็ก ๆ หลาย ๆ ไฟล์
ตัวอย่าง: Rand Write = 50 MB/s ดิสก์สามารถเขียนไฟล์เล็ก ๆ กระจายได้เร็วประมาณ 50 MB ต่อวินาที

3 Queue Depth / Threads
KDiskMark ทดสอบหลาย Queue Depths (QD) และ Threads
Queue Depth = จำนวนคำสั่ง I/O รอประมวลผลพร้อมกัน
Threads = จำนวนการทดสอบ I/O พร้อมกัน
ยิ่ง QD หรือ Threads สูงใน SSD, NVMe จะแสดงประสิทธิภาพได้เต็มมากขึ้น
HDD ไม่ค่อยดีเมื่อ QD สูง เพราะหัวอ่านต้องเคลื่อนมาก เพราะมันก็กลไกหรือ mechanic

4 Block Size (ขนาดบล็อก)
KDiskMark สามารถเลือก 4KB, 512KB, 1MB ฯลฯ
4KB เพื่อจำลอง workload แบบฐานข้อมูล/VM (ไฟล์เล็ก)
1MB+ หรือมากกว่า เพื่อ จำลอง workload แบบคัดลอกไฟล์ใหญ่

ให้เราคิดว่าเมื่อขนาดบล็อกเล็ก IOPS สำคัญกว่า MB/s
แต่เมื่อ ขนาดบล็อกใหญ่ จะทำให้ MB/s สำคัญกว่า IOPS

5 ความแตกต่างระหว่าง MB/s และ IOPS
MB/s ปริมาณข้อมูลต่อวินาที (เหมาะกับ sequential)
IOPS จำนวนคำสั่งต่อวินาที (เหมาะกับ random)

 

ตารางสรุป

ตัววัด ดีต่อ หมายความว่า
Seq Read / Write ไฟล์ใหญ่ต่อเนื่อง ความเร็วสูง จะทำให้ copy ไฟล์ใหญ่เร็ว
Rand Read / Write ไฟล์เล็ก/ฐานข้อมูล ความเร็วสูง จะดีสำหรับ database/VM ตอบสนองเร็ว
Block Size เล็กหรือใหญ่ เล็ก IOPS สำคัญ, ใหญ่ MB/s สำคัญ
Queue Depth / Threads จำนวนงานพร้อมกัน สูงใน SSD/NVMe แสดงประสิทธิภาพเต็ม

 

 

 

SAN is out SDS is in

วันนี้เราจะไปพาไปพบกับ คำถามที่ช่วงนี้ต้องบอกว่า พบเจอบ่อยมากๆ นั่นคือ การที่หลายๆ คนใช้งาน Storage Area Network หรือที่เรียกสั้นๆ...

Read more »

ข้อดีของการมีระบบจองที่พักหรือโรงแรมเป็นของตัวเอง

ประเทศไทยนั้นถือว่าจุดหมายปลายทางระดับโลกของนักท่องเที่ยว ที่มีแต่จะมากขึ้นทุกๆ ปีด้วยความโดดเด่นของไทยเองที่มีอยู่หลายด้าน เช่น อาหาร แหล่งท่องเที่ยว และ ความเป็นมิตรของผู้คน นั่นคือหนึ่งในสาเหตุของ การเพิ่มขึ้นของสถานประกอบการประเภทที่พัก...

Read more »

ระบบฐานข้อมูล และ การใช้งานประจำปี 2025

เราอาจจะพูดได้ว่า ระบบฐานข้อมูลนั้นได้กลายเป็นกระดูกสันหลังขององค์กรและแอปพลิเคชันยุคใหม่ไปแล้ว การเข้าใจว่า ฐานข้อมูลแต่ละชนิดและการนำไปใช้งานนั้นก็กลายเป็นเรื่องจำเป็นที่นักพัฒนา รวมถึงผู้ที่อยู่ในสายงานไอที ต้องเรียนรู้ ไม่ว่าคุณกำลังจะสร้างแอปสำหรับใช้งานส่วนตัวหรือสำหรับองค์กรขนาดใหญ่ การเข้าในฐานข้อมูลและเลือกใช้งานให้ถูกต้อง ถือเป็นส่วนที่จะต้องทำ อะไรคือฐานข้อมูล...

Read more »

Virtual Tape Library คืออะไรและมีประโยชน์อย่างไร

สำหรับ Tape Backup นั้นหลายๆ คนคงจะรู้จัก และใช้งานกันมานานพอสมควร แม้กระทั่งทุกวันนี้หลายๆ องค์กรก็ยังใช้งาน Tape อยู่...

Read more »

ทดสอบ IOPS ด้วย KDiskMark

หากพูดถึง CrystalDiskMark ก็ต้องบอกว่าเป็นที่รู้จักกันในโลกของ Windows กันมา พอสมควรแล้ว เพราะถูกใช้กันอย่างกว้างขวางในการทดสอบ IOPS บน Disk/SSD...

Read more »

GraphQL คืออะไร และ มันอาจจะเป็นสิ่งที่มาเปลี่ยน REST API

GraphQL คืออะไร ก่อนอื่นต้องบอกก่อน วิธีการสื่อสารระหว่าง client & server นั้นเราใช้วิธีการที่เรียกว่า REST API...

Read more »