Skip to content

Investigate IO_URING support #16232

Open
Open
@espoal

Description

I'm opening this issue to investigate the opportunity of implementing IO_URING in Deno. If you haven't heard about it IO_URING is a new revolutionary API for doing asynchronous operations in Linux with a much higher throughput, much lower tail latencies and CPU usage.

While investigating how to implement IO_URING for node, I came up with an approach which I think can make this very simple: Instead of implementing directly liburing via NAPI, I used a thin layer to expose syscalls to a WASM module, to then do the heavy lifting in WASM. More details here

This not only greatly simplify the approach, but maximize reusability across WASM compatible runtimes. Also I think this kind of taks is a perfect fit for Rust, with its safety guarantees and speed.

Unfortunately I don't know much about Deno internals, but here maybe the Node and Deno community could come together to write a common WASM module?

Metadata

Assignees

No one assigned

    Labels

    deno_coreChanges in "deno_core" crate are neededperfperformance related

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions