halide

    1热度

    2回答

    我尝试在Halide中使用extern函数。在我的情况下,我想在GPU上做到这一点。 我使用opencl语句编译AOT编译。 当然,OpenCL的仍然可以使用CPU,所以我用这个: halide_set_ocl_device_type("gpu"); 现在,一切都在compute_root时间表()。 第一个问题,如果我使用compute_root()和OpenCL GPU,我的过程是否会在设

    0热度

    2回答

    自述文件宣称它可以编译为armv7,但我无法找到使其工作的魔法咒语。 我开始改变Makefile以设置arch = armv7,修复所产生的编译错误等等,但这似乎并不是正确的方式。 有建议cmake的标志是: cmake -DLLVM_TARGETS_TO_BUILD="X86;ARM;NVPTX" -DLLVM_ENABLE_ASSERTIONS=ON -DCMAKE_BUILD_TYPE=Re

    4热度

    2回答

    我目前正在试验Halide,最初的测试显示出相当有希望的性能改进。 我现在想知道分配Halide代码的最佳策略是什么。要求用户安装Halide在这个时候看起来像是一个沉重的障碍(因为没有自动安装选项)。 一种选择是使用compile_to_c,将生成的C代码添加到存储库中,并为这些C代码分发编译脚本。 scikit-learn为Cython生成的代码使用了类似的策略。对于Halide来说,这看起来

    1热度

    3回答

    现在我正在尝试编写一些子样本图像的Halide代码。基本上我希望每个2×2平方的图像被缩小到包含最大值的一个像素。一个简单的例子会被转化 1 2 3 4 5 6 7 8 9 0 1 2 4 3 5 6 到 6 8 9 6 现在我试图沿(我知道,这将给总和,而不是最大的线的东西,但它的一个玩具的例子): Halide::Image<uint8_t> input = load<uint

    1热度

    1回答

    正如你可以知道你是否试过卤化物选择(x,y,z);类似于C++上的三元运算符,其中x是条件y,如果为真,z为假。想象一下,y只是返回0,z是一个非常昂贵的函数,它可能有意义跳过评估z其中x是假的,不幸Halide评估这两个术语,即使我设置了select(x,很可能(y), Z);或者至少它发生如果我使用compile_to_file(.h + .lib) 任何想法呢? 谢谢!