c++ - 如何使用 Halide 分析器

标签 c++ profiler halide

几周来我一直在探索 Halide 的可能性,为了更好地了解 Halide 的作用,我想尝试使用 halide 分析器。假设我有一个 Func 测试。 (为了便于阅读,我省略了变量声明等。) f=函数(测试); f(x,y)=some_image(x,y)*2; 如果我想运行它,我调用 f.realize(some_image.width(),some_image.height())。现在,如果我理解正确的话,当我想对此进行分析时,我需要使用类 halide_profiler_func_stats。但是我找不到任何方法来访问这个和/或其他获取分析数据的方法。

到目前为止,我一直在我的软件中运行一个单独的计时器,但我想看看 Halide 本身的性能分析器的功能。我该怎么做?

最佳答案

profile的通常使用方式是在HL_TARGET或HL_JIT_TARGET中加上“-profile”,或者用来构建一个等价的Target对象并传递给实现。这会在每次运行后打印出所有分析信息。

如果您正在编译 AOT 并希望以某种特殊方式报告分析信息或使用代码检查它,则需要担心 HalideRuntime.h 中的内容。

关于c++ - 如何使用 Halide 分析器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37209979/

相关文章:

c++ - Halide 多 GPU 支持

opencv - 用 Halide Funcs 替换 Opencv Fillpoly 函数

c++ - 编译 AudioUnit 时出现错误 "SysError 0 during open of "AUResources.r""

iphone - XCode 探查器 "Leaked Blocks"表中的条目是否暗示确实存在泄漏?

c - Halide 与 OpenVX

java - 在 macOS 上使用 DTrace 分析 Java 应用程序

reactjs - 子组件的统计信息并不总是在 Chrome 性能选项卡的用户计时部分中可用

c++ - Cin 显示默认值

c++ - 如何查找 std::deque 是否持有给定对象?

c# - 在我的 CLR 项目中添加包含使得 WLR 无法在启用/clr 的情况下进行编译