Starfish: Efficient concurrency support for computer vision applications

Robert LiKamWa, Lin Zhong

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

26 Scopus citations

Abstract

Emerging wearable devices promise a multitude of computer visionbased applications that serve users without active engagement. However, vision algorithms are known to be resource-hungry; and modern mobile systems do not support concurrent application use of the camera. Toward supporting efficient concurrency of vision applications, we report Starfish, a split-process execution system that supports concurrent vision applications by allowing them to share computation and memory objects in a secure and efficient manner. Starfish splits the vision library from an application into a separate process, called the Core, which centrally serves all vision applications. The Core shares library call results among applications, eliminating redundant computation and memory use. Starfish supports unmodified applications and unmodified libraries without needing their source code, and guarantees correctness to the applications. In doing so, Starfish improves both the performance and energy efficiency of concurrent vision applications. Using a prototype implementation on Google Glass, we experimentally demonstrate that Starfish reduces the time spent processing repeated vision library calls by 71% - 97%. When running two to ten concurrent face recognition applications at 0:3 frames per second, Starfish reduces CPU utilization by more than 42% - 80%. Notably, this keeps CPU utilization below 13%, even as the number of applications increases. This reduces system power consumption by 19% - 58%, as Starfish maintains a power consumption at approximately 1210 mW while running the concurrent application workloads.

Original languageEnglish (US)
Title of host publicationMobiSys 2015 - Proceedings of the 13th Annual International Conference on Mobile Systems, Applications, and Services
PublisherAssociation for Computing Machinery, Inc
Pages213-226
Number of pages14
ISBN (Electronic)9781450334945
DOIs
StatePublished - May 18 2015
Event13th Annual International Conference on Mobile Systems, Applications, and Services, MobiSys 2015 - Florence, Italy
Duration: May 18 2015May 22 2015

Publication series

NameMobiSys 2015 - Proceedings of the 13th Annual International Conference on Mobile Systems, Applications, and Services

Other

Other13th Annual International Conference on Mobile Systems, Applications, and Services, MobiSys 2015
CountryItaly
CityFlorence
Period5/18/155/22/15

Keywords

  • Computer vision
  • Memoization
  • Mobile computing
  • Vision library

ASJC Scopus subject areas

  • Electrical and Electronic Engineering
  • Computer Networks and Communications
  • Computer Science Applications

Fingerprint Dive into the research topics of 'Starfish: Efficient concurrency support for computer vision applications'. Together they form a unique fingerprint.

  • Cite this

    LiKamWa, R., & Zhong, L. (2015). Starfish: Efficient concurrency support for computer vision applications. In MobiSys 2015 - Proceedings of the 13th Annual International Conference on Mobile Systems, Applications, and Services (pp. 213-226). (MobiSys 2015 - Proceedings of the 13th Annual International Conference on Mobile Systems, Applications, and Services). Association for Computing Machinery, Inc. https://doi.org/10.1145/2742647.2742663