首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Halide如何自动调整时间表

Halide如何自动调整时间表
EN

Stack Overflow用户
提问于 2016-10-17 23:01:55
回答 1查看 832关注 0票数 1

我尝试用Halide写代码已经有一段时间了,我总是自己写时间表。然后我读了这篇论文:http://graphics.cs.cmu.edu/projects/halidesched/mullapudi16_halidesched.pdf。因此,据我所知,有一些方法可以生成最佳的时间表。我怎么可能做到这一点呢?

感谢您的回答!

编辑:

你好。我尝试使用CMAKE拉取分支并构建它。但我在编译Halide时遇到了问题:

这是VS 2015中的错误:

代码语言:javascript
复制
4>  D:/halideAutoScheduler2/Halide.build/Release\initmod.aarch64_cpu_features_32.ll -> D:/halideAutoScheduler2/Halide.build/Release\initmod.aarch64_cpu_features_32.bc
4>  C:\Program Files (x86)\LLVM\bin\llvm-as.exe: D:/halideAutoScheduler2/Halide.build/Release\initmod.aarch64_cpu_features_32.ll:23:6: error: expected type
4>  !0 = !{!"clang version 3.6.0 (tags/RELEASE_360/final)"}
4>       ^
4>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.CppCommon.targets(171,5): error MSB6006: "cmd.exe" exited with code 1.

有什么建议吗?

EN

回答 1

Stack Overflow用户

发布于 2016-10-18 05:30:24

非常简短的回答...

拉出这个分支:https://github.com/halide/Halide/tree/auto_scheduler

使用一段Halide代码并删除所有预先存在的调度。(目前我通常使用#if 0来做这件事,但在使用生成器时,有一种更好的方法在显式调度和自动调度之间进行选择。在C++代码中使用带有参数的if语句也是一种很好的方法。)

获取所有输出Funcs并调用Func::estimate方法,以给出这些输出的大致界限。(自动调度程序可以使用估计值作为最小值,因此可以通过矢量化引入约束。)

一些调度可以与自动调度程序混合使用,例如断言跨度和范围。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40089768

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档