Ghent University Academic Bibliography

Advanced

Motion estimation for H.264/AVC on multiple GPUs using NVIDIA CUDA

Bart Pieters UGent, Charles Hollemeersch UGent, Peter Lambert UGent and Rik Van de Walle UGent (2009) PROCEEDINGS OF THE SOCIETY OF PHOTO-OPTICAL INSTRUMENTATION ENGINEERS (SPIE). 7443.
abstract
To achieve the high coding efficiency the H.264/AVC standard offers, the encoding process quickly becomes computationally demanding. One of the most intensive encoding phases is motion estimation. Even modern CPUs struggle to process high-definition video sequences in real-time. While personal computers are typically equipped with powerful Graphics Processing Units (GPUs) to accelerate graphics operations, these GPUs lie dormant when encoding a video sequence. Furthermore, recent developments show more and more computer configurations come with multiple GPUs. However, no existing GPU-enabled motion estimation architectures target multiple GPUs. In addition, these architectures provide no early-out behavior nor can they enforce a specific processing order. We developed a motion search architecture, capable of executing motion estimation and partitioning for an H.264/AVC sequence entirely on the GPU using the NVIDIA CUDA (Compute Unified Device Architecture) platform. This paper describes our architecture and presents a novel job scheduling system we designed, making it possible to control the GPU in a flexible way. This job scheduling system can enforce real-time demands of the video encoder by prioritizing calculations and providing an early-out mode. Furthermore, the job scheduling system allows the use of multiple GPUs in one computer system and efficient load balancing of the motion search over these GPUs. This paper focuses on the execution speed of the novel job scheduling system on both single and multi-GPU systems. Initial results show that real-time full motion search of 720p high-definition content is possible with a 32 by 32 search window running on a system with four GPUs.
Please use this url to cite or link to this publication:
author
organization
year
type
conference
publication status
published
subject
keyword
coprocessors, GPU, encoding, graphics hardware, H.264/AVC, image sequences, motion estimation, video coding
in
PROCEEDINGS OF THE SOCIETY OF PHOTO-OPTICAL INSTRUMENTATION ENGINEERS (SPIE)
Proc. Soc. Photo-Opt. Instrum. Eng. (SPIE)
editor
Andrew G Tescher
volume
7443
issue title
Applications of digital image processing XXXII
article_number
74430X
pages
12 pages
publisher
SPIE, the International Society for Optical Engineering
place of publication
Bellingham, WA, USA
conference name
Applications of Digital Image Processing XXXII
conference location
San Diego, CA, USA
conference start
2009-08-03
conference end
2009-08-05
Web of Science type
Conference Paper
Web of Science id
10949522
ISSN
0277-786X
ISBN
9780819477330
9780819477668
DOI
10.1117/12.825995
language
English
UGent publication?
yes
classification
C1
copyright statement
I have transferred the copyright for this publication to the publisher
id
817391
handle
http://hdl.handle.net/1854/LU-817391
date created
2010-01-04 14:04:17
date last changed
2010-10-18 13:59:43
@inproceedings{817391,
  abstract     = {To achieve the high coding efficiency the H.264/AVC standard offers, the encoding process quickly becomes computationally demanding. One of the most intensive encoding phases is motion estimation. Even modern CPUs struggle to process high-definition video sequences in real-time. While personal computers are typically equipped with powerful Graphics Processing Units (GPUs) to accelerate graphics operations, these GPUs lie dormant when encoding a video sequence. Furthermore, recent developments show more and more computer configurations come with multiple GPUs. However, no existing GPU-enabled motion estimation architectures target multiple GPUs. In addition, these architectures provide no early-out behavior nor can they enforce a specific processing order. We developed a motion search architecture, capable of executing motion estimation and partitioning for an H.264/AVC sequence entirely on the GPU using the NVIDIA CUDA (Compute Unified Device Architecture) platform. This paper describes our architecture and presents a novel job scheduling system we designed, making it possible to control the GPU in a flexible way. This job scheduling system can enforce real-time demands of the video encoder by prioritizing calculations and providing an early-out mode. Furthermore, the job scheduling system allows the use of multiple GPUs in one computer system and efficient load balancing of the motion search over these GPUs. This paper focuses on the execution speed of the novel job scheduling system on both single and multi-GPU systems. Initial results show that real-time full motion search of 720p high-definition content is possible with a 32 by 32 search window running on a system with four GPUs.},
  articleno    = {74430X},
  author       = {Pieters, Bart and Hollemeersch, Charles and Lambert, Peter and Van de Walle, Rik},
  booktitle    = {PROCEEDINGS OF THE SOCIETY OF PHOTO-OPTICAL INSTRUMENTATION ENGINEERS (SPIE)},
  editor       = {Tescher, Andrew G},
  isbn         = {9780819477330},
  issn         = {0277-786X},
  keyword      = {coprocessors,GPU,encoding,graphics hardware,H.264/AVC,image sequences,motion estimation,video coding},
  language     = {eng},
  location     = {San Diego, CA, USA},
  pages        = {12},
  publisher    = {SPIE, the International Society for Optical Engineering},
  title        = {Motion estimation for H.264/AVC on multiple GPUs using NVIDIA CUDA},
  url          = {http://dx.doi.org/10.1117/12.825995},
  volume       = {7443},
  year         = {2009},
}

Chicago
Pieters, Bart, Charles Hollemeersch, Peter Lambert, and Rik Van de Walle. 2009. “Motion Estimation for H.264/AVC on Multiple GPUs Using NVIDIA CUDA.” In Proceedings of the Society of Photo-optical Instrumentation Engineers (spie), ed. Andrew G Tescher. Vol. 7443. Bellingham, WA, USA: SPIE, the International Society for Optical Engineering.
APA
Pieters, B., Hollemeersch, C., Lambert, P., & Van de Walle, R. (2009). Motion estimation for H.264/AVC on multiple GPUs using NVIDIA CUDA. In A. G. Tescher (Ed.), PROCEEDINGS OF THE SOCIETY OF PHOTO-OPTICAL INSTRUMENTATION ENGINEERS (SPIE) (Vol. 7443). Presented at the Applications of Digital Image Processing XXXII, Bellingham, WA, USA: SPIE, the International Society for Optical Engineering.
Vancouver
1.
Pieters B, Hollemeersch C, Lambert P, Van de Walle R. Motion estimation for H.264/AVC on multiple GPUs using NVIDIA CUDA. In: Tescher AG, editor. PROCEEDINGS OF THE SOCIETY OF PHOTO-OPTICAL INSTRUMENTATION ENGINEERS (SPIE). Bellingham, WA, USA: SPIE, the International Society for Optical Engineering; 2009.
MLA
Pieters, Bart, Charles Hollemeersch, Peter Lambert, et al. “Motion Estimation for H.264/AVC on Multiple GPUs Using NVIDIA CUDA.” Proceedings of the Society of Photo-optical Instrumentation Engineers (spie). Ed. Andrew G Tescher. Vol. 7443. Bellingham, WA, USA: SPIE, the International Society for Optical Engineering, 2009. Print.