Abstract
Computing capabilities are continuing to increase with the availability of multi core and many core processors. The wide availability of multi core processors has made parallel programming possible for end user applications running on desktops, workstations, and mobile devices. While parallel hardware has become common, software that exploits parallel capabilities is just beginning to take hold. Multimedia applications, with their data parallel nature and large computing requirements will benefit significantly from parallel programming. In this paper an overview of parallel programming is presented and languages and tools for parallel programming such as OpenMP and CUDA are introduced within the scope of multimedia applications.
![](http://media.springernature.com/m312/springer-static/image/art%3A10.1007%2Fs11042-010-0656-2/MediaObjects/11042_2010_656_Fig1_HTML.gif)
![](http://media.springernature.com/m312/springer-static/image/art%3A10.1007%2Fs11042-010-0656-2/MediaObjects/11042_2010_656_Fig2_HTML.gif)
![](http://media.springernature.com/m312/springer-static/image/art%3A10.1007%2Fs11042-010-0656-2/MediaObjects/11042_2010_656_Fig3_HTML.gif)
![](http://media.springernature.com/m312/springer-static/image/art%3A10.1007%2Fs11042-010-0656-2/MediaObjects/11042_2010_656_Fig4_HTML.gif)
![](http://media.springernature.com/m312/springer-static/image/art%3A10.1007%2Fs11042-010-0656-2/MediaObjects/11042_2010_656_Fig5_HTML.gif)
![](http://media.springernature.com/m312/springer-static/image/art%3A10.1007%2Fs11042-010-0656-2/MediaObjects/11042_2010_656_Fig6_HTML.gif)
![](http://media.springernature.com/m312/springer-static/image/art%3A10.1007%2Fs11042-010-0656-2/MediaObjects/11042_2010_656_Fig7_HTML.gif)
![](http://media.springernature.com/m312/springer-static/image/art%3A10.1007%2Fs11042-010-0656-2/MediaObjects/11042_2010_656_Fig8_HTML.gif)
![](http://media.springernature.com/m312/springer-static/image/art%3A10.1007%2Fs11042-010-0656-2/MediaObjects/11042_2010_656_Fig9_HTML.gif)
![](http://media.springernature.com/m312/springer-static/image/art%3A10.1007%2Fs11042-010-0656-2/MediaObjects/11042_2010_656_Fig10_HTML.gif)
Similar content being viewed by others
References
Asanovi’c K et al (2009) A view of the parallel computing landscape. Commun ACM 52(10):56–67
Borkar S (2007) Thousand core chips—a technology perspective. Proc. ACM/IEEE 44th Design Automation Conf (DAC). ACM Press, pp 746–749
Bulic P, Gustin V (2003) An extended ANSI C for processors with a multimedia extension. Int J Parallel Program 31(2):107–136
Chantry D (2009) Mapping applications to the Cloud. Microsoft Corporation—Platform Architecture Team. Online at: http://msdn.microsoft.com/en-us/library/dd430340.aspx
Chapman B, Jost G, van der Pas R (2007) Using OpenMP: portable shared memory parallel programming. MIT, October
Chen S, Schlosser SW (2008) Map-Reduce Meets Wider Varieties of Applications, IRP-TR-08-05, Technical Report, Intel Research Pittsburgh. Online at: http://www.pittsburgh.intel-research.net/~chensm/papers/IRP-TR-08-05.pdf
Colic A, Kalva H, Furht B (2010) Exploring NVIDA-CUDA for Video Coding. Proceedings of the first annual ACM SIGMM conference on Multimedia systems, pp 13–22
Conner J (2009) Customizing Input File Formats for Image Processing in Hadoop. Arizona State University. Online at: http://hpc.asu.edu/node/97
Conte G (2000) The long winding road to high-performance image processing with MMX/SSE. Proceedings of the Fifth IEEE International Workshop on Computer Architectures for Machine Perception, pp 249–258
Dean J, Ghemawat S (2004) MapReduce: Simplified Data Processing on Large Clusters. In Proceedings of OSDI ’04: 6th Symposium on Operating System Design and Implemention, San Francisco, CA. Online at: http://labs.google.com/papers/mapreduce.html
Diefendorff K et al (2000) AltiVec extension to PowerPC accelerates media processing. IEEE Micro 20(2):85–95
Ferretti M (2000) Multi-media extensions in super-pipelined micro-architectures. A new case for SIMD processing? Proceedings of the Fifth IEEE International Workshop on Computer Architectures for Machine Perception, pp 249–258
Garcia A Kalva H, Furht B (2010) Exploring A Study of Transcoding on Cloud Environments for Video Content Delivery. Proceedings of the Workshop on Mobile Cloud Media Computing, ACM Multimedia
HP Labs “VideoToon” Online at: http://www.hpl.hp.com/open_innovation/cloud_collaboration/cloud_demo_transcript.html
Kirk DB, Hwu WW (2010) Programming massively parallel processors—a hands on approach. Morgan Kaufmann
Krall A, Lelait S (2000) Compilation techniques for multimedia processors. Int J Parallel Program 28(4):347–361
Lee RB (1996) Subword parallelism with MAX-2. IEEE Micro 16(4):51–59
Lee JB, Kalva H (2009) The VC-I and H.264 video compression standards: for broadband video service. Springer
Leupers, R (1999) Compiler Optimizations for Media Processors. In J-Y Roger, B Stanford-Smith, PT Kidd (eds) Business and Work in the Information Society: New Technologies and Applications, IOS Press, ISBN 90-5199-491-5
Luebke D, et al. (2004) Gpgpu: general purpose computation on graphics hardware. Proceedings of the conference on SIGGRAPH 2004 course notes (New York, NY, USA): ACM Press, p 33
“Map/Reduce Tutorial” Online at: http://hadoop.apache.org/common/docs/current/mapred_tutorial.html
New York Times (2007) Self-service, Prorated Super Computing Fun! Online at: http://open.blogs.nytimes.com/2007/11/01/self-service-prorated-super-computing-fun/
Peleg A, Weiser U (1996) MMX technology extension to the Intel architecture. IEEE Micro 16(4):42–50
Trease H, Fraser D, Farber R, Elbert S Using transaction based parallel computing to solve image processing and computational physics problems. Online at: http://www.cca08.org/papers/Poster31-Harold-Trease.pdf
Tremblay M et al (1996) VIS speeds new media processing. IEEE Micro 16(4):10–20
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Kalva, H., Colic, A., Garcia, A. et al. Parallel programming for multimedia applications. Multimed Tools Appl 51, 801–818 (2011). https://doi.org/10.1007/s11042-010-0656-2
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11042-010-0656-2