Aio_write on linux with rtkaio sometimes long

I am using async io for linux with rtkaio library. In my tests, everything works fine, but in my real application, I see that aio_write, which should return very fast, is very slow. It may take more than 100 miles to write 128 KB to an additional O_DIRECT file. Both my test and application use the same I / O size, I am checking the same file system (GFS).

I added the count, and I see that there are about 50% of asynchronous operations that are short (shorter than 2 million) and 50% long (longer than 2 million).

I also verified that the test and application use the same rtkaio library.

I'm pretty lost, does anyone have any ideas where I should look?

Another question of mine is: https://stackoverflow.com/a/212518/

+3
source share
2 answers

I don’t want to discourage, but I doubt that you will get a very useful answer to this question, because there are too many variables (cluster file system, asynchronous I / O, O_DIRECTetc.), and if someone is not very well versed in your setup, the best that anyone can do is give you vague advice.

, , , async, . aio_write . , , O_DIRECT? , O_DIRECT , .

+1

open()?

, O_NONBLOCK, O_WRONLY.

0

Source: https://habr.com/ru/post/1723354/


All Articles