Dear ROMIO developers, It is hard to find any literature or documentation about the asynchronous implementation ROMIO (or ADIO) use. I have few questions and It would be great if you can answer them: 1. How does ROMIO implement asynchronous I/O? I mean do you use POSIX-AIO, native Linux kernel AIO (io_submit,..), io_uring, or anything else? If I debug my code at our Clusters with gdb, I can see that POSIX-AIO is used. But is this on all systems so? 2. When and how does asynchronous I/O progress occur? Do you span multiple I/O threads for a rank? Is this related to variable MPICH_ASYNC_PROGRESS? Again with gdb, I can see that several asynchronous write requests by the same MPI rank are handled successively by a single thread. 3. Is there any related recent publication is can use to cite? I didn't find anything related to the implementation of asynchronous MPI-IO, except this: https://web.cels.anl.gov/~thakur/papers/grequest-redesign.pdf. But is it not outdated? Best regards, Ahmad