Miért lassú az ssd-m?

Sziasztok!
Tudnátok segíteni, hogy miért lassú a gépembe szerelt ssd?
Mit nézzek, merre keressem a megoldást.

Op.rendszer: Debian Squeeze
Kernel: 2.6.32-5-openvz-amd64 eredeti
A disk 60GB: /dev/sda:
ATA device, with non-removable media
Model Number: OCZ-AGILITY
Serial Number: NVE8UWHNQ8WX830IL8D5
Firmware Revision: 1.6

A diskről a gyártó oldalán ezt írják:
http://www.ocztechnology.com/ocz-agility-series-sata-ii-2-5-ssd-eol.html
60GB Max Performance
Read: Up to 230 MB/s
Write: Up to 135 MB/s
Sustained Write: Up to 80 MB/S

Amiket mértem:
Írás:
dd if=/dev/zero of=file_3GB bs=1M count=3k
3072+0 beolvasott rekord
3072+0 kiírt rekord
3221225472 bájt (3,2 GB) másolva, 64,8131 mp, 49,7 MB/mp
Érdekesség, hogy írás közben a gép (Gnome)teljesen használhatatlan, bármire kattintok nem történik semmi, amíg az írás tart.

Olvasás:
dd if=file_3GB of=/dev/null
6291456+0 beolvasott rekord
6291456+0 kiírt rekord
3221225472 bájt (3,2 GB) másolva, 25,0884 mp, 128 MB/mp

hdparm -t /dev/sda
/dev/sda:
Timing buffered disk reads: 228 MB in 3.01 seconds = 75.73 MB/sec

És most egy érdekes adat!!
hdparm --direct -t /dev/sda
/dev/sda:
Timing O_DIRECT disk reads: 658 MB in 3.00 seconds = 219.26 MB/sec

u.i.:
Lehet, hogy ez összekapcsolható a 'Miért lassú a Linux...' témával

Hozzászólások

ADATA S599 128GB

trey@alderaan:~/download/isos$ cd /tmp
trey@alderaan:/tmp$ dd if=/dev/zero of=file_3GB bs=1M count=3k
3072+0 records in
3072+0 records out
3221225472 bytes (3.2 GB) copied, 12.4444 s, 259 MB/s
trey@alderaan:/tmp$ dd if=file_3GB of=/dev/null
6291456+0 records in
6291456+0 records out
3221225472 bytes (3.2 GB) copied, 13.3078 s, 242 MB/s

A vezérlő ugyanaz abban is SandForce SF-1200 van? Újabb firmware esetleg nincs hozzá?

--
trey @ gépház

nálam egy szintén 60GB-os OCZ Vertex 2 lazán kiköhögi a 250MB/sec-et.
valami ATA/SATA vezérlő probléma lesz.

esetleg dmesg releváns részei?

Köszönöm a gyors válaszokat.
dmesg:
[ 4.156034] ata4: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
[ 4.156205] ata4.00: ATA-8: OCZ-AGILITY, 1.6, max UDMA/133
[ 4.156208] ata4.00: 125045424 sectors, multi 1: LBA48 NCQ (depth 31/32), AA
[ 4.168421] sd 3:0:0:0: [sda] 125045424 512-byte logical blocks: (64.0 GB/59.6 GiB)
[ 4.168522] sd 3:0:0:0: [sda] Write Protect is off
[ 4.168525] sd 3:0:0:0: [sda] Mode Sense: 00 3a 00 00
[ 4.168542] sd 3:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
[ 4.168636] sda: sda1 sda2
[ 4.169114] sd 3:0:0:0: [sda] Attached SCSI disk

Firmware-t nézem.
Szerk: néztem 1.6 a legújabb. Most jobban körülnézve is.

Amire még felhívnám a figyelmeteket, hogy --direct kapcsolóval a szerkezet közel a névleges sebességgel olvas. Vagy ez nem érdekes?

(idén márciusi a .32.35, ami a squeezzel shippezett kernel alapja)

Model=Corsair CSSD-F40GB2, FwRev=1.1
Config={ Fixed }
RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=4
BuffType=unknown, BuffSize=unknown, MaxMultSect=16, MultSect=16
CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=78161328
IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120}
PIO modes: pio0 pio1 pio2 pio3 pio4
DMA modes: mdma0 mdma1 mdma2
UDMA modes: udma0 udma1 udma2 udma3 udma4 udma5 *udma6
AdvancedPM=no WriteCache=enabled
Drive conforms to: unknown: ATA/ATAPI-2,3,4,5,6,7

dd if=/dev/zero of=file_4GB bs=1M count=4k
4096+0 beolvasott rekord
4096+0 kiírt rekord
4294967296 bájt (4,3 GB) másolva, 16,0638 mp, 267 MB/mp

dd if=file_4GB of=/dev/null
8388608+0 beolvasott rekord
8388608+0 kiírt rekord
4294967296 bájt (4,3 GB) másolva, 17,3496 mp, 248 MB/mp

hdparm -t /dev/sdc

/dev/sdc:
Timing buffered disk reads: 642 MB in 3.00 seconds = 213.68 MB/sec

hdparm --direct -t /dev/sdc

/dev/sdc:
Timing O_DIRECT disk reads: 750 MB in 3.00 seconds = 249.82 MB/sec

Linux server 2.6.32-5-686 #1 SMP Fri Dec 10 16:12:40 UTC 2010 i686 GNU/Linux

HP Proliant ML110 G5

blockdev --setra 32768 /dev/sda

Érzi-e kend, hogy javul?

Igen javult :) de még nem jó :(

root@nagysa:/home/nagysa/tmp# hdparm -t /dev/sda
/dev/sda:
Timing buffered disk reads: 668 MB in 3.00 seconds = 222.53 MB/sec

root@nagysa:/home/nagysa/tmp# dd if=file_3GB of=/dev/null
6291456+0 beolvasott rekord
6291456+0 kiírt rekord
3221225472 bájt (3,2 GB) másolva, 23,0236 mp, 140 MB/mp

Mint látszik a dd (mértem time cp-vel is) még lassú.

Felteszem Debian Squeeze, MBR partíciós tábla és a fájlrendszer ext4 (discard flaggel mountolva), valamint az I/O scheduler az alapértelmezett CFQ.

Akkor már csak egy

fdisk -l /dev/sda

kimenetre lenne szükség.

root@nagysa:/home/nagysa/tmp# cat /sys/block/sda/queue/scheduler
[noop] anticipatory deadline cfq

/dev/sda1 on / type ext3 (rw,noatime,errors=remount-ro)

root@nagysa:/home/nagysa/tmp# fdisk -l

/dev/sda lemez: 64.0 GB, 64023257088 bájt

255 fej, 63 szektor, 7783 cilinder
Egység: cilinderek 16065 * 512 = 8225280 bájt
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Lemezazonosító: 0x000c4cba

Eszköz Indítás Eleje Vége Blokkok Az Rendszer
/dev/sda1 * 1 7295 58597056 83 Linux
/dev/sda2 7296 7783 3919860 82 Linux lapozó / Solaris

"/dev/sda1 on / type ext3"

Ez megmagyarázza, használj ext4-es fájlrendszert (már csak a TRIM miatt is).

Valamint a rendszerpartícició alignmentje (7259-es szektornál kezdődik) sem látszik megfelelőnek, ahhoz, hogy megfelelő teljesítményt érhess el ez az érték az SSD meghajtód EBS-ének (erase block size) többszöröse vagy azzal megegyező érték kell legyen.

Bár nem létfontosságú, de a GPT partíciós táblára váltás is megfontolandó lehet.

Bocs, hogy beleugatok, de itt a nagy tudásúak megmondták, hogy azért gyors nekem az SSD-m 0 íráskor, mert a Sandforce vezérlő azt jól tömöríti. Mivel ebben is az a vezérlő van, akkor a 0 írásnál neki miért nem olyan gyors mint az enyém ha ezzel csak az interfész sebességét méri, tessék mondani?

/me confused

--
trey @ gépház

Köszönöm mindenkinek a segítséget és a tanácsokat.
Most nekiállok lementeni (lemásolni) mindent és átállok ext4-re.
Ezt csak este tudom csinálni, mert dolgoznom kell.
Így egy kis szünet után jönnek majd a hírek.

mielott belevagnal

https://wiki.archlinux.org/index.php/SSD#Tips_for_Maximizing_SSD_Perfor…

1. fontos a parition alignment, ezert nem mindegy mivel es hogyan hozod letre a particiokat!!!
2. hasznalj ext4-t, mountoptions: defaults,noatime,discard
3. noop vagy deadline io scheduler-t az ssd-s meghajtoknak

Ez nekem dobott egy nagyot az olvasási sebességen:


(/etc/rc.local)
hdparm -W1 /dev/sda

Ez meg csak úgy nem rossz ha van
(/etc/default/rcS)

RAMRUN=Yes
RAMLOCK=Yes

írás nálam 90MB/s, de gondolom a teljesen crypt-elt drive miatt, és az ext2 miatt lehet...