Special Section on Quality Control by Artificial Vision

Combining high productivity and high performance in image processing using Single Assignment C on multi-core CPUs and many-core GPUs

[+] Author Affiliations
Volkmar Wieser

Software Competence Center Hagenberg, Softwarepark 21, 4232 Hagenberg, Austria

Clemens Grelck

University of Amsterdam, Science Park 904, 1098 XH Amsterdam, Netherlands

Peter Haslinger

Software Competence Center Hagenberg, Softwarepark 21, 4232 Hagenberg, Austria

Jing Guo

University of Hertfordshire, College Lane, Hatfield AL10 9AB, United Kingdom

Filip Korzeniowski

Software Competence Center Hagenberg, Softwarepark 21, 4232 Hagenberg, Austria

Robert Bernecky

Snake Island Research Inc., 18 Fifth Street, Ward’s Island, Toronto, Ontario, Canada M5J 2B9

Bernhard Moser

Software Competence Center Hagenberg, Softwarepark 21, 4232 Hagenberg, Austria

Sven-Bodo Scholz

Heriot-Watt University, Riccarton, Edinburgh, United Kingdom

J. Electron. Imaging. 21(2), 021116 (Jul 09, 2012). doi:10.1117/1.JEI.21.2.021116
History: Received September 25, 2011; Revised February 14, 2012; Accepted March 14, 2012
Text Size: A A A

Abstract.  We address the challenge of parallelization development of industrial high-performance inspection systems comparing a conventional parallelization approach versus an auto-parallelized technique. Therefore, we introduce the functional array processing language Single Assignment C (SAC), which relies on a hardware virtualization concept for automated, parallel machine code generation for multi-core CPUs and GPUs. Additional software engineering aspects like programmability, productivity, understandability, maintainability, and resulting achieved gain in performance are discussed from the point of view of a developer. With several illustrative benchmarking examples from the field of image processing and machine learning, the relationship between runtime performance and efficiency of development is analyzed.

Figures in this Article
© 2012 SPIE and IS&T

Citation

Volkmar Wieser ; Clemens Grelck ; Peter Haslinger ; Jing Guo ; Filip Korzeniowski, et al.
"Combining high productivity and high performance in image processing using Single Assignment C on multi-core CPUs and many-core GPUs", J. Electron. Imaging. 21(2), 021116 (Jul 09, 2012). ; http://dx.doi.org/10.1117/1.JEI.21.2.021116


Access This Article
Sign in or Create a personal account to Buy this article ($20 for members, $25 for non-members).

Some tools below are only available to our subscribers or users with an online account.

Related Content

Customize your page view by dragging & repositioning the boxes below.

Advertisement
  • Don't have an account?
  • Subscribe to the SPIE Digital Library
  • Create a FREE account to sign up for Digital Library content alerts and gain access to institutional subscriptions remotely.
Access This Article
Sign in or Create a personal account to Buy this article ($20 for members, $25 for non-members).
Access This Proceeding
Sign in or Create a personal account to Buy this article ($15 for members, $18 for non-members).
Access This Chapter

Access to SPIE eBooks is limited to subscribing institutions and is not available as part of a personal subscription. Print or electronic versions of individual SPIE books may be purchased via SPIE.org.