Asynchronous I/O
I'm developing a utility that measures AIO disk performance in 10.3.3. I'm using aio_read(), aio_write(), etc. If I do AIO to, say, two drives (rdisks) with a queue depth of 5, everything works fine. If I increase the queue depth to 10 (I didn't try anything in between), I start getting failures for aio_read and aio_write. errno = EAGAIN. I've determined that the copyin call is failing (result = 0x23) in the aio_queue_async_request call. I'm using one buffer for all reads and one for writes (the data is not important). Also, once I get this error, I continue to get it until I reboot - even if I just do one request to one drive. What am I doing wrong or what are the system limitations? IMHO, 20 outstanding requests is not extravagant. Yahoo! Finance Tax Center - File online. File on time. _______________________________________________ darwin-kernel mailing list | darwin-kernel@lists.apple.com Help/Unsubscribe/Archives: http://www.lists.apple.com/mailman/listinfo/darwin-kernel Do not post admin requests to the list. They will be ignored.
participants (1)
-
Lamont Cranston