Extending halide to improve software development for imaging DSPs

S. Vocke, H. Corporaal, R. Jordans, R. Corvino, Rick J.M. Nas

Research output: Contribution to journalArticleAcademicpeer-review

3 Citations (Scopus)
4 Downloads (Pure)

Abstract

Specialized Digital Signal Processors (DSPs) play an important role in power-efficient, high-performance image processing. However, developing applications for DSPs is more time-consuming and error-prone than for general-purpose processors. Halide is a domain-specific language (DSL) which enables low-effort development of portable, high-performance imaging pipelines. We propose a set of extensions to Halide to support DSPs in combination with arbitrary C compilers, including a template solution to support scratchpad memories. Using a commercial DSP, we demonstrate that this solution can achieve performance within 20% of highly tuned C code, while leading to a reduction in development time and code complexity.
Original languageEnglish
Article number21
Number of pages25
JournalACM Transactions on Architecture and Code Optimization
Volume14
Issue number3
DOIs
Publication statusPublished - Sep 2017

Keywords

  • Accelerator
  • Asip
  • DSP
  • Embedded processor
  • Halide
  • IPU
  • Image processing unit
  • Optimization
  • Parallel computing
  • Performance optimization
  • SIMD
  • Scratchpad memory
  • VLIW

Fingerprint Dive into the research topics of 'Extending halide to improve software development for imaging DSPs'. Together they form a unique fingerprint.

  • Cite this