tokio 今天发布了新的 RFC,提出了新的支持 io-uring 异步运行时的计划。 Tokio目前的Linux实现使用非阻塞的系统调用和epoll进行事件通知。使用epoll,调整后的TCP代理将在用户态之外花费70%至80%的CPU周期,包括执行syscall和在内核和用户态之间复制数据的周期。2019年,Linux增加了一个新的API,即io-uring,它通过消除...
Glommio是一个基于Linuxio_uring的高效多核线程调度库,它可以让你的程序做到thread-per-core级别的线程调度,每个线程只分配给一个单独的核,避免线程调度时候的context switch开销。它甚至可以把线程手动pin到某个核上。 代码语言:javascript 复制 /// This will now never leave CPU 0use glommio::LocalExecutorBu...