Halide 构建

Halide是一种专为图像处理设计的语言,旨在提高代码的可读性和执行效率。它将算法内容与执行解耦,支持多种CPU架构和操作系统。本文介绍了如何安装LLVM、编译Halide以及构建Halide程序的步骤,包括设置环境变量和编译选项。通过示例程序展示了Halide的基本用法,为后续的优化策略和性能验证打下基础。
摘要由CSDN通过智能技术生成

hello halide

随着人工智能,VR等领域的发展,我们对于高性能图像处理程序的需求越来越大;当前编程工具开发的高性能图像处理程序牺牲了程序的可读性,模块性,可移植性等;其主要原因是,当前程序将算法描述, 数据存储以及计算糅杂在一起。同时手工编写高性能图像处理程序开发效率较低,难以快速构建大量高性能图像处理代码。
在这样的背景下,MIT的研究人员专门为图像处理设计了一种程序语言——Halide;Halide语言易于编写和修改,并且能够自动对代码进行优化,使应用程序获得更好的执行效率。Halide设计的核心思想是将算法的内容和算法的执行解耦,这样程序员可以根据不同的设备设置不同的优化策略,获得更高质量的代码。目前halide支持的设备情况为:
CPU架构:X86, ARM, MIPS, Hexagon, PowerPC
操作系统:Linux, Windows, Mac OS X, Android, iOS, Qualcomm QuRT
GPU计算API:CUDA, OpenCL, OpenGL, OpenGL Compute Shaders, Apple Metal, Microsoft Direct X 12
当前知名的自动优化框架,除了halide还有寒武纪的TVM,TVM在设计上借鉴了halide将算法内容和执行解耦的思路。本文主要主要内容如下:

  • LLVM安装
  • Halide编译
  • Halide程序构建

LLVM安装

首先下载LLVM源代码,源代码下载地址为:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值