List:Internals« Previous MessageNext Message »
From:Richard Ellerbrock Date:December 18 2000 3:32pm
Subject:User level ASYNC IO
View as plain text  
Please don't flame me, as I am asking this question totally ignorant. I just happened to
stumble on this.

I have an implementation question concerning user level async IO. Is MySQL capable of
using user level async IO as defined by the POSIX standard? Reading the Redhat Oracle
performance FAQ, this is hinted at. User level async IO is available in the RedHat
Extended Edition Kernel (2.2.16). This kernel also supports Large File Support and Big

***cut from the FAQ***

How is an application tuned to use user level asynch i/o? 

                        The POSIX-standard aio() asynchronous I/O library allows processes
                        to proceed with the next operation without having to wait after
issuing a
                        write. This results in improved system performance by minimizing
                        time. These routines are built into the current version of the C
                        This library opens I/O and descriptors to almost any sort of
                        (files, network sockets, raw devices, etc) and submit asynchronous
                        requests to the library.  The requests are serviced independently
by a
                        set of threads.    To understand how to change your application to
                        advantage of this features, please refer to url: 
               and search
                        the 'Single UNIX Specification, Version 2'.   The aio functions
                        documented under the "System Interfaces" link. 

The faq is at User level async IO
has been discussed on Slashdot as being one of the key elements of the spectacular SpecWeb
stats obtained with the kernel based httpd daemons.

You can find the EE kernels in the ./redhat/updates/6.2EE/ directory of your favourite
RedHat mirror.

Richard Ellerbrock

User level ASYNC IORichard Ellerbrock18 Dec