| Programming portable optimized multimedia applications |
| Full text |
Pdf
(160 KB)
|
| Source
|
International Multimedia Conference
archive
Proceedings of the eleventh ACM international conference on Multimedia
table of contents
Berkeley, CA, USA
SESSION: Reception and posters
table of contents
Pages: 291 - 294
Year of Publication: 2003
ISBN:1-58113-722-2
|
|
Authors
|
|
| Sponsors |
|
| Publisher |
|
| Bibliometrics |
Downloads (6 Weeks): 6, Downloads (12 Months): 22, Citation Count: 0
|
|
|
ABSTRACT
Multimedia computer architectures can speed-up applications significantly when programmed manually. Optimized programs have been non-portable up to now, because of differences in instruction sets, register lengths, alignment requirements and programming styles. We solve all these problems by using a library of C pre-processor macros called MMM. We implemented three examples from video compression in MMM, and automatically translated them into optimized code for four distinct multimedia processors. Their performance is comparable, and in several cases better, than equivalent examples optimized by the processor vendors.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
Cockshott, P. Vector Pascal, an Array Language. http://www.dcs.gla.ac.uk/~wpc/reports/compilers/compilerindex/vp-ver2.pdf
|
| |
2
|
Fisher, R.J., and Dietz, H.G. Compiling for SIMD Within a Register. Lecture Notes in Computer Science 1656 (1998), Springer, 292--304.
|
| |
3
|
|
| |
4
|
Intel Corp. Intel Integrated Performance Primitives for Intel Pentium Processors and Intel Itanium Architectures. http://www.intel.com/software/products/ipp/ipp30/.
|
| |
5
|
Intel Corp. Using Streaming SIMD Extensions 2 (SSE2) to Implement an Inverse Discrete Cosine Transform, Version 2.0, Application Note AP-945, July 2000. http://cedar.intel.com/media/pdf/appnotes/sse2/w_idct.pdf.
|
| |
6
|
Intel Corp. A Fast Precise 8x8 DCT A Fast Precise Implementation of 8x8 Discrete Cosine Transform Using the Streaming SIMD Extensions and MMX Instructions, Version 1.0, Application Note AP-922, Apr. 1999. http://cedar.intel.com/media/pdf/appnotes/ap922/ap922.pdf
|
| |
7
|
Intel Corp. Using Streaming SIMD Extensions in a Motion Estimation Algorithm for MPEG Encoding, Version 1.2, Application Note AP-818, Jan. 1999. http://cedar.intel.com/media/pdf/appnotes/ap818/motion_e.pdf.
|
| |
8
|
Intel Corp. Block-Matching in Motion Estimation Algorithms Using Streaming SIMD Extensions 2 (SSE2): Version 2.0, Application Note AP-940, July 2000. http://cedar.intel.com/media/pdf/appnotes/sse2/w_me_alg.pdf.
|
| |
9
|
Motorola, Inc. 2D Inverse Discrete Cosine Transform. http://e-www.motorola.com/collateral/AVEC_2DICOSTRANS.zip.
|
| |
10
|
Motorola, Inc. Sum of Absolute Differences. http://e-www.motorola.com/collateral/AVEC_SAD.zip.
|
| |
11
|
Philips Semiconductors. Case Studies. Book 2, Part D, Chapter 12 of Philips TriMedia Documentation Set: SDE Version 2.1, 1999, CD-ROM.
|
| |
12
|
Shwartz, D., et al. VSIPL 1.01 API. http://www.vsipl.org/CD/vsiplv1p01_final1.pdf.
|
INDEX TERMS
Primary Classification:
D.
Software
D.3
PROGRAMMING LANGUAGES
D.3.4
Processors
Subjects:
Optimization
Additional Classification:
D.
Software
D.2
SOFTWARE ENGINEERING
D.2.7
Distribution, Maintenance, and Enhancement
Subjects:
Portability
D.3
PROGRAMMING LANGUAGES
D.3.4
Processors
Subjects:
Code generation
General Terms:
Algorithms,
Languages,
Measurement,
Performance
Keywords:
AltiVec,
MMX,
SIMD,
SSE,
SSE2,
TriMedia,
multimedia,
optimization,
portability
|