Encoding, fast and slow: Low-latency video processing using thousands of tiny threads

Sadjad Fouladi, Riad S. Wahby, Brennan Shacklett, Karthikeyan Vasuki Balasubramaniam, William Zeng, Rahul Bhalerao, Anirudh Sivaraman, George Porter, Keith Winstein

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

We describe ExCamera, a system that can edit, transform, and encode a video, including 4K and VR material, with low latency. The system makes two major contributions. First, we designed a framework to run general-purpose parallel computations on a commercial “cloud function” service. The system starts up thousands of threads in seconds and manages inter-thread communication. Second, we implemented a video encoder intended for fine-grained parallelism, using a functional-programming style that allows computation to be split into thousands of tiny tasks without harming compression efficiency. Our design reflects a key insight: the work of video encoding can be divided into fast and slow parts, with the “slow” work done in parallel, and only “fast” work done serially.

Original languageEnglish (US)
Title of host publicationProceedings of the 14th USENIX Symposium on Networked Systems Design and Implementation, NSDI 2017
PublisherUSENIX Association
Pages363-376
Number of pages14
ISBN (Electronic)9781931971379
StatePublished - Jan 1 2017
Event14th USENIX Symposium on Networked Systems Design and Implementation, NSDI 2017 - Boston, United States
Duration: Mar 27 2017Mar 29 2017

Publication series

NameProceedings of the 14th USENIX Symposium on Networked Systems Design and Implementation, NSDI 2017

Conference

Conference14th USENIX Symposium on Networked Systems Design and Implementation, NSDI 2017
CountryUnited States
CityBoston
Period3/27/173/29/17

ASJC Scopus subject areas

  • Control and Systems Engineering
  • Computer Networks and Communications

Fingerprint Dive into the research topics of 'Encoding, fast and slow: Low-latency video processing using thousands of tiny threads'. Together they form a unique fingerprint.

  • Cite this

    Fouladi, S., Wahby, R. S., Shacklett, B., Balasubramaniam, K. V., Zeng, W., Bhalerao, R., Sivaraman, A., Porter, G., & Winstein, K. (2017). Encoding, fast and slow: Low-latency video processing using thousands of tiny threads. In Proceedings of the 14th USENIX Symposium on Networked Systems Design and Implementation, NSDI 2017 (pp. 363-376). (Proceedings of the 14th USENIX Symposium on Networked Systems Design and Implementation, NSDI 2017). USENIX Association.