Hi
We are trying to figure if oracle is indeed using async io
there are two articles/notes i referred to in the process and of course
the metalink. We did relink the Oracle kernel
1. http://download-east.oracle.com/oowsf2004/1449_wp.pdf See page 14
2. http://www.grabinar.com/simon/aio.html
i am still not sure if the server is doing async io and the other issue
is when we run quries on the DB i see a lot of Io waits
Checks we have done. The OS is enabled with async io looks like its the
threaded aysnc io since kernel io is only in 2.6 +
we are using
Linux extapp1 2.4.21-27.ELsmp #1 SMP Wed Dec 1 21:59:02 EST 2004 i686
i686 i386 GNU/Linux
Oracle 9.2.0.5 with the aio related patches
nm $ORACLE_HOME/bin/oracle | grep io_getevent
U io_getevents@@LIBAIO_0.1
ran a sql query which dd full table scans
and trace the pid with
strace -p pid
Among other systems calls you will see either:
a. synchronous calls
read(3, "783|37567799|213483944|2004-10-1"..., 4096) = 4096
b. asynchronous calls
io_submit(0xb6a93000, 0x1, 0xbfff236c) = 1
io_submit(0xb6a93000, 0x1, 0xbfff236c) = 1
io_getevents(0xb6a93000, 0x1, 0x400, 0xbffeb794,
i am only seeing case a. read
On lthe linux box
rpm -q --whatprovides libaio
libaio-0.3.96-5
and its enabled
Oops i forgot Oracle is also enabled with the asynch io parameters
filesystemio_options=asynch
disk_asynch_io=true
is this a fair test to confirm aio is happening or is there any other
definitive method to confirm if we are indeed using asynch io
thanks for any help
regds
Kris
Matthias Hoys - 30 Jun 2005 20:55 GMT
> Hi
>
[quoted text clipped - 51 lines]
> regds
> Kris
Did you reboot the server after making async io config changes ?
I don't know if it's necessary on Linux but it sure is on AIX.
Matthias
Fabrizio - 30 Jun 2005 21:00 GMT
> i am still not sure if the server is doing async io and the other issue
> is when we run quries on the DB i see a lot of Io waits
> Checks we have done. The OS is enabled with async io looks like its the
> threaded aysnc io since kernel io is only in 2.6 +
> we are using
It has been backported to 2.4 too.
By the way: what distro are you using?
> On lthe linux box
> rpm -q --whatprovides libaio
[quoted text clipped - 4 lines]
> filesystemio_options=asynch
> disk_asynch_io=true
You need to relink with:
oracle@linux > cd $ORACLE_HOME/rdbms/lib
oracle@linux > make PL_ORALIBS=-laio -f ins_rdbms.mk async_on
oracle@linux > make PL_ORALIBS=-laio -f ins_rdbms.mk ioracle
note the PL_ORALIBS=-laio
http://www.gesinet.it/oracle/asincio.html
> is this a fair test to confirm aio is happening or is there any other
> definitive method to confirm if we are indeed using asynch io
check with:
cat /proc/slabinfo | grep kio
(if the first three numbers of every line contain zero then async i/o is
not working.
regards

Signature
Fabrizio Magni
fabrizio.magni@mycontinent.com
replace mycontinent with europe