5 个不稳定版本
0.2.1 | 2019年8月15日 |
---|---|
0.2.0 | 2019年8月5日 |
0.1.0 | 2019年3月15日 |
0.0.2 | 2019年3月15日 |
0.0.1 | 2019年3月10日 |
#213 在 性能分析 中
每月下载量:53
用于 b39wc
740KB
23K SLoC
microprofile-rust
microprofile-rust 是一个用于分析和优化多线程游戏代码的性能分析器
它是 microprofile 的 Rust 版本
它反过来又依赖于优秀的 distorm 项目
集成
将 microprofile 添加为依赖项
[dependencies]
microprofile = "0.2.1"
microprofile 应该在每个游戏引擎帧中调用。为此,您需要在每个帧中调用 microprofile::flip
。如果您的程序不是基于帧的,您可以使用 microprofile::start_auto_flip(delay_in_ms)
和 microprofile::stop_auto_flip()
,这将使 microprofile 每隔 delay_in_ms
毫秒自动调用此函数。
要计时一些代码,您需要在程序中插入一个范围
microprofile::scope!("group-name", "timer-name");
microprofile-rust 的所有函数都作为宏提供。使用 "disabled" 功能可以完全禁用所有宏,并移除所有 microprofile 代码插桩
[dependencies.microprofile]
version = "0.2.1"
features = ["disabled"]
限制
截至版本 0.2.1,仅支持 microprofile 的子集
- 支持范围计时器
- 支持动态插桩
- 支持 Windows、Linux 和 OSX
以下功能不支持:
- GPU 计时器
- 计数器
使用 UI
请参阅 microprofile 文档:https://github.com/jonasmr/microprofile
示例代码
更新
- 0.2.0:更新到 microprofile 3.1:Firefox 支持,为具有 -many- 线程的程序提供更多生活品质功能
- 0.2.1:更新到最新的 microprofile:修复实时视图中一个严重的性能回归。