-
The What is the advantage of this? Suppose it's meant to be cache friendly, which means that an extra-large block of memory must be allocated beforehand to hold multiple rings. How does it scale if more rings are subsequently needed (e.g., based on the number of threads created)? (Memory reallocation would invalidate the previous rings) |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment
-
CQ/SQ rings of different io_uring instances are not shared. Passing the same chunk of memory to multiple
Right, the manual tells about it.
Not sure what you mean here, but it's up to the user how it allocates the memory and manages it. |
Beta Was this translation helpful? Give feedback.
CQ/SQ rings of different io_uring instances are not shared. Passing the same chunk of memory to multiple
io_uring_queue_init_mem
(without killing previous instances) would be a bug. However, you can chunk, let's say, a huge page into non-overlapping buffers and pass them to different rings.Right, the manual tells about it.