เปรียบเทียบการ อ่าน,เขียน,ลบ ไฟล์ Ext3,Ext4 บน Ubuntu
posted on 05 May 2009 19:22 by tonhor in Linux
จากบทความที่แล้ว Ext4 คืออะไร? มาบทความนี้
เรามาลองทดสอบประสิทธิภาพของ Ext4 กันหน่อย
ผมได้ทดสอบบนระบบ Ubuntu 9.04 ด้วยการเพิ่ม hdd เข้าไปใหม่ 2 ลูก
คือ sdb,sdc ขนาด 8 GB แล้วก็สร้าง partition มาอย่างละ partition
โดยกำหนดให้
sdb1 มีระบบไฟล์ ext3 ขนาด 8 GB
sdc1 มีระบบไฟล์ ext4 ขนาด 8 GB
root@ubuntu:~# df -h
/dev/sdb1 7.4G 146M 6.9G 3% /mnt/ext3
/dev/sdc1 7.4G 145M 6.9G 3% /mnt/ext4
root@ubuntu:~# mount
/dev/sdb1 on /mnt/ext3 type ext3 (rw)
/dev/sdc1 on /mnt/ext4 type ext4 (rw)
เปรียบเทียบการ อ่าน,เขียน,ลบ กับไฟล์ขนาด 4GB
bs : block size
count : จำนวนของ block size
ขนาดไฟล์ = bs * count
• เขียนไฟล์ขนาด 4GB
root@ubuntu:~# dd if=/dev/zero of=/mnt/ext3/data-4G.bin bs=4KB count=1000000
1000000+0 records out
4000000000 bytes (4.0 GB) copied, 21.7682 s, 184 MB/s
root@ubuntu:~# dd if=/dev/zero of=/mnt/ext4/data-4G.bin bs=4KB count=1000000
1000000+0 records out
4000000000 bytes (4.0 GB) copied, 16.5413 s, 242 MB/s
• อ่านไฟล์ขนาด 4GB
root@ubuntu:~# dd if=/mnt/ext3/data-4G.bin of=/dev/zero bs=4KB count=1000000
1000000+0 records out
4000000000 bytes (4.0 GB) copied, 13.8927 s, 288 MB/s
root@ubuntu:~# dd if=/mnt/ext4/data-4G.bin of=/dev/zero bs=4KB count=1000000
1000000+0 records out
4000000000 bytes (4.0 GB) copied, 12.1555 s, 329 MB/s
• ลบไฟล์ขนาด 4GB
root@ubuntu:~# time rm -fr /mnt/ext3/data-4G.bin
root@ubuntu:~# time rm -fr /mnt/ext4/data-4G.bin
เปรียบเทียบการ อ่าน,เขียน,ลบ กับไฟล์ขนาด 1MB จำนวน 4000 ไฟล์
• เขียนไฟล์ขนาด 1 MB จำนวน 4000 ไฟล์
เราต้องเขียน shell script เพื่อเขียนไฟล์ขนาด 1 MB จำนวน 4000 ไฟล์
root@ubuntu:~# gedit write4000file_ext3.sh
#! /bin/bash
i=1
while [ $i -le 4000 ]; do
dd if=/dev/zero of=/mnt/ext3/data-1M-$i.bin bs=4KB count=256 > /dev/null 2>&1
i=`expr $i + 1`
done
root@ubuntu:~# time sh write4000file_ext3.sh
root@ubuntu:~# time sh write4000file_ext4.sh
• อ่านไฟล์ขนาด 1 MB จำนวน 4000 ไฟล์
เราต้องเขียน shell script เพื่ออ่านไฟล์ขนาด 1 MB จำนวน 4000 ไฟล์
root@ubuntu:~# gedit read4000file_ext3.sh
#! /bin/bash
i=1
while [ $i -le 4000 ]; do
dd if=/mnt/ext3/data-1M-$i.bin of=/dev/zero bs=4KB count=256 > /dev/null 2>&1
i=`expr $i + 1`
done
root@ubuntu:~# time sh read4000file_ext3.sh
root@ubuntu:~# time sh read4000file_ext4.sh
• ลบไฟล์ขนาด 1 MB จำนวน 4000 ไฟล์
การลบนั้นผมได้ลองลบอยู่หลายครั้งเพราะว่าผมแปลกใจครับ แต่ในตัวอย่างเอามาให้ดู 3 ครั้ง
root@ubuntu:~# time rm -fr /mnt/ext3/*
8.572s
8.600s
root@ubuntu:~# time rm -fr /mnt/ext4/*
0.335s
0.394s
เมื่อเปรียบเทียบการลบไฟล์ขนาด 1 MB จำนวน 4000 ไฟล์ แล้ว Ext4 ค่อนข้างจะเร็วกว่า Ext3 อยู่มาก
ลิงค์ที่เกี่ยวข้อง• http://tonhor.exteen.com/20090502/what-is-ext4-ext4
• http://spalinux.com/2008/12/compare_ext3_ext4_xfs_on_fedora_10
• http://www.phoronix.com/scan.php?page=article&item=ext4_benchmarks
[Twitter] ดูสถิติด้วย TweetStats






ย้อนดูเอนทรีเก่าด้วย
ext4 เป็นตัวที่เขาอัพเกรดให้ดีขึ้นกว่า ext3 ใช่มั้ยค่ะ..
เก่งจังเลยค่ะ..หาผลต่าง ข้อดี ข้อเสีย..ได้ชัดเจนด้วย..
ยกนิ้วโป้ง..ให้อารจารย์ฮ้อ..ฮิฮิ..
#1 By กระเจียว โดดเดี่ยว on 2009-05-05 19:59