Improving Discrete Cosine Transform performance using Intel(R) Cilk(TM) Plus

DCT and Quantization are the first two steps in JPEG compression standard. This article demonstrates how DCT and Quantizing stages can be implemented to run faster using Intel® Cilk™ Plus. In order to see the effect of quantization on the image, the output of Quantization phase is passed on to the de-quantizer followed by Inverse DCT and stored as an output image file.

• Développeurs
• Partenaires
• Professeurs
• Étudiants
• Linux*
• Microsoft Windows* 8.x
• Unix*
• Client d’entreprise
• Code produit
• Serveur
• Windows*
• C/C++
• Avancé
• Débutant
• Intermédiaire
• Compilateur Intel® C++
• Intel® Cilk™ Plus
• Intel® Parallel Studio XE
• Intel® Parallel Studio XE Composer Edition
• Intel® Parallel Studio XE Professional Edition
• DCT
• IDCT
• JPEG
• Extensions Intel® Streaming SIMD
• Outils de développement
• Éducation
• Graphiques
• Processeur Intel® Core™
• Optimisation
• Parallélisation
• Vectorisation
• “How Fish Evolve into Squirrels”, now in 3D!

Up to now I’ve tried to put across the fundamental principles of video encoding methods “in hand-waving terms” (I’ve hardly got any more hands to wave now). I have touched on the basics of eliminating the time and space redundancy. Now I suggest we look at the 3D-DCT transform, which is such a great success, as an idea, at uniting both of the above concepts. Here is the mathematical description of the transform:

DCT, or Down the Rabbit-Hole (Part III, Fourier)

It would be difficult to name an area of science that didn’t apply a Fourier transform somewhere. Fourier’s genius discovered a unique instrument linking the continuous and discrete worlds. The effectiveness of this instrument has been proven in theoretical terms as well as in actual practice. A Fourier tranform allows us to see our problem from a new, clearer prospective.

DCT, or Down the Rabbit-Hole (Part II, Orthogonal)

In the first part of this epic we investigated the substance of the issue and promised to build a two dimensional transform. Now is the time to get down to it.

DCT, or Down the Rabbit-Hole (Part I, Correlated)

Until now we have discussed only one aspect of video encoding, namely how to eliminate time redundancy. It’s time to talk about the space, or frequency redundancy, and to find out “just how deep the rabbit hole is”.

«О эволюции рыб в белок», теперь в 3D!

В предыдущей статье я дал опрометчивое обещание завершить серию записей о математических преобразованиях. Не тут-то было.

DCT или Вниз по кроличьей норе (часть третья, Фурье)

«Подумать только, что из-за какой-то вещи

можно так уменьшиться, что превратиться в ничто»

Льюис Кэрролл, «Алиса в стране чудес»

Сложно назвать область науки в которой бы не нашлось места для применения преобразования Фурье. Гений Фурье открыл уникальный инструмент, который связывает непрерывные и дискретные миры. Инструмент, полезность которого доказана не только на бумаге, но и, в больше степени, при решении реальных проблем. Инструмент, позволяющий увидеть проблему в новой, более ясной перспективе.

DCT или Вниз по кроличьей норе (часть вторая, ортогональная)

«Подумать только, что из-за какой-то вещи

можно так уменьшиться, что превратиться в ничто»

Льюис Кэрролл, «Алиса в стране чудес»

В первой части сего эпоса мы разобрались в сути вопроса и пообещались построить двухмерное преобразование. Самое время начать.

DCT или Вниз по кроличьей норе (часть первая, про корреляцию)

«Подумать только, что из-за какой-то вещи

можно так уменьшиться, что превратиться в ничто»

Льюис Кэрролл, «Алиса в стране чудес»

До этих самых пор мы обсуждали лишь один из аспектов видеокодирования – устранение временной избыточности. Пришло время поговорить о пространственной или частотной избыточности и выяснить «глубока ли кроличья нора».