1 / 7

Increasing Application Speed by combining DCT and Quant Component

Increasing Application Speed by combining DCT and Quant Component. BUFFERS. 18432 bytes. 36976 bytes. 37840 bytes. FREAD Reading 8-bit input data from file. DCT Discrete Cosine Transform. Quant Quantizing 6 DCT blocks : 4Y+1U+1V. VLCEnc Variable Length Coding Encoder.

toan
Download Presentation

Increasing Application Speed by combining DCT and Quant Component

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Increasing Application Speed by combining DCT and Quant Component

  2. BUFFERS 18432 bytes 36976 bytes 37840 bytes FREAD Reading 8-bit input data from file DCT Discrete Cosine Transform Quant Quantizing 6 DCT blocks : 4Y+1U+1V VLCEnc Variable Length Coding Encoder QUANT-VLCEnc Buffer Macroblock (mb_frame_t : 37728 bytes) Parameter (travel_frame_pars_t : 112 bytes) Total Buffers : 37840 bytes Fread-DCT Buffer Y8-bit (Y_frame_t : 12288 bytes) U8-bit (UV_frame_t : 3072 bytes) V8-bit (UV_frame_t : 3072 bytes)  Total Buffers : 18432 bytes DCT-QUANT Buffer Y16-bit (Y_frame16_t : 24576 bytes) U16-bit (UV_frame16_t : 6144 bytes) V16-bit (UV_frame16_t : 6144 bytes) Parameter (travel_frame_pars_t : 112 bytes)  Total Buffers : 36976 bytes DCT and Quant as separated components exolTry.out Cycles=10340038

  3. 55408 bytes 37840 bytes DCT-Quant Fread-DCTQuantBuffer Y8-bit (Y_frame_t : 12288 bytes) U8-bit (UV_frame_t : 3072 bytes) V8-bit (UV_frame_t : 3072 bytes) Parameter (travel_frame_pars_t : 112 bytes) Y16-bit (Y_frame16_t : 24576 bytes) U16-bit (UV_frame16_t : 6144 bytes) V16-bit (UV_frame16_t : 6144 bytes)  Total Buffers : 55408 bytes Inpacket Outpacket FREAD Reading 8-bit input data from file FREAD Reading 8-bit input data from file DCT Discrete Cosine Transform Quant Quantizing 6 DCT blocks : 4Y+1U+1V VLCEnc Variable Length Coding Encoder VLCEnc Variable Length Coding Encoder Y8-bit (12288) U8-bit (3072) V8-bit (3072) Parameter (112) Y16-bit (24576) U16-bit (6144) V16-bit (6144) Discrete Cosine Transform Processing Parameter (112) Macroblock (37728) DCT-Quant Discrete Cosine Transform, then Quantizing the DCT blocks DCT-Quant Discrete Cosine Transform, then Quantizing the DCT blocks Quantizing Process Solution 1: DCT-Quant with a BIG Buffer 18432 bytes Advantage : 1. Combined Component  Removing header process  Faster Disadvantages : 1. Big Buffer  Wasting Memory 2. Same Variable Structure in Buffer  No Speed Reduction in Declaring Buffer exolTry.out Cycles= 10340038 exolTry.out Cycles=10281109

  4. 36976 bytes 37840 bytes DCT-Quant Fread-DCTQUANT Buffer Y16-bit (Y_frame16_t : 24576 bytes) U16-bit (UV_frame16_t : 6144 bytes) V16-bit (UV_frame16_t : 6144 bytes) Parameter (travel_frame_pars_t : 112 bytes)  Total Buffers : 36976 bytes Inpacket Outpacket FREAD Reading 16-bit input data from File FREAD Reading 16-bit input data from file DCT Discrete Cosine Transform Quant Quantizing 6 DCT blocks : 4Y+1U+1V VLCEnc Variable Length Coding Encoder VLCEnc Variable Length Coding Encoder Y16-bit (24576) U16-bit (6144) V16-bit (6144) Parameter (112) Discrete Cosine Transform Processing Parameter (112) Macroblock (37728) DCT-Quant Discrete Cosine Transform, then Quantizing the DCT blocks DCT-Quant Discrete Cosine Transform, then Quantizing the DCT blocks Quantizing Process Solution 2: DCT-Quant with 16-bit Input 18432 bytes Advantage : 1. Combined Component  Removing header process  Faster 2. Reusing the input Variables  Saving the memory in Buffer Disadvantage : 1. Input data must be in 16-bit  Need more processing if we have 8-bit input exolTry.out Cycles= 10340038 exolTry.out Cycles=10231500

  5. 18432 bytes 37840 bytes DCT-Quant Inpacket Outpacket FREAD Reading 8-bit input data from File FREAD Reading 8-bit input data from file DCT Discrete Cosine Transform Quant Quantizing 6 DCT blocks : 4Y+1U+1V VLCEnc Variable Length Coding Encoder VLCEnc Variable Length Coding Encoder Y8-bit (12288) U8-bit (3072) V8-bit (3072) Parameter (112) Discrete Cosine Transform Processing Quantizing Process Macroblock (37728) Parameter (112) Fread-DCT Buffer Y8-bit (Y_frame_t : 12288 bytes) U8-bit (UV_frame_t : 3072 bytes) V8-bit (UV_frame_t : 3072 bytes)  Total Buffers : 18432 bytes DCT-Quant Discrete Cosine Transform, then Quantizing the DCT blocks DCT-Quant Discrete Cosine Transform, then Quantizing the DCT blocks Y16-bit (24576) U16-bit (6144) V16-bit (6144) Temp Vars Solution 3: DCT-Quant with Temporary Variables 18432 bytes Advantages : 1. Less Buffer needed 2. Combined Component  Removing header process  Faster Disadvantage : 1. Declaring & Freeing memory for temporary variables  Needs more time exolTry.out Cycles= 10340038 exolTry.out Cycles=10289104

  6. Comparison Solution 1: BIG Buffer Solution 2: 16-bit Input Solution 3: Temp Vars. Big Buffer  Wasting Memory No Speed Reduction in Declaring Buffer Reusing the input Variables  Saving the memory in Buffer Input data must be in 16-bit  Need more processing if we have 8-bit input Less Buffer needed Declaring & Freeing memory for temporary variables  Needs more time Buffer : 55408 bytes Buffer : 36976 bytes Buffer : 18432 bytes Cycles=10281109 Cycles=10231500 Cycles=10289104

  7. End

More Related