MIT researchers develop new programming language for multicore image processing
August 06, 2012 // Nick Flaherty
Researchers at MIT's Computer Science and Artificial Intelligence Laboratory (CSAIL) have developed a new programming language for multicore image processing algorithms called Halide.
Not only are Halide programs easier to read, write and revise than image-processing programs written in a conventional language, but because Halide automates code-optimization procedures that would ordinarily take hours to perform by hand, they're also significantly faster says the team.
In tests, the MIT researchers used Halide 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.
However the developmentis currently separate to the OpenCL multicore programming specification.
Jonathan Ragan-Kelley, a graduate student in the Department of Electrical Engineering and Computer Science (EECS), and Andrew Adams, a CSAIL postdoc, led the development of Halide, and they've released the code online.
Halide doesn't spare the programmer from thinking about how to parallelize efficiently on particular machines, but it splits that problem off from the description of the image-processing algorithms. A Halide program has two sections: one for the algorithms, and one for the processing "schedule." The schedule can specify the size and shape of the image chunks that each core needs to process at each step in the pipeline, and it can specify data dependencies — for instance, that steps being executed on particular cores will need access to the results of previous steps on different cores. Once the schedule is drawn up, however, Halide handles all the accounting automatically.
A programmer who wants to export a program to a different machine just changes the schedule, not the algorithm description. A programmer who wants to add a new processing step to the pipeline just plugs in a description of the new procedure, without having to modify the existing ones. (A new step in the pipeline will require a corresponding specification in the schedule, however.)
"When you have the idea that you might want to parallelize something a certain way or use stages a certain way, when writing that manually, it's really hard to express that idea correctly," says Ragan-Kelley. "If you have a new optimization idea that you want to apply, chances are you're going to spend three days debugging it because you've broken it in the process. With this, you change one line that expresses that idea, and it synthesizes the correct thing."
Although Halide programs are simpler to write and to read than ordinary image-processing programs, because the scheduling is handled automatically, they still frequently offer performance gains over even the most carefully hand-engineered code. Moreover, Halide code is so easy to modify that programmers could simply experiment with half-baked ideas to see if they improve performance.
"You can just flail around and try different things at random, and you'll often find something really good," says Adams. "Only much later, when you've thought about it very hard, will you figure out why it's good."
ARM acquires Geomerics and strengthens its position in the visual computing and graphics industries
December 13, 2013
ARM announced the acquisition of Geomerics, a leader in lighting technology for the gaming and entertainment industries. ...
Workflow enables fast, cost-effective simulation of electric drives
Soitec partners IntelliEPI to provide reliable second source in GaAs market
Meyer Burger Technology Group delivers a printing process to mass produce solar cells
"Future automotive applications need incredibly more computing power"
LCD TV technology evolution to see bright moves despite decline in global LCD TV shipments
December 12, 2013
The 2013 global LCD TV shipment declined 1.7% to 203.1 million units due to the sluggish global economic recovery and China’s ...
European BLIM4SME project aims to further streamline Bluetooth Low Energy integration
Additive photolithographic process yields micro flex circuits with 5um feature resolution
Flexible haptics and capacitive touch combo solution enables more intuitive interfaces
- UltraCMOS® Semiconductor Technology Platforms: A Rapid Advancement of Process & Manufacturing
- Managing Electrical Complexity with a Platform Level Approach and Systems Engineering
- 3mm × 3mm QFN IC Directly Monitors 0V to 80V Supplies
- Adaptive Cell Converter Topology Enables Constant Efficiency in PFC Applications
Interview"Future automotive applications need incredibly more computing power"
These days, the Autosar (Automotive Open System Architecture) development partnership celebrates its tenth anniversary. Launched with the goal to reduce the complexity of the heterogeneous software landscape ...
Filter WizardCheck out the Filter Wizard Series of articles by Filter Guru Kendall Castor-Perry which provide invaluable practical Analog Design guidelines.
Linear video channel
READER OFFERRead more
Internet of Things (IoT) manufacturer Ciseco has launched the Raspberry Pi ‘Wireless Inventors Kit’ (RasWIK), featuring 88 pieces to provide everything a Pi owner needs to follow a series of step-by-step projects or to create their own wireless devices, without the need for configuration or even writing code.
RasWIK has been designed to be highly accessible, demystifying the dark art of wireless and enabling anyone with basic computing skills to begin building wireless devices with a Raspberry Pi. You can create anything from a simple traffic light, to a battery monitor, or even a temperature gauge that sends data to the Xively IoT cloud so billions can access the data.This month, Ciseco is giving away twelve Raspberry Pi Wireless Inventors kits, worth £49.99 each for EETimes Europe's readers to win.
And the winners are...
In our previous reader offer, Farsens was giving away five kits for EEtimes Europe readers to evaluate its FenixVortex, Kineo and X1 wireless, battery free sensor tags.
Lucky winners include Mr A. Neil from the UK, Mr. E. Delvaux from Belgium, Mr Lengal from the Czech Republic, Mr H. Bijlsma from the Netherlands, and Mr G. Pfaff from Germany. All should be receiving their packages soon. Lets wish them some interesting findings with their projects.
December 15, 2011 | Texas instruments | 222901974
Unique Ser/Des technology supports encrypted video and audio content with full duplex bi-directional control channel over a single wire interface.