百科.dev
全部条目在线工具AI 编程趋势榜开源项目技术资讯提交条目
登录
< 返回工具列表
C

context-switch

> 编程语言
开源

比较 Rust 异步和 Linux 线程上下文切换的时间。

759 stars0 点赞1 次浏览
访问官网GitHub

工具介绍

比较 Rust 异步和 Linux 线程上下文切换的时间。

Rust 同步和 Linux 线程上下文切换时间和内存使用的比较

  • 每个任务的内存消耗(即对于一个不太复杂的任务)大约为几百字节(异步任务),而内核线程大约为 20KiB(9.5KiB 用户空间,10KiB 内核空间)。这是一个最小值:要求更高的任务自然会消耗更多内存。

测量线程上下文切换时间 程序 thread-brigade 和 async-brigade 分别创建 500 个通过管道连接的任务(类似“桶队”),并测量从第一个任务到最后一个任务传播单个字节所花费的时间。其中一个使用线程实现,另一个使用 Tokio 程序包中的异步 I/O 实现。

$ cd async-brigade/ $ /bin/time cargo run --release Finished release [optimized] target(s) in 0.02s Running /home/jimb/Rust/context-switch/target/release/async-brigade 500 个任务, 10000 次迭代: 平均每次迭代 1.795 毫秒, 标准偏差 82.016 微秒 (每个任务每次迭代 3.589 微秒) 9.83 个用户 8.33 个系统 0:18.19 耗时 99% CPU (0 平均文本 + 0 平均数据 17144 最大内存) k 0 个输入 + 0 个输出 (0 个主要 + 2283 个次要) 页错误 0 个交换

Issues· 0 开放

查看全部 Issues在 GitHub 打开

暂无开放 Issues,或尚未同步最近议题。

> 标签

Rustasynccontext-switcheslinuxmeasure

暂无评论,来聊聊你的看法吧

> 工具信息

发布日期2026年8月1日
最后更新2026年9月17日
分类编程语言
定价开源

> 相关工具

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言