A New Programming Language For Image-processing Algorithms

Halide is a new programming language designed to make it easier to write high-performance image processing code on modern machines. Its current front end is an embedding in C++. Hardware targets include x86-64/SSE, ARM v7/NEON, and CUDA. Created by researchers at MIT’s Computer Science and Artificial Intelligence Laboratory (CSAIL) Halide was used to rewrite several common image-processing algorithms whose performance had already been optimized by seasoned programmers. The Halide versions were typically about one-third as long but offered significant performance gains — two-, three-, or even six-fold speedups. In one instance, the Halide program was actually longer than the original — but the speedup was 70-fold. The paper is available here and the source will be posted within the next couple of days on github and the projects home here.

Comments (0)

This post does not have any comments. Be the first to leave a comment below.


Post A Comment

You must be logged in before you can post a comment. Login now.

Featured Product

PI USA - 7 Reasons Why Air Bearings Outperform Mechanical Bearings

PI USA - 7 Reasons Why Air Bearings Outperform Mechanical Bearings

Motion system designers often ask the question whether to employ mechanical bearings or air bearings. Air bearings deserve a second look when application requirements include lifetime, precision, particle generation, reproducibility, angular accuracy, runout, straightness, and flatness.