Daily Thought - 2024-11-14
< back to listCaterpillar's host interface could be modeled after io_uring. But would it made sense? Not right now, as I already said. But I think there are scenarios where this could become interesting.
The obvious use case would be the same kind of asynchronous and I/O-heavy code that io_uring is already built for. Especially, if there's a separation between a given host and the runtime. Maybe because the host runs on another thread. Or even in another address space, acting like an operating system kernel.
But I think it could also make sense for compute-heavy code. For the foreseeable future, Caterpillar will remain slow. At least compared to something like Rust, which it is implemented in. So it seems reasonable to implement a performance-intensive part of your application in Rust, as part of the host. And communication based on ring buffers could make a lot of sense in this case too.