Kernel 2.4.20-35.9 does not support AIO on Red Hat Linux 9.

Story: Asynchronous I/O implementation for Red Hat Linux 9 .Relinking Oracle9iR2 to utilize AIOTotal Replies: 0
Author Content
dba477

Sep 16, 2004
6:22 AM EDT
Let us consider two examples: 1.Normal aio-stress behavior under kernel 2.6

# gcc -Wall -laio -lpthread -o aio-stress aio-stress.c #./aio-stress -s 300 -m -S -l -L -t 10 file1

dropping thread count to the number of contexts 1 file size 300MB, record size 64KB, depth 64, ios per iteration 8 max io_submit 8, buffer alignment set to 4KB threads 1 files 1 contexts 1 context offset 2MB verification off adding file file1 thread 0 latency min 0.07 avg 0.64 max 53.48 600 < 100 0 < 250 0 < 500 0 < 1000 0 < 5000 0 < 10000 completion latency min 0.02 avg 59.13 max 699.38 3625 < 100 883 < 250 228 < 500 13 < 1000 0 < 5000 0 < 10000 write on file1 (57.78 MB/s) 300.00 MB in 5.19s thread 0 write totals (25.23 MB/s) 300.00 MB in 11.89s latency min 0.22 avg 0.56 max 1.22 600 < 100 0 < 250 0 < 500 0 < 1000 0 < 5000 0 < 10000 completion latency min 0.01 avg 11.66 max 777.21 4610 < 100 122 < 250 56 < 500 11 < 1000 0 < 5000 0 < 10000 read on file1 (293.03 MB/s) 300.00 MB in 1.02s thread 0 read totals (292.75 MB/s) 300.00 MB in 1.02s latency min 0.07 avg 0.32 max 57.93 600 < 100 0 < 250 0 < 500 0 < 1000 0 < 5000 0 < 10000 completion latency min 0.02 avg 648.07 max 43866.41 3806 < 100 134 < 250 436 < 500 315 < 1000 43 < 5000 0 < 10000 < 62 random write on file1 (5.97 MB/s) 300.00 MB in 50.26s thread 0 random write totals (4.70 MB/s) 300.00 MB in 63.83s latency min 0.44 avg 0.68 max 30.32 600 < 100 0 < 250 0 < 500 0 < 1000 0 < 5000 0 < 10000 completion latency min 0.01 avg 2.36 max 166.30 4804 < 100 3 < 250 0 < 500 0 < 1000 0 < 5000 0 < 10000 random read on file1 (718.66 MB/s) 300.00 MB in 0.42s thread 0 random read totals (538.19 MB/s) 300.00 MB in 0.56s

2. aio-stress behavior on Red Hat Linux 9 upgraded with kernel 2.4.20-35.9

# uname -a Linux ServerI685 2.4.20-35.9 #1 Thu Jun 24 07:09:26 EDT 2004 i686 i686 i386 GNU/Linux

# gcc -Wall -laio -lpthread -o aio-stress aio-stress.c # ./aio-stress -s 300 -m -S -t 10 -l -L file1

dropping thread count to the number of contexts 1 file size 300MB, record size 64KB, depth 64, ios per iteration 8 max io_submit 8, buffer alignment set to 4KB threads 1 files 1 contexts 1 context offset 2MB verification off adding file file1 thread 0 io_queue_setup(512) returned -38 (Function not implemented)

Same picture under 2.4.20-8

Conclusions:

1.Site http://atrpms.net provides untrustable information 2.Successful relink of Oracle9iR2 binaries and instance restart with parameters: disk_asynch_io=true filesystemio_options=asynch is not a fair. AIO was not implemented because kernel doesn’t support it.

Posting in this forum is limited to members of the group: [ForumMods, SITEADMINS, MEMBERS.]

Becoming a member of LXer is easy and free. Join Us!