Nothing Special   »   [go: up one dir, main page]

skip to main content
research-article

Cloud-TM: harnessing the cloud with distributed transactional memories

Published: 14 April 2010 Publication History

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.
[2]
Adl-Tabatabai, A.-R., Kozyrakis, C., and Saha, B. Unlocking concurrency. ACM Queue 4, 10 (2007), 24--33.
[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.
[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.
[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).
[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.
[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.
[8]
Cachopo, J. Development of Rich Domain Models with Atomic Actions. PhD thesis, Tech. Univ. of Lisbon, 2007.
[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.
[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.
[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.
[12]
Dean, J., and Ghemawat, S. Mapreduce: simplified data processing on large clusters. Comm. ACM 51, 1 (2008), 107--113.
[13]
DeWitt, D., and Stonebraker, M. Mapreduce: A major step backwards, http://www.databasecolumn.com/2008/01/mapreducea-major-step-back.html.
[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).
[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.
[16]
Hammond, L., Willey, M., and Olukotun, K. Data speculation support for a chip multiprocessor. SIGOPS Operating Systems Review 32, 5 (1998), 58--69.
[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.
[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.
[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.
[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.
[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.
[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.
[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.
[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.
[25]
Pedone, F., and Schiper, A. Optimistic atomic broadcast: a pragmatic viewpoint. Theor. Comput. Sci. 291, 1 (2003), 79--101.
[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.
[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.
[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).
[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.
[30]
Shavit, N., and Touitou, D. Software transactional memory. In Proc. of the Symposium on Principles of Distributed Computing (PODC) (Ottawa, 1995), ACM Press.
[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.
[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.
[33]
Yoon, E. Hadoop Map/Reduce Data Processing Benchmarks. Hadoop Wiki., http://wiki.apache.org/hadoop/DataProcessingBenchmarks.
[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).

Cited By

View all
  • (2021)Investigating the Impact of Cloud Computing Vendor on the Adoption of Cloud ComputingMobile Information Systems10.1155/2021/65579372021Online publication date: 26-Dec-2021
  • (2020)A Distributed Shared Memory Middleware for Speculative Parallel Discrete Event SimulationACM Transactions on Modeling and Computer Simulation10.1145/337333530:2(1-26)Online publication date: 20-Mar-2020
  • (2018)Time-communication impossibility results for distributed transactional memoryDistributed Computing10.1007/s00446-017-0318-y31:6(471-487)Online publication date: 1-Nov-2018
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

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

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 14 April 2010
Published in SIGOPS Volume 44, Issue 2

Check for updates

Qualifiers

  • Research-article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)3
  • Downloads (Last 6 weeks)0
Reflects downloads up to 13 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2021)Investigating the Impact of Cloud Computing Vendor on the Adoption of Cloud ComputingMobile Information Systems10.1155/2021/65579372021Online publication date: 26-Dec-2021
  • (2020)A Distributed Shared Memory Middleware for Speculative Parallel Discrete Event SimulationACM Transactions on Modeling and Computer Simulation10.1145/337333530:2(1-26)Online publication date: 20-Mar-2020
  • (2018)Time-communication impossibility results for distributed transactional memoryDistributed Computing10.1007/s00446-017-0318-y31:6(471-487)Online publication date: 1-Nov-2018
  • (2018)$$\hbox {TM}^{2}$$TM2CDistributed Computing10.1007/s00446-017-0310-631:5(367-388)Online publication date: 1-Oct-2018
  • (2017)Transaction scheduling for Software Transactional Memory2017 IEEE 2nd International Conference on Cloud Computing and Big Data Analysis (ICCCBDA)10.1109/ICCCBDA.2017.7951909(191-195)Online publication date: Apr-2017
  • (2017)Partial Rollback-based Scheduling on In-memory Transactional Data GridsBig Data Research10.1016/j.bdr.2017.06.0049:C(47-56)Online publication date: 1-Sep-2017
  • (2017)DohkoCluster Computing10.1007/s10586-017-0897-120:3(1951-1976)Online publication date: 1-Sep-2017
  • (2016)Programming Scalable Cloud Services with AEONProceedings of the 17th International Middleware Conference10.1145/2988336.2988352(1-14)Online publication date: 28-Nov-2016
  • (2016)Autonomic Provisioning, Configuration, and Management of Inter-cloud Environments Based on a Software Product Line Engineering Method2016 International Conference on Cloud and Autonomic Computing (ICCAC)10.1109/ICCAC.2016.13(72-83)Online publication date: Sep-2016
  • (2015)Impossibility Results for Distributed Transactional MemoryProceedings of the 2015 ACM Symposium on Principles of Distributed Computing10.1145/2767386.2767433(207-215)Online publication date: 21-Jul-2015
  • Show More Cited By

View Options

Get Access

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media