skip to main content
10.1145/2901318.2901345acmotherconferencesArticle/Chapter ViewAbstractPublication PageseurosysConference Proceedingsconference-collections
research-article
Public Access

Picocenter: supporting long-lived, mostly-idle applications in cloud environments

Published:18 April 2016Publication History

ABSTRACT

Cloud computing has evolved to meet user demands, from arbitrary VMs offered by IaaS to the narrow application interfaces of PaaS. Unfortunately, there exists an intermediate point that is not well met by today's offerings: users who wish to run arbitrary, already available binaries (as opposed to rewriting their own application for a PaaS) yet expect their applications to be long-lived but mostly idle (as opposed to the always-on VM of IaaS). For example, end users who wish to run their own email or DNS server.

In this paper, we explore an alternative approach for cloud computation based on a process-like abstraction rather than a virtual machine abstraction, thereby gaining the scalability and efficiency of PaaS along with the generality of IaaS. We present the design of Picocenter, a hosting infrastructure for such applications that enables use of legacy applications. The key technical challenge in Picocenter is enabling fast swapping of applications to and from cloud storage (since, by definition, applications are largely idle, we expect them to spend the majority of their time swapped out). We develop an ActiveSet technique that prefetches the application's predicted memory working set when reviving an application. An evaluation on EC2 demonstrates that using ActiveSet, Picocenter is able to swap in applications in under 250 ms even when they are stored in S3 while swapped out.

References

  1. Amazon lambda. http://aws.amazon.com/lambda/.Google ScholarGoogle Scholar
  2. J. Ansel, K. Aryay, and G. Coopermany. DMTCP: Transparent checkpointing for cluster computations and the desktop. In Proccedings of the IEEE International Symposium on Parallel & Distributed Processing (IPDPS'09), 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. R. Baden, A. Bender, N. Spring, B. Bhattacharjee, and D. Starin. Persona: an online social network with user-defined privacy. In Proceedings of the Conference of the ACM Special Interest Group on Data Communication (SIGCOMM'09), 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. P. Barham, B. Dragovic, K. Fraser, S. Hand, T. Harris, A. Ho, R. Neugebauer, I. Pratt, and A. Warfield. Xen and the art of virtualization. ACM SIGOPS Operating Systems Review, 37(5):164--177, 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. S. Bazarbayev, M. Hiltunen, K. Joshi, W. H. Sanders, and R. Schlichting. Pscloud: a durable context-aware personal storage cloud. In Proceedings of the 9th Workshop on Hot Topics in Dependable Systems (HotDep'13), 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. N. Bila, E. de Lara, K. Joshi, H. A. Lagar-Cavilla, M. Hiltunen, and M. Satyanarayanan. Jettison: Efficient Idle Desktop Consolidation with Partial VM Migration. In Proceedings of the 7th ACM European Conference on Computer Systems (EuroSys'12), 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. BIND DNS Server. https://www.isc.org/downloads/bind/.Google ScholarGoogle Scholar
  8. btrfs. https://btrfs.wiki.kernel.org/index.php/Main_Page.Google ScholarGoogle Scholar
  9. S. Buchegger, D. Schiöberg, L. H. Vu, and A. Datta. PeerSoN: P2P Social Networking---Early Experiences and Insights. In Proceedings of the International Workshop on Social Network Systems (SNS'09), 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. E. Chen, S. Ogata, and K. Horikawa. Offloading Android applications to the cloud without customizing Android. In Proceedings of the 2012 IEEE International Conference on Pervasive Computing and Communications Workshops (PERCOM Workshops'12), 2012.Google ScholarGoogle ScholarCross RefCross Ref
  11. C. Clark, K. Fraser, S. Hand, J. G. Hansen, E. Jul, C. Limpach, I. Pratt, and A. Warfield. Live migration of virtual machines. In Proceedings of the 2nd conference on Symposium on Networked Systems Design & Implementation (NSDI'05), 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. CRIU parasite code. https://criu.org/Parasite_code.Google ScholarGoogle Scholar
  13. E. Cuervo, A. Balasubramanian, D.-k. Cho, A. Wolman, S. Saroiu, R. Chandra, and P. Bahl. MAUI: Making Smartphones Last Longer with Code Offload. In Proceedings of the 8th International Conference on Mobile Systems, Applications, and Services (MobiSys'10), 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Docker. https://www.docker.com.Google ScholarGoogle Scholar
  15. J. R. Douceur, J. Elson, J. Howell, and J. R. Lorch. Leveraging Legacy Code to Deploy Desktop Applications on the Web. In Proceedings of the 8th USENIX conference on Operating Systems Design and Implementation (OSDI'08), 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. J. R. Douceur, J. Elson, J. Howell, and J. R. Lorch. The Utility Coprocessor: Massively Parallel Computation from the Coffee Shop. In Proceedings of the USENIX Annual Technical Conference (USENIX'10), 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. F. Douglis and J. Ousterhout. Transparent process migration: Design alternatives and the sprite implementation. Software: Practice and Experience, 21(8):757--785, July 1991. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Easy way to prevent heroku idling? http://stackoverflow.com/questions/5480337/easy-way-to-prevent-heroku-idling.Google ScholarGoogle Scholar
  19. Filesystem in Userspace. http://fuse.sourceforge.net.Google ScholarGoogle Scholar
  20. Google App Engine. https://developers.google.com/appengine.Google ScholarGoogle Scholar
  21. A. Greenberg, J. R. Hamilton, N. Jain, S. Kandula, C. Kim, P. Lahiri, D. A. Maltz, P. Patel, and S. Sengupta. VL2: a scalable and flexible data center network. In Proceedings of the Conference of the ACM Special Interest Group on Data Communication (SIGCOMM'09), 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. HAProxy: The Reliable, High Performance TCP/HTTP Load Balancer. http://www.haproxy.org.Google ScholarGoogle Scholar
  23. P. H. Hargrove and J. C. Duell. Berkeley lab checkpoint/restart (blcr) for linux clusters. Journal of Physics: Conference Series, 46(1):494, 2006.Google ScholarGoogle ScholarCross RefCross Ref
  24. B. Hindman, A. Konwinski, M. Zaharia, A. Ghodsi, A. D. Joseph, R. H. Katz, S. Shenker, and I. Stoica. Mesos: A platform for fine-grained resource sharing in the data center. In Proceedings of the USENIX Symposium on Networked Systems Design and Implementation (NSDI'11), 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. M. R. Hines and K. Gopalan. Post-copy Based Live Virtual Machine Migration Using Adaptive Pre-paging and Dynamic Self-ballooning. In Proceedings of the 2009 ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments (VEE'09), 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. J. Howell, B. Parno, and J. R. Douceur. Embassies: Radically Refactoring the Web. In Proceedings of the USENIX Symposium on Networked Systems Design and Implementation (NSDI'13), 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. J. Howell, B. Parno, and J. R. Douceur. How to Run POSIX Apps in a Minimal Picoprocess. In Proceedings of the USENIX Annual Technical Conference (USENIX'13), 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. P.-H. Kamp and R. N. Watson. Jails: Confining the omnipotent root. In Proceedings of the 2nd International SANE Conference (SANE'00), 2000.Google ScholarGoogle Scholar
  29. E. Keller, S. Ghorbani, M. Caesar, and J. Rexford. Live migration of an entire network (and its hosts). In Proceedings of the 11th ACM Workshop on Hot Topics in Networks (HotNets'12), 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. R. Kemp, N. Palmer, T. Kielmann, and H. Bal. Cuckoo: a computation offloading framework for smartphones. In Proceedings of the EAI International Conference on Mobile Computing, Applications, and Services (MobiCASE'12), 2012.Google ScholarGoogle ScholarCross RefCross Ref
  31. A. Kivity, D. Laor, G. Costa, P. Enberg, N. Har'El, D. Marti, and V. Zolotarov. OSv---Optimizing the Operating System for Virtual Machines. In Proceedings of the USENIX Annual Technical Conference (USENIX'14), 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. T. Knauth and C. Fetzer. DreamServer: Truly on-demand cloud services. In Proceedings of International Conference on Systems and Storage (SYSTOR'14), 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. T. Knauth, P. Kiruvale, M. Hiltunen, and C. Fetzer. Sloth: SDN-enabled activity-based virtual machine deployment. In Proceedings of the Third workshop on Hot Topics in Software Defined Networking (HotSDN'14), 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. S. Kosta, A. Aucinas, P. Hui, R. Mortier, and X. Zhang. Thinkair: Dynamic resource allocation and parallel execution in the cloud for mobile code offloading. In Proceedings of the IEEE International Conference on Computer Communications (INFOCOM'12), 2012.Google ScholarGoogle ScholarCross RefCross Ref
  35. Kubernetes: Container cluster manager from Google. https://github.com/kubernetes/kubernetes.Google ScholarGoogle Scholar
  36. O. Laadan and J. Nieh. Transparent Checkpoint-Restart of Multiple Processes on Commodity Operating Systems. In Proceedings of the USENIX Annual Technical Conference (USENIX'07), 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. lighttpd Web Server. http://www.lighttpd.net.Google ScholarGoogle Scholar
  38. Linux Checkpoint/Restore In Userspace. http://criu.org.Google ScholarGoogle Scholar
  39. Linux kernel based virtual machine. http://www.linux-kvm.org.Google ScholarGoogle Scholar
  40. Lxc. https://linuxcontainers.org/.Google ScholarGoogle Scholar
  41. A. Madhavapeddy, T. Leonard, M. Skjegstad, T. Gazagnaire, D. Sheets, D. Scott, R. Mortier, A. Chaudhry, B. Singh, and J. Ludlam. Jitsu: Just-in-time summoning of unikernels. In Proceedings of the USENIX Symposium on Networked Systems Design and Implementation (NSDI'15), 2015. Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. A. Madhavapeddy, R. Mortier, C. Rotsos, D. Scott, B. Singh, T. Gazagnaire, S. Smith, S. Hand, and J. Crowcroft. Unikernels: Library Operating Systems for the Cloud. In Proceedings of the Eighteenth International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS'13), 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  43. A. Madhavapeddy and D. J. Scott. Unikernels: Rise of the virtual library operating system. ACM Queue, 11(11), 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  44. A. Mohaisen, E. Y. Vasserman, M. Schuchard, D. Foo Kune, and Y. Kim. Secure encounter-based social networks: requirements, challenges, and designs. In Proceedings of the ACM Conference on Computer and Communications Security (CCS'10), 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  45. B. Nicolae, F. Cappello, et al. Towards efficient live migration of i/o intensive workloads: A transparent storage transfer proposal. In Proceedings of the ACM Symposium on High-Performance Parallel and Distributed Computing (HPDC'12), 2012.Google ScholarGoogle ScholarDigital LibraryDigital Library
  46. R. Niranjan Mysore, A. Pamboris, N. Farrington, N. Huang, P. Miri, S. Radhakrishnan, V. Subramanya, and A. Vahdat. PortLand: a scalable fault-tolerant layer 2 data center network fabric. In Proceedings of the Conference of the ACM Special Interest Group on Data Communication (SIGCOMM'09), 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  47. D. E. Porter, S. Boyd-Wickizer, J. Howell, R. Olinsky, and G. C. Hunt. Rethinking the library OS from the top down. ACM SIGPLAN Notices, 46(3):291--304, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  48. Postfix Email Server. http://www.postfix.org.Google ScholarGoogle Scholar
  49. D. Price and A. Tucker. Solaris Zones: Operating System Support for Consolidating Commercial Workloads. In Proceedings of the 18th USENIX Conference on System Administration (LISA'04), 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  50. C. P. Sapuntzakis, R. Chandra, B. Pfaff, J. Chow, M. S. Lam, and M. Rosenblum. Optimizing the migration of virtual computers. ACM SIGOPS Operating Systems Review, 36(SI):377--390, 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  51. M. Schwarzkopf, A. Konwinski, M. Abd-El-Malek, and J. Wilkes. Omega: flexible, scalable schedulers for large compute clusters. In Proceedings of the 8th ACM European Conference on Computer Systems (EuroSys'13), 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  52. S. Soltesz, H. Pötzl, M. E. Fiuczynski, A. Bavier, and L. Peterson. Container-based operating system virtualization: A scalable, high-performance alternative to hypervisors. In Proceedings of the ACM SIGOPS/EuroSys European Conference on Computer Systems (EuroSys'07), 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  53. tent.io. http://tent.io.Google ScholarGoogle Scholar
  54. K. S. Trivedi. On the paging performance of array algorithms. IEEE Transactions on Computing, 26(10):938--947, Oct. 1977. Google ScholarGoogle ScholarDigital LibraryDigital Library
  55. A. Verma, L. Pedrosa, M. Korupolu, D. Oppenheimer, E. Tune, and J. Wilkes. Large-scale cluster management at google with borg. In Proceedings of the Tenth ACM/EuroSys European Conference on Computer Systems (EuroSys'15), 2015. Google ScholarGoogle ScholarDigital LibraryDigital Library
  56. C. A. Waldspurger. Memory resource management in vmware esx server. ACM SIGOPS Operating Systems Review, 36(SI):181--194, 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  57. C. A. Waldspurger and W. E. Weihl. Lottery scheduling: Flexible proportional-share resource management. In Proceedings of the USENIX conference on Operating Systems Design and Implementation (OSDI'94), 1994. Google ScholarGoogle ScholarDigital LibraryDigital Library
  58. M. G. Xavier, M. V. Neves, F. D. Rossi, T. C. Ferreto, T. Lange, and C. A. De Rose. Performance evaluation of container-based virtualization for high performance computing environments. In Parallel, Distributed and Network-Based Processing (PDP), 2013 21st Euromicro International Conference on, pages 233--240. IEEE, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  59. B. Yee, D. Sehr, G. Dardyk, J. B. Chen, R. Muth, T. Ormandy, S. Okasaka, N. Narula, and N. Fullagar. Native client: A sandbox for portable, untrusted x86 native code. In Proceedings of the IEEE Symposium on Security and Privacy (S&P'09), 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  60. E. Zayas. Attacking the process migration bottleneck. In Proceedings of the Eleventh ACM Symposium on Operating Systems Principles (SOSP'87), 1987. Google ScholarGoogle ScholarDigital LibraryDigital Library
  61. Zerovm. https://www.zerovm.org/.Google ScholarGoogle Scholar
  1. Picocenter: supporting long-lived, mostly-idle applications in cloud environments

    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
    • Published in

      cover image ACM Other conferences
      EuroSys '16: Proceedings of the Eleventh European Conference on Computer Systems
      April 2016
      605 pages
      ISBN:9781450342407
      DOI:10.1145/2901318

      Copyright © 2016 ACM

      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 18 April 2016

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • research-article

      Acceptance Rates

      EuroSys '16 Paper Acceptance Rate38of180submissions,21%Overall Acceptance Rate241of1,308submissions,18%

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader