Would you be interested in reviewing PRs about adding io_uring/liburing support to Gmsh?
io_uring is a new Linux kernel interface for general async IO https://kernel.dk/io_uring.pdf
liburing is an application-level library built on top of
io_uring that removes some of the sharp edges (
mmap calls, memory barriers).
For Gmsh, I would propose it as a threadpool alternative for parallel file IO.
There have been some interesting performance results for a large number of reads on a single file for SSDs https://github.com/root-project/root/pull/6162 (early days yet). The actual implementation is about ~150 lines. Do you think this is something Gmsh could take advantage of? I do not really know what happens during file reading.