华人澳洲中文论坛

热图推荐

    IO_uring 持续证实十分使人兴奋:io_uring_spawn 宣告

    [复制链接]

    2022-9-14 18:33:27 22 0

    IO_uring持续证实本人是过来十年中 Linux 内核最冲动人心的根底翻新之一。虽然开始用于异步存储 I/O,但比来环抱网络用例发展了一些任务,并推进了其余翻新,例如用于基于 IO_uring 的用户空间块驱动顺序的新“UBD”驱动顺序。Jens Axboe 和其余人还不停对其进行优化,以获取最大的机能后劲。本周在都柏林举办的 2022 年 Linux Plumbers Conference 上宣告的环抱 io_uring 的最新翻新是 io_uring_spawn。



    Josh Triplett 是前著名的英特尔 Linux 工程师,比来专一于 Rust 编程言语,他独特领导 Rust 言语团队,他昨天在 LPC 2022 上宣告了他在 io_uring_spawn 上的任务。Triplett 在他的说话摘要中十分优雅地总结了这一点:
    io_uring 允许代表以后过程疾速运转一批操作。望文生义,这关于 I/O 任务负载十分无效。但是,软件开发中最凸起的任务负载之一波及履行其余流程:make 和其余构建零碎在构建过程当中启动许多其余流程。咱们如何能力更快地启动这些流程? 假如咱们能够启动其余过程,并使用 io_uring 为它们提供初始任务,并以 exec 开头会怎么样?假如咱们能够彻底在内核中处置新过程的 pre-exec 步骤,不需求用户空间,打消对 fork 乃至 vfork 的需求,并打消页表 CoW 开消,那会怎么样? 在本次演讲中,我将引见 io_uring_spawn,一种用于启动拥有关联 io_uring 的空新过程的机制。我将展现内核如何启动一个没有初始写时复制页表的空白过程,并从 io_uring 初始化它的一切资源。我将引见胜利门路和过错处置门路,并展现如何获得无关已启动过程的信息。最初,我将展现现有用户空间如何利用 io_uring_spawn 来减速 posix_spawn,并为常见任务负载(包罗内核编译)提供机能数据。事实上,他的基准测试后果不言自明,io_uring_spawn 比 fork 或 posix_spawn 快很多,乃至比 vfork 快 6~10%,同时被以为更平安、更灵敏。



    Josh Triplett 在 io_uring_spawn 上的任务看起来十分使人兴奋,但仍处于实行的初期阶段。
    这是 io_uring_spawn 的一个十分有但愿的开始,他说他“刚刚开始”。他期待接上去在其上完成 posix_spawn,反对预生成的过程池,并进一步优化克隆。

    发表回复

    您需要登录后才可以回帖 登录 | 立即注册

    返回列表 本版积分规则

    :
    注册会员
    :
    论坛短信
    :
    未填写
    :
    未填写
    :
    未填写

    主题19

    帖子33

    积分151

    图文推荐