Skip to the main content

Original scientific paper

https://doi.org/10.1080/00051144.2020.1752046

Performance engineering for HEVC transform and quantization kernel on GPUs

Mate Čobrnić ; Faculty of Electrical Engineering and Computing, University of Zagreb, Zagreb, Croatia
Alen Duspara ; Faculty of Electrical Engineering and Computing, University of Zagreb, Zagreb, Croatia
Leon Dragić ; Faculty of Electrical Engineering and Computing, University of Zagreb, Zagreb, Croatia
Igor Piljić ; Faculty of Electrical Engineering and Computing, University of Zagreb, Zagreb, Croatia
Mario Kovač ; Faculty of Electrical Engineering and Computing, University of Zagreb, Zagreb, Croatia


Full text: english pdf 2.304 Kb

page 325-333

downloads: 305

cite


Abstract

Continuous growth of video traffic and video services, especially in the field of high resolution and high-quality video content, places heavy demands on video coding and its implementations. High Efficiency Video Coding (HEVC) standard doubles the compression efficiency of its predecessor H.264/AVC at the cost of high computational complexity. To address those computing issues high-performance video processing takes advantage of heterogeneous multiprocessor platforms. In this paper, we present a highly performance-optimized HEVC transform and quantization kernel with all-zero-block (AZB) identification designed for execution on a Graphics Processor Unit (GPU). Performance optimization strategy involved all three aspects of parallel design, exposing as much of the application’s intrinsic parallelism as possible, exploitation of high throughput memory and efficient instruction usage. It combines efficient mapping of transform blocks to thread-blocks and efficient vectorized access patterns to shared memory for all transform sizes supported in the standard. Two different GPUs of the same architecture were used to evaluate proposed implementation. Achieved processing times are 6.03 and 23.94 ms for DCI 4K and 8K Full Format, respectively. Speedup factors compared to CPU, cuBLAS and AVX2 implementations are up to 80, 19 and 4 times respectively. Proposed implementation outperforms previous work 1.22 times.

Keywords

Integer discrete cosine transform (DCT); high efficiency video coding (HEVC); Graphics processor unit (GPU); matrix multiplication; compute unified device architecture (CUDA)

Hrčak ID:

239874

URI

https://hrcak.srce.hr/239874

Publication date:

25.6.2020.

Visits: 884 *