Re: Miserable Disks
- From: "Christo Kutrovsky" <kutrovsky.oracle@xxxxxxxxx>
- To: charlottejanehammond@xxxxxxxxx
- Date: Wed, 31 May 2006 17:29:51 -0400
Charlotte,
What exactly is slow? Why do you think it's the storage that's slow?
Looking at the numbers:
76 reads + 35 writes = 110 IOs/ sec with a queue of 1.2 is perfectly normal.
service time = 9 ms . (7200 rpm = 0.008333 ms rotation delay) so it's
typical for a "slow" drive. It's relativelly "normal" for 10k drive
given your load.
"avgrq-sz" is in sectors so 19.23 is 9.865 Kb average request size.
If you ask me, your storage is not performing badly. What did you
expect as numbers?
--
Christo Kutrovsky
Senior Database/System Administrator
The Pythian Group - www.pythian.com
I blog at http://www.pythian.com/blogs/
On 5/23/06, Charlotte Hammond <charlottejanehammond@xxxxxxxxx> wrote:
Dear All
I am struggling to get any sort of acceptable
performance from our storage array. It's a low end
SATA RAID-5 (NOT my choice!) so I'd expect performance
to be poor but it's much worse than poor, it's utterly
diabolical. Apologies in advance for the long email
full of data but I really hope somebody might be able
to spot what's gone wrong.
I'm on 9.2.0.6 running on RHEL4 Linux with async i/o
compiled and filesystemio_options=setall.
Asynchronous i/o is I believe enabled since the kio*
figures in /proc/slabinfo are non-zero.
Iostat shows (I think) the average write to be a mere
512 bytes (NOT kbytes) whilst importing lots of LOBs.
The aio-max-size parameter isn't available in RHEL4 so
I can't try to tweak it.
Here's a typical snapshot for iostat for a period of 2
seconds (this will probably format horrible - sorry):
avg-cpu: %user %nice %sys %iowait %idle
0.64 0.00 0.13 8.71 90.52
Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s
rkB/s wkB/s avgrq-sz avgqu-sz await svctm
%util
sdc 0.00 39.18 76.29 35.05 1321.65 875.26
660.82 437.63 19.73 1.19 10.75 9.00
100.26
And here's some O/S call trace timing for a period of
2 minutes:
lseek: 0.00140
fcntl: 0.00143
setitimer: 0.00147
ftruncate: 0.00288
semctl: 0.00308
rt_sigprocmask: 0.00362
close: 0.00555
stat: 0.00620
open: 0.00821
read: 0.23854
getrusage: 0.41848
gettimeofday: 1.00980
semop: 3.30752
pwrite: 3.57569
io_submit: 4.15861
write: 6.48122
pread: 8.84140
fsync: 19.85780
io_getevents: 69.24410
The io_getevents system call only ever returns a value
of 1.
Thank you!
Charlotte
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com
--
http://www.freelists.org/webpage/oracle-l
--
Christo Kutrovsky
Senior Database/System Administrator
The Pythian Group - www.pythian.com
I blog at http://www.pythian.com/blogs/
--
http://www.freelists.org/webpage/oracle-l
- References:
- Miserable Disks
- From: Charlotte Hammond
Other related posts:
- » Miserable Disks
- » RE: Miserable Disks
- » Re: Miserable Disks
- » Re: Miserable Disks
- » Re: Miserable Disks
- » Re: Miserable Disks
- » RE: Miserable Disks
- » Re: Miserable Disks
- » RE: Miserable Disks
- » Re: Miserable Disks
- » RE: Miserable Disks
- » Re: Miserable Disks
- » Re: Miserable Disks
- » Re: Miserable Disks
- » Re: Miserable Disks
- » RE: Miserable Disks
- » Re: Miserable Disks
Dear All
I am struggling to get any sort of acceptable performance from our storage array. It's a low end SATA RAID-5 (NOT my choice!) so I'd expect performance to be poor but it's much worse than poor, it's utterly diabolical. Apologies in advance for the long email full of data but I really hope somebody might be able to spot what's gone wrong.
I'm on 9.2.0.6 running on RHEL4 Linux with async i/o compiled and filesystemio_options=setall. Asynchronous i/o is I believe enabled since the kio* figures in /proc/slabinfo are non-zero.
Iostat shows (I think) the average write to be a mere 512 bytes (NOT kbytes) whilst importing lots of LOBs. The aio-max-size parameter isn't available in RHEL4 so I can't try to tweak it.
Here's a typical snapshot for iostat for a period of 2 seconds (this will probably format horrible - sorry):
avg-cpu: %user %nice %sys %iowait %idle
0.64 0.00 0.13 8.71 90.52Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util sdc 0.00 39.18 76.29 35.05 1321.65 875.26 660.82 437.63 19.73 1.19 10.75 9.00 100.26
And here's some O/S call trace timing for a period of 2 minutes:
lseek: 0.00140
fcntl: 0.00143
setitimer: 0.00147
ftruncate: 0.00288
semctl: 0.00308
rt_sigprocmask: 0.00362
close: 0.00555
stat: 0.00620
open: 0.00821
read: 0.23854
getrusage: 0.41848
gettimeofday: 1.00980
semop: 3.30752
pwrite: 3.57569
io_submit: 4.15861
write: 6.48122
pread: 8.84140
fsync: 19.85780
io_getevents: 69.24410The io_getevents system call only ever returns a value of 1.
Thank you! Charlotte
__________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com -- http://www.freelists.org/webpage/oracle-l
- Miserable Disks
- From: Charlotte Hammond