skip to main content
research-article

Cloud-TM: harnessing the cloud with distributed transactional memories

Published:14 April 2010Publication History
Skip Abstract Section

Abstract

One of the main challenges to harness the potential of Cloud computing is the design of programming models that simplify the development of large-scale parallel applications and that allow ordinary programmers to take full advantage of the computing power and the storage provided by the Cloud, both of which made available, on demand, in a pay-only-forwhat-you-use pricing model.

In this paper, we discuss the use of the Transactional Memory programming model in the context of the cloud computing paradigm, which we refer to as Cloud-TM. We identify where existing Distributed Transactional Memory platforms still fail to meet the requirements of the cloud and of its users, and we point several open research problems whose solution we deem as essential to materialize the Cloud-TM vision.

References

  1. Abadi, D. J. Data management in the cloud: Limitations and opportunities. IEEE Data Eng. Bulletin, 32(1), March 2009.Google ScholarGoogle Scholar
  2. Adl-Tabatabai, A.-R., Kozyrakis, C., and Saha, B. Unlocking concurrency. ACM Queue 4, 10 (2007), 24--33. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Aguilera, M. K., Merchant, A., Shah, M., Veitch, A., and Karamanolis, C. Sinfonia: a new paradigm for building scalable distributed systems. In Proc. Symposium on Operating Systems Principles (SOSP) (New York, NY, USA, 2007), ACM, pp. 159--174. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Amza, C., Cox, A. L., Dwarkadas, S., Keleher, P. J., Lu, H., Rajamony, R., Yu, W., and Zwaenepoel, W. Threadmarks: Shared memory computing on networks of workstations. IEEE Computer 29, 2 (1996), 18--28. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Anjo, I., and Cachopo, J. Jaspex: Speculative parallel execution of java applications. In Proc. of the Simpósio de Informática (INFORUM) (Lisbon, Portugal, Sept. 2009).Google ScholarGoogle Scholar
  6. Barton, C., Casçaval, C., Almási, G., Zheng, Y., Farreras, M., Chatterje, S., and Amaral, J. N. Shared memory programming for large scale machines. In Proc. of Programming Language Design and Implementation (PLDI) (New York, NY, USA, 2006), ACM, pp. 108--117. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Bocchino, R. L., Adve, V. S., and Chamberlain, B. L. Software transactional memory for large scale clusters. In Proc. of the Symposium on Principles and Practice of Parallel Programming (PPOPP) (New York, NY, USA, 2008), ACM, pp. 247--258. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Cachopo, J. Development of Rich Domain Models with Atomic Actions. PhD thesis, Tech. Univ. of Lisbon, 2007.Google ScholarGoogle Scholar
  9. Chaiken, R., Jenkins, B., Larson, P.-A., Ramsey, B., Shakib, D., Weaver, S., and Zhou, J. Scope: easy and efficient parallel processing of massive data sets. Proc. VLDB Endow. 1, 2 (2008), 1265--1276. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Ciciani, B., Dias, D. M., and Yu, P. S. Analysis of concurrency-coherency control protocols for distributed transaction processing systems with regional locality. IEEE Trans. Softw. Eng. 18, 10 (1992), 899--914. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Couceiro, M., Romano, P., Carvalho, N., and Rodrigues, L. D2STM: Dependable Distributed Software Transactional Memory. In Proc. 15th Pacific Rim International Symposium on Dependable Computing (PRDC) (2009), IEEE Computer Society Press. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Dean, J., and Ghemawat, S. Mapreduce: simplified data processing on large clusters. Comm. ACM 51, 1 (2008), 107--113. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. DeWitt, D., and Stonebraker, M. Mapreduce: A major step backwards, http://www.databasecolumn.com/2008/01/mapreducea-major-step-back.html.Google ScholarGoogle Scholar
  14. Garbatov, S., Cachopo, J., and Pereira, J. Data access pattern analysis based on bayesian updating. In Proc. of the Simpósio de Informática (INFORUM) (Lisbon, Portugal, Sept. 2009).Google ScholarGoogle Scholar
  15. Guerraoui, R., Herlihy, M., and Pochon, B. Polymorphic Contention Management. In Proc. of the International Symposium on Distributed Computing (DISC) (2005), pp. 303--323. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Hammond, L., Willey, M., and Olukotun, K. Data speculation support for a chip multiprocessor. SIGOPS Operating Systems Review 32, 5 (1998), 58--69. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Herlihy, M., Eliot, J., and Moss, B. Transactional memory: Architectural support for lock-free data structures. In Proc. of the International Symposium on Computer Architecture (ISCA) (1993), pp. 289--300. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Kalyvianaki, E., Charalambous, T., and Hand, S. Self-adaptive and self-configured cpu resource provisioning for virtualized servers using kalman filters. In Proc. of the 6th International Conference on Autonomic Computing (ICAC) (New York, NY, USA, 2009), ACM, pp. 117--126. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Keleher, P., Cox, A. L., and Zwaenepoel, W. Lazy release consistency for software distributed shared memory. In Proc. of the Int. Symposium on Computer architecture (ISCA) (New York, NY, USA, 1992), ACM, pp. 13--21. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Kotselidis, C., Ansari, M., Jarvis, K., Lujan, M., Kirkham, C., and Watson, I. Distm: A software transactional memory framework for clusters. In Proc. 37th International Conference on Parallel Processing (ICPP) (Sept. 2008), pp. 51--58. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Kumar, S., Chu, M., Hughes, C. J., Kundu, P., and Nguyen, A. Hybrid transactional memory. In PPoPP '06: Proceedings of the eleventh ACM SIGPLAN symposium on Principles and practice of parallel programming (New York, NY, USA, 2006), ACM Press, pp. 209--220. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Liu, W., Tuck, J., Ceze, L., Ahn, W., Strauss, K., Renau, J., and Torrellas, J. POSH: a TLS compiler that exploits program structure. In Proc. of the Symposium on Principles and Practice of Parallel Programming (PPOPP) (New York, NY, USA, 2006), ACM, pp. 158--167. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Manassiev, K., Mihailescu, M., and Amza, C. Exploiting distributed version concurrency in a transactional memory cluster. In Proceedings of the Symposium on Principles and practice of parallel programming (New York, NY, USA, 2006), ACM, pp. 198--208. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Olston, C., Reed, B., Srivastava, U., Kumar, R., and Tomkins, A. Pig latin: a not-so-foreign language for data processing. In Proc. of the Int. Conference on the Management of Data (SIGMOD) (New York, NY, USA, 2008), ACM, pp. 1099--1110. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Pedone, F., and Schiper, A. Optimistic atomic broadcast: a pragmatic viewpoint. Theor. Comput. Sci. 291, 1 (2003), 79--101. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Ranger, C., Raghuraman, R., Penmetsa, A., Bradski, G., and Kozyrakis, C. Evaluating mapreduce for multi-core and multiprocessor systems. In Proc. of the International Symposium on High-Performance Computer Architecture (HPCA) (Washington, DC, USA, 2007), IEEE Computer Society, pp. 13--24. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Riegel, T., Fetzer, C., and Felber, P. Automatic data partitioning in software transactional memories. In Proc. of the Symposium on Parallelism in Algorithms and Architectures (SPAA) (New York, NY, USA, 2008), ACM, pp. 152--159. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Romano, P., Carvalho, N., and Rodrigues, L. Towards distributed software transactional memory systems. In Proc. of the WShop on Large-Scale Distributed Systems and Middleware (LADIS 2008) (Watson Research Labs, Yorktown Heights (NY), USA, Sept. 2008). (invited paper). Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Romano, P., Palmieri, R., Quaglia, F., Carvalho, N., and Rodrigues, L. On speculative replication of transactional systems. Tech. Rep. 38/2009, INESC-ID, July 2009.Google ScholarGoogle Scholar
  30. Shavit, N., and Touitou, D. Software transactional memory. In Proc. of the Symposium on Principles of Distributed Computing (PODC) (Ottawa, 1995), ACM Press. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Steffan, J. G., Colohan, C. B., Zhai, A., and Mowry, T. C. A scalable approach to thread-level speculation. In Proc. of the International Symposium on Computer Architecture (ISCA) (New York, NY, USA, 2000), ACM, pp. 1--12. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Xu, J., Zhao, M., Fortes, J., Carpenter, R., and Yousif, M. On the use of fuzzy modeling in virtualized data center management. In Proc. of the International Conference on Autonomic Computing (ICAC) (2007), IEEE Computer Society, p. 25. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. Yoon, E. Hadoop Map/Reduce Data Processing Benchmarks. Hadoop Wiki., http://wiki.apache.org/hadoop/DataProcessingBenchmarks.Google ScholarGoogle Scholar
  34. Yu, Y., Isard, M., Fetterly, D., Budiu, M., Erlingsson, U., Gunda, P. K., and Currey, J. DryadLINQ: A System for General-Purpose Distributed Data-Parallel Computing Using a High-Level Language. In Proc. of the Symposium on Operating System Design and Implementation (OSDI) (2008). Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Cloud-TM: harnessing the cloud with distributed transactional memories

      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 SIGOPS Operating Systems Review
        ACM SIGOPS Operating Systems Review  Volume 44, Issue 2
        April 2010
        92 pages
        ISSN:0163-5980
        DOI:10.1145/1773912
        Issue’s Table of Contents

        Copyright © 2010 Authors

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 14 April 2010

        Check for updates

        Qualifiers

        • research-article

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader