स्पष्टीकरण:
हमारे पास एक सर्वर है:
- मॉडल: HP प्रोलिएंट DL160 G6
- 4 x 240GB SSD (RAID-10)
- 72GB DDR3 रैम
- 2 एक्स एल 5639
- HP P410 RAID नियंत्रक (256MB, V6.40, रोम संस्करण: 8.40.41.00)
SSD ड्राइव 4 ब्रांड नए 2.5 "इंटेल 530 540MB / s पढ़ने की गति और 490MB / s लिखने की गति के साथ हैं
- सेंटोस 6
- फ़ाइल सिस्टम ext4 हैं
लेकिन यह छापे 10 पर पढ़ने की गति के लिए परीक्षा परिणाम है:
hdparm -t /dev/sda
/dev/sda:
Timing buffered disk reads: 824 MB in 3.00 seconds = 274.50 MB/sec
[root@localhost ~]# hdparm -t /dev/mapper/vg_localhost-lv_root
/dev/mapper/vg_localhost-lv_root:
Timing buffered disk reads: 800 MB in 3.01 seconds = 266.19 MB/sec
और यह लिखने की गति के लिए है:
dd bs=1M count=512 if=/dev/zero of=test conv=fdatasync
512+0 records in
512+0 records out
536870912 bytes (537 MB) copied, 4.91077 s, 109 MB/s
हम छापे 10 के साथ 1GB रीड स्पीड की उम्मीद कर रहे थे लेकिन 270MB भी एक डिस्क की गति नहीं है!
प्रशन:
- यह इतना धीमा क्यों है?
- यह RAID नियंत्रक की वजह से है?
अद्यतन 1 - एक ही पढ़ें / गति लिखें:
उत्तर में बताए अनुसार कुछ सेटिंग्स बदलने के बाद मेरा परिणाम नीचे है:
(कोई भी जानता है कि यह 400 एमबी के बजाय 4 जीबी क्यों दिखाता है पढ़ने की गति के रूप में ?!
संपादित करें: ऐसा लगता है कि आदेश गलत था और हमें राम की इस राशि के लिए -144g का उपयोग करना चाहिए, यही कारण है कि यह 4GB दिखाता है (जैसा कि ewwhite द्वारा टिप्पणियों में सुझाया गया है)
[root@192 ~]# iozone -t1 -i0 -i1 -i2 -r1m -s56g
Iozone: Performance Test of File I/O
Version $Revision: 3.408 $
Compiled for 64 bit mode.
Build: linux
Record Size 1024 KB
File size set to 58720256 KB
Command line used: iozone -t1 -i0 -i1 -i2 -r1m -s56g
Output is in Kbytes/sec
Each process writes a 58720256 Kbyte file in 1024 Kbyte records
Children see throughput for 1 initial writers = 135331.80 KB/sec
Children see throughput for 1 rewriters = 124085.66 KB/sec
Children see throughput for 1 readers = 4732046.50 KB/sec
Children see throughput for 1 re-readers = 4741508.00 KB/sec
Children see throughput for 1 random readers = 4590884.50 KB/sec
Children see throughput for 1 random writers = 124082.41 KB/sec
लेकिन पुराने hdparm -t /dev/sda
आदेश अभी भी दिखाता है:
टाइमिंग बफ़र्ड डिस्क पढ़ती है: 810 सेकंड में 3.00 सेकंड = 269.85 एमबी / सेकंड
अपडेट 2 (ट्यून्ड-बर्तन पैक) - पढ़ें स्पीड अब 600MB / s है:
अंत में कुछ आशा है, हमने छापे नियंत्रक से कैश को निष्क्रिय कर दिया था और कुछ अन्य चीजें पहले बिना किसी भाग्य के की थीं, लेकिन क्योंकि हमने सर्वर को फिर से लोड किया और ओएस को फिर से स्थापित किया, हम ईवसाइट के उत्तर में सुझाए अनुसार "ट्यून-बर्तन" स्थापित करना भूल गए (धन्यवाद आपके द्वारा सुझाए गए इस भयानक पैकेज के लिए ewwhite)
प्रोफ़ाइल को स्थापित करने tuned-utils
और चुनने के बाद enterprise-storage
रीड स्पीड अब ~ 600MB / s + है लेकिन लिखने की गति अभी भी बहुत धीमी है (~ 160MB) (:
यहाँ iozone -t1 -i0 -i1 -i2 -r1m -s144g
आदेश के लिए परिणाम है :
Children see throughput for 1 initial writers = 165331.80 KB/sec
Children see throughput for 1 rewriters = 115734.91 KB/sec
Children see throughput for 1 readers = 719323.81 KB/sec
Children see throughput for 1 re-readers = 732008.56 KB/sec
Children see throughput for 1 random readers = 549284.69 KB/sec
Children see throughput for 1 random writers = 116389.76 KB/sec
hdparm -t /dev/sda
हमारे पास कमांड के साथ भी :
टाइमिंग बफ़र डिस्क पढ़ता है: 1802 एमबी 3.00 सेकंड में = 600.37 एमबी / सेकंड
बहुत धीमी गति लिखने के लिए कोई सुझाव?
अपडेट 3 - टिप्पणियों में मांगी गई कुछ जानकारी:
लिखने की गति अभी भी बहुत कम है (~ 150MB / s जो कि एक डिस्क का 1/3 भी नहीं है)
के लिए आउटपुट df -h
और fdisk -l
:
[root@192 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 441G 3.2G 415G 1% /
tmpfs 36G 0 36G 0% /dev/shm
[root@192 ~]# fdisk -l
Disk /dev/sda: 480.0 GB, 480047620096 bytes
255 heads, 63 sectors/track, 58362 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00040c3c
Device Boot Start End Blocks Id System
/dev/sda1 * 1 58363 468795392 83 Linux
iozone -t1 -i0 -i1 -i2 -r1m -s144g
। :(