Beta 1

Title Generation of a Fast JPEG 2000 Encoder using SPIRAL
Author Shen, Hao
Supervisor Probst, Christian W. (Language-Based Technology, Department of Informatics and Mathematical Modeling, Technical University of Denmark, DTU, DK-2800 Kgs. Lyngby, Denmark)
Institution Technical University of Denmark, DTU, DK-2800 Kgs. Lyngby, Denmark
Thesis level Master's thesis
Year 2008
Abstract Domain specific program generators reduce the need for tuning or rewriting performance libraries when new platforms are released. This thesis extends SPIRAL’s framework to automatically generate the entropy coding part in JPEG 2000 encoder - EBCOT (Embedded Block Coding with Optimal Truncation), which is the most time-consuming component in the entire encoding process. The EBCOT algorithm is initially expressed in the high level representation of Operator Language (OL), which is an extension of the Signal Processing Language (SPL). Breakdown rules and manipulation rules are then applied to generate and optimize formula on the implementation level. The formula is then translated into C-like code and code level optimization is applied. Finally, the C-like code is optimized by the spiral code compiler and is unparsed into C code. For encoding JPEG 2000 images, parallelization is used due to the fact that blocks are independently encoded, this exploits the multicore functionality of the most recent commercial processors. Vectorization is also used as an option to fully use the capabilities of short vector instruction set (Streaming SIMD Extensions) existing on the latest Intel Processors. A special adapted version of EBCOT is used to replace the open source reference implementation JasPer and the encoding performance compares and even outperforms that of Intel Performance Primitive.
Series IMM-M.Sc.-2008-77
Original PDF ep08_77_net.pdf (1.02 MB)
Admin Creation date: 2008-08-18    Update date: 2008-08-18    Source: dtu    ID: 222487    Original MXD