skip to main content
research-article

Potluck: Cross-Application Approximate Deduplication for Computation-Intensive Mobile Applications

Published:19 March 2018Publication History
Skip Abstract Section

Abstract

Emerging mobile applications, such as cognitive assistance and augmented reality (AR) based gaming, are increasingly computation-intensive and latency-sensitive, while running on resource-constrained devices. The standard approaches to addressing these involve either offloading to a cloud(let) or local system optimizations to speed up the computation, often trading off computation quality for low latency. Instead, we observe that these applications often operate on similar input data from the camera feed and share common processing components, both within the same (type of) applications and across different ones. Therefore, deduplicating processing across applications could deliver the best of both worlds. In this paper, we present Potluck, to achieve approximate deduplication. At the core of the system is a cache service that stores and shares processing results between applications and a set of algorithms to process the input data to maximize deduplication opportunities. This is implemented as a background service on Android. Extensive evaluation shows that Potluck can reduce the processing latency for our AR and vision workloads by a factor of 2.5 to 10.

References

  1. Alexa Skills Kit: Add Voice to Your Big Idea and Reach More Customers. https://developer.amazon.com/alexa-skills-kit.Google ScholarGoogle Scholar
  2. Android Interface Definition Language for IPC. https://developer.android.com/guide/components/aidl.html.Google ScholarGoogle Scholar
  3. Google's indoor VPS navigation by Tango-ready phone. http://mashable.com/2017/05/google-visual-positioning-service-tango-augmented-reality/.Google ScholarGoogle Scholar
  4. How stores will use augmented reality. https://www.technologyreview.com/s/601664/.Google ScholarGoogle Scholar
  5. N-Dimensional Arrays for Java. http://nd4j.org/.Google ScholarGoogle Scholar
  6. Open-source computer vision. http://opencv.org/.Google ScholarGoogle Scholar
  7. Openhft java runtime compiler. https://github.com/OpenHFT/Java-Runtime-Compiler.Google ScholarGoogle Scholar
  8. Openshade with visually impaired users. http://www.openshades.com/.Google ScholarGoogle Scholar
  9. PokeMon Go augmented reality game. http://www.pokemongo.com/.Google ScholarGoogle Scholar
  10. World around you with Google Lens and the Assistant. https://www.blog.google/products/assistant/world-around-you-google-lens-and-assistant/.Google ScholarGoogle Scholar
  11. M. Abadi, P. Barham, J. Chen, Z. Chen, A. Davis, J. Dean, M. Devin, S. Ghemawat, G. Irving, M. Isard, et al. TensorFlow: A System for Large-Scale Machine Learning. In OSDI, volume 16, pages 265--283, 2016. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. H. Bay, T. Tuytelaars, and L. Van Gool. Surf: Speeded up robust features. In European conference on computer vision, pages 404--417. Springer, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. G. Bertasius, J. Shi, and L. Torresani. Deepedge: A multi-scale bifurcated deep network for top-down contour detection. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pages 4380--4389, 2015.Google ScholarGoogle ScholarCross RefCross Ref
  14. K. Boos, D. Chu, and E. Cuervo. Flashback: Immersive virtual reality on mobile devices via rendering memoization. In Proceedings of the 14th Annual International Conference on Mobile Systems, Applications, and Services, pages 291--304. ACM, 2016. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. T. Y.-H. Chen, L. Ravindranath, S. Deng, P. Bahl, and H. Balakrishnan. Glimpse: Continuous, real-time object recognition on mobile devices. In Proceedings of the 13th ACM Conference on Embedded Networked Sensor Systems, pages 155--168. ACM, 2015. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. M. Datar, N. Immorlica, P. Indyk, and V. S. Mirrokni. Locality-sensitive hashing scheme based on p-stable distributions. In Proceedings of the twentieth annual symposium on Computational geometry, pages 253--262. ACM, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. H. Falaki, R. Mahajan, S. Kandula, D. Lymberopoulos, R. Govindan, and D. Estrin. Diversity in smartphone usage. In Proceedings of the 8th international conference on Mobile systems, applications, and services, pages 179--194. ACM, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. J. Flinn. Cyber foraging: Bridging mobile and cloud computing. Synthesis Lectures on Mobile and Pervasive Computing, 7(2):1--103, 2012.Google ScholarGoogle ScholarCross RefCross Ref
  19. P. Georgiev, N. D. Lane, K. K. Rachuri, and C. Mascolo. LEO: Scheduling sensor inference algorithms across heterogeneous mobile processors and network resources. In Proceedings of the Annual International Conference on Mobile Computing and Networking, MobiCom16. ACM, 2016. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. P. K. Gunda, L. Ravindranath, C. A. Thekkath, Y. Yu, and L. Zhuang. Nectar: Automatic Management of Data and Computation in Datacenters. In OSDI, volume 10, pages 1--8, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. K. Ha, Z. Chen, W. Hu, W. Richter, P. Pillai, and M. Satyanarayanan. Towards Wearable Cognitive Assistance. In Proceedings of the 12th Annual International Conference on Mobile Systems, Applications, and Services, MobiSys '14, pages 68--81, New York, NY, USA, 2014. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. J. Hafner, H. S. Sawhney, W. Equitz, M. Flickner, and W. Niblack. Efficient color histogram indexing for quadratic form distance functions. IEEE transactions on pattern analysis and machine intelligence, 17(7):729--736, 1995. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. S. Han, H. Shen, M. Philipose, S. Agarwal, A. Wolman, and A. Krishnamurthy. MCDNN: An Approximation-Based Execution Framework for Deep Stream Processing Under Resource Constraints. In Proceedings of the 14th Annual International Conference on Mobile Systems, Applications, and Services, MobiSys '16, pages 123--136, New York, NY, USA, 2016. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. C. Harris and M. Stephens. A combined corner and edge detector. In Alvey vision conference, volume 15, pages 10--5244. Citeseer, 1988.Google ScholarGoogle Scholar
  25. I. Jolliffe. Principal component analysis. Wiley Online Library, 2002.Google ScholarGoogle Scholar
  26. K. Kannan, S. Bhattacharya, K. Raj, M. Murugan, and D. Voigt. Seesaw-similarity exploiting storage for accelerating analytics workflows. In HotStorage, 2016. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. J. M. Keller, M. R. Gray, and J. A. Givens. A fuzzy k-nearest neighbor algorithm. IEEE transactions on systems, man, and cybernetics, (4):580--585, 1985.Google ScholarGoogle Scholar
  28. A. Krizhevsky and G. Hinton. Learning multiple layers of features from tiny images. 2009.Google ScholarGoogle Scholar
  29. A. Krizhevsky, I. Sutskever, and G. E. Hinton. Imagenet classification with deep convolutional neural networks. In Advances in neural information processing systems, pages 1097--1105, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. J. Le Feuvre, J. Thiesse, M. Parmentier, M. Raulet, and C. Daguet. Ultra high definition HEVC DASH data set. In Proceedings of the 5th ACM Multimedia Systems Conference, pages 7--12. ACM, 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Y. LeCun, C. Cortes, and C. J. Burges. Mnist handwritten digit database. AT&T Labs {Online}. Available: http://yann.lecun.com/exdb/mnist, 2, 2010.Google ScholarGoogle Scholar
  32. K. Lee, D. Chu, E. Cuervo, J. Kopf, Y. Degtyarev, S. Grizan, A. Wolman, and J. Flinn. Outatime: Using Speculation to Enable Low-Latency Continuous Interaction for Mobile Cloud Gaming. In Proceedings of the 13th Annual International Conference on Mobile Systems, Applications, and Services, MobiSys '15, pages 151--165, New York, NY, USA, 2015. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. R. LiKamWa and L. Zhong. Starfish: Efficient concurrency support for computer vision applications. In Proceedings of the 13th Annual International Conference on Mobile Systems, Applications, and Services, pages 213--226. ACM, 2015. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. X. Liu, H. Li, X. Lu, T. Xie, Q. Mei, H. Mei, and F. Feng. Understanding Diverse Smarpthone Usage Patterns from Large-Scale Appstore-Service Profiles. arXiv preprint arXiv:1702.05060, 2017.Google ScholarGoogle Scholar
  35. D. G. Lowe. Distinctive image features from scale-invariant keypoints. International journal of computer vision, 60(2):91--110, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. L. McMillan and G. Bishop. Plenoptic modeling: An image-based rendering system. In Proceedings of the 22nd annual conference on Computer graphics and interactive techniques, pages 39--46. ACM, 1995. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. F. D. McSherry, R. Isaacs, M. A. Isard, and D. G. Murray. Differential dataflow, Oct. 20 2015. US Patent 9,165,035.Google ScholarGoogle Scholar
  38. P. Mermelstein. Distance measures for speech recognition, psychological and instrumental. Pattern recognition and artificial intelligence, 116:374--388, 1976.Google ScholarGoogle Scholar
  39. J. S. Miguel, J. Albericio, A. Moshovos, and N. E. Jerger. Doppelg"anger: A Cache for Approximate Computing. In Proceedings of the 48th International Symposium on Microarchitecture, pages 50--61. ACM, 2015. Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. B. D. Noble, M. Satyanarayanan, D. Narayanan, J. E. Tilton, J. Flinn, and K. R. Walker. Agile Application-aware Adaptation for Mobility. In Proceedings of the Sixteenth ACM Symposium on Operating Systems Principles, SOSP '97, pages 276--287, New York, NY, USA, 1997. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  41. L. Popa, M. Budiu, Y. Yu, and M. Isard. DryadInc: Reusing Work in Large-scale Computations. In HotCloud, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. E. Rosten and T. Drummond. Machine learning for high-speed corner detection. In European conference on computer vision, pages 430--443. Springer, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  43. M. Satyanarayanan, P. Bahl, R. Caceres, and N. Davies. The case for vm-based cloudlets in mobile computing. IEEE pervasive Computing, 8(4), 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  44. A. Shashua, Y. Gdalyahu, and G. Hayun. Pedestrian detection for driving assistance systems: Single-frame classification and system level performance. In Intelligent Vehicles Symposium, 2004 IEEE, pages 1--6. IEEE, 2004.Google ScholarGoogle ScholarCross RefCross Ref
  45. F. Suard, A. Rakotomamonjy, A. Bensrhair, and A. Broggi. Pedestrian detection using infrared images and histograms of oriented gradients. In Intelligent Vehicles Symposium, 2006 IEEE, pages 206--212. IEEE, 2006.Google ScholarGoogle ScholarCross RefCross Ref
  46. Y. Tang and J. Yang. Secure deduplication of general computations. In USENIX Annual Technical Conference, pages 319--331, 2015. Google ScholarGoogle ScholarDigital LibraryDigital Library
  47. K. Walsh and E. G. Sirer. Experience with an object reputation system for peer-to-peer filesharing. In USENIX NSDI, volume 6, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  48. H. Wang, T. Tian, M. Ma, and J. Wu. Joint Compression of Near-Duplicate Videos. IEEE Transactions on Multimedia, 2016. Google ScholarGoogle ScholarDigital LibraryDigital Library
  49. Z. Wang, D. Liu, J. Yang, W. Han, and T. Huang. Deep networks for image super-resolution with sparse prior. In Proceedings of the IEEE International Conference on Computer Vision, pages 370--378, 2015. Google ScholarGoogle ScholarDigital LibraryDigital Library
  50. H. Wu, X. Sun, J. Yang, W. Zeng, and F. Wu. Lossless Compression of JPEG Coded Photo Collections. IEEE Transactions on Image Processing, 25(6):2684--2696, 2016. Google ScholarGoogle ScholarDigital LibraryDigital Library
  51. T. Zhang, A. Chowdhery, P. V. Bahl, K. Jamieson, and S. Banerjee. The design and implementation of a wireless video surveillance system. In Proceedings of the 21st Annual International Conference on Mobile Computing and Networking, pages 426--438. ACM, 2015. Google ScholarGoogle ScholarDigital LibraryDigital Library
  52. K. Zhou, Q. Hou, R. Wang, and B. Guo. Real-time kd-tree construction on graphics hardware. ACM Transactions on Graphics (TOG), 27(5):126, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Potluck: Cross-Application Approximate Deduplication for Computation-Intensive Mobile Applications

          Recommendations

          Comments

          Login options

          Check if you have access through your login credentials or your institution to get full access on this article.

          Sign in

          Full Access

          • Published in

            cover image ACM SIGPLAN Notices
            ACM SIGPLAN Notices  Volume 53, Issue 2
            ASPLOS '18
            February 2018
            809 pages
            ISSN:0362-1340
            EISSN:1558-1160
            DOI:10.1145/3296957
            Issue’s Table of Contents
            • cover image ACM Conferences
              ASPLOS '18: Proceedings of the Twenty-Third International Conference on Architectural Support for Programming Languages and Operating Systems
              March 2018
              827 pages
              ISBN:9781450349116
              DOI:10.1145/3173162

            Copyright © 2018 ACM

            Publisher

            Association for Computing Machinery

            New York, NY, United States

            Publication History

            • Published: 19 March 2018

            Check for updates

            Qualifiers

            • research-article

          PDF Format

          View or Download as a PDF file.

          PDF

          eReader

          View online with eReader.

          eReader
          About Cookies On This Site

          We use cookies to ensure that we give you the best experience on our website.

          Learn more

          Got it!