Vbench: Benchmarking Video Transcoding in the Cloud

Vbench: Benchmarking Video Transcoding in the Cloud

Session 8B: Potpourri ASPLOS’18, March 24–28, 2018, Williamsburg, VA, USA vbench: Benchmarking Video Transcoding in the Cloud Andrea Lottarini1,* Alex Ramirez2 Joel Coburn2 Martha A. Kim1 Parthasarathy Ranganathan2 Daniel Stodolsky2 Mark Wachsler2 1Columbia University 2Google Abstract presentation, Mark Zuckerberg described Facebook’s evolu- This paper presents vbench, a publicly available benchmark tion into a “video first” company12 [ ]. The 2016 Sandvine for cloud video services. We are the first study, to the best Global Internet Phenomena report [33] places audio and of our knowledge, to characterize the emerging video-as-a- video at 71% of evening traffic in North America and projects service workload. Unlike prior video processing benchmarks, that figure will grow to 80% by 2020. Video processing plays vbench’s videos are algorithmically selected to represent a a pivotal role in virtual and augmented reality (Oculus Rift, large commercial corpus of millions of videos. Reflecting HoloLens), video surveillance (Nest), cloud gaming (GeForce the complex infrastructure that processes and hosts these Now, PlayStation Now), and other emerging applications. videos, vbench includes carefully constructed metrics and baselines. The combination of validated corpus, baselines, 100 and metrics reveal nuanced tradeoffs between speed, quality, and compression. We demonstrate the importance of video selection with a 10 microarchitectural study of cache, branch, and SIMD behav- ior. vbench reveals trends from the commercial corpus that are not visible in other video corpuses. Our experiments with 1 GPUs under vbench’s scoring scenarios reveal that context Growth Since June 2007 is critical: GPUs are well suited for live-streaming, while for SPECInt Rate 2006 Median YouTube Hours/Minute Uploaded video-on-demand shift costs from compute to storage and 0.1 network. Counterintuitively, they are not viable for popular 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 videos, for which highly compressed, high quality copies are required. We instead find that popular videos are currently well-served by the current trajectory of software encoders. Figure 1. Many hours of video are uploaded to YouTube ev- ery minute [21]. The uploads are growing more rapidly than ACM Reference Format: CPU performance (as measured on SPECRate2006), which Andrea Lottarini, Alex Ramirez, Joel Coburn, Martha A. Kim creates a growing burden on sharing infrastructure. Parthasarathy Ranganathan, Daniel Stodolsky, and Mark Wach- sler. 2018. vbench: Benchmarking Video Transcoding in the Cloud. In Proceedings of 2018 Architectural Support for Programming Lan- To keep up with growing usage, video on demand providers guages and Operating Systems (ASPLOS’18). ACM, New York, NY, such as Netflix, YouTube, and Facebook maintain large video USA, 13 pages. https://doi.org/10.1145/3173162.3173207 serving infrastructures. All these services perform a large number of transcoding operations [40], i.e., decoding a com- 1 Introduction pressed video into raw frames and re-encoding it in a new Video sharing represents a growing fraction of internet traf- compressed format. Each uploaded video is transcoded at fic. For example, in the November 2016 Facebook earnings least once before it is sent to viewers. This ensures videos that are malformed are not distributed. Even more importantly, ∗ The work was done when this author was an intern at Google. each upload must be converted to a range of resolutions, formats, and bitrates to suit varied viewer capabilities, i.e., screen resolution, codecs supported, and available network bandwidth. In every transcoding operation, there is a trade- off between compressed video size, fidelity to the original video, and transcoding time. For example, reducing video size may reduce visual quality but encourages smooth playback, ASPLOS’18, March 24–28, 2018, Williamsburg, VA, USA © 2018 Copyright held by the owner/author(s). thus potentially improving the overall quality of experience. ACM ISBN 978-1-4503-4911-6/18/03. Within a transcode operation, the decoding step, which https://doi.org/10.1145/3173162.3173207 converts a compressed video stream into a sequence of frames 797 Session 8B: Potpourri ASPLOS’18, March 24–28, 2018, Williamsburg, VA, USA ASPLOS’18, March 24–28, 2018, Williamsburg, VA, USA A. Lottarini et al. to be displayed, is deterministic and relatively fast. In con- cannot meet the strict quality and compression targets for trast, the encoding step has to make many decisions that popular videos, newer and more complex software encoders can not be exhaustively explored, so encoders perform a can. Collectively, these studies demonstrate the relevance of heuristic search over this decision space. Increasing the space our benchmark and the importance of having a curated set searched, also known as the effort level, increases the likeli- of videos, meaningful baselines, and encoding scenarios to hood of finding a better transcode, i.e., a compressed video evaluate new transcoding solutions. with less distortion, or lower bitrate. Transcoding is ripe for optimization. As Figure 1 depicts, demand is outstripping CPU performance, and within Google, 2 Background the cycles spent transcoding have grown by 10x in the last This section provides some background on video transcoding two years. Research is needed in order to advance areas like techniques, how they are evaluated, and the video sharing hardware video transcoding, evaluation of new video codecs, infrastructures where they play a crucial role. and related technologies. However, there is no well-defined To understand the importance of transcoding, consider way to compare transcoding solutions. In the video process- that a raw Full-HD frame (1920 * 1080 pixels) is roughly 3MB. ing community, encoders are evaluated in terms of visual Streaming uncompressed video at 30 frames/second would quality and bitrate. Large scale studies [7] show increases in require 90 MB/s, or 700 Mb/s, exceeding the capabilities of compression rate without hurting video quality. Computa- most home broadband installations. tion time, however, is not typically measured and thus also Since streaming raw video is not practical, it must always increases: as new codecs introduce new knobs and parame- be compressed. A video transcoder is a device or program ters, the search space grows. Our case study in Section 6.2 that decodes a compressed input video into a raw, uncom- demonstrates this effect. In the architecture community, two pressed format and then re-encodes it in a new compressed widely used benchmark suites, SPEC [19] and PARSEC [2], format. It is equivalent to a decoder and encoder chained include some video encoding use cases. However, the video together. While video decoding simply follows the inter- content and settings are not representative of a video sharing pretation rules for the bitstream of the video format, video infrastructure. encoding has a number of degrees of freedom to decide how To establish some common ground, this paper presents the raw video should be compressed. Video encoding for- a video transcoding benchmark, vbench, that reflects the mats, like H.264/AVC [38], H.265/HEVC [34], or VP9 [28], transcode demands of a video sharing service such as YouTube. are usually referred to as codecs. YouTube receives videos in thousands of combinations of vbench resolution, framerate, and complexity (entropy). uses 2.1 Video Transcoding clustering techniques to select 15 videos of 5 seconds each. This is a small enough number to allow detailed RTL or Video encoders exploit properties of human perception as microarchitecture simulations, but wide enough to cover a well as spatial and temporal redundancy in the video content. significant cross section of the corpus of millions of videos. Humans perceive changes in luminosity more than changes vbench also establishes a set of reference transcode opera- in color, therefore video processing is performed on the YUV tions against which other transcoder proposals can be com- color space, rather than in RGB. YUV separates luminosity pared. These operations are comparable with operations that signal (luma) from color information (chroma) allowing en- are performed at providers like YouTube. This ensures a con- coders to dedicate more bits for the luma plane than the sistent and appropriate baseline. Finally, vbench includes five chroma plane (a process called chroma subsampling). They comparison metrics that derive from real-world transcoding also rely on the fact that blocks of pixels in a frame are scenarios. These metrics guide meaningful improvements usually similar to other blocks of pixels in previous (and by enforcing constraints associated with video transcoding future) frames. Encoders take advantage of this similarity by at scale. expressing part of a frame as a function of blocks in other We demonstrate the value of vbench with four use cases. reference frames. First, we show how the choice of input videos can change Video encoders generally adhere to the following tem- the apparent microarchitectural trends and qualitative con- plate: First, video frames are decomposed in square blocks clusions from performance studies. Second, we quantify the of pixels called macroblocks. For each macroblock, the en- limits of SIMD vectorization for transcoding: consistent with coder searches temporally neighboring frames for similar other studies [17], we find that SIMD instructions can pro- macroblocks (motion estimation). This initial motion estima- vide

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    13 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us