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.
- Abadi, D. J. Data management in the cloud: Limitations and opportunities. IEEE Data Eng. Bulletin, 32(1), March 2009.Google Scholar
- Adl-Tabatabai, A.-R., Kozyrakis, C., and Saha, B. Unlocking concurrency. ACM Queue 4, 10 (2007), 24--33. Google ScholarDigital Library
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- 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 Scholar
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- Cachopo, J. Development of Rich Domain Models with Atomic Actions. PhD thesis, Tech. Univ. of Lisbon, 2007.Google Scholar
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- Dean, J., and Ghemawat, S. Mapreduce: simplified data processing on large clusters. Comm. ACM 51, 1 (2008), 107--113. Google ScholarDigital Library
- DeWitt, D., and Stonebraker, M. Mapreduce: A major step backwards, http://www.databasecolumn.com/2008/01/mapreducea-major-step-back.html.Google Scholar
- 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 Scholar
- 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 ScholarDigital Library
- Hammond, L., Willey, M., and Olukotun, K. Data speculation support for a chip multiprocessor. SIGOPS Operating Systems Review 32, 5 (1998), 58--69. Google ScholarDigital Library
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- Pedone, F., and Schiper, A. Optimistic atomic broadcast: a pragmatic viewpoint. Theor. Comput. Sci. 291, 1 (2003), 79--101. Google ScholarDigital Library
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- 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 Scholar
- Shavit, N., and Touitou, D. Software transactional memory. In Proc. of the Symposium on Principles of Distributed Computing (PODC) (Ottawa, 1995), ACM Press. Google ScholarDigital Library
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- Yoon, E. Hadoop Map/Reduce Data Processing Benchmarks. Hadoop Wiki., http://wiki.apache.org/hadoop/DataProcessingBenchmarks.Google Scholar
- 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 ScholarDigital Library
Index Terms
- Cloud-TM: harnessing the cloud with distributed transactional memories
Recommendations
Cloud service engineering
ICSE '10: Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering - Volume 2Building on compute and storage virtualization, Cloud Computing provides scalable, network-centric, abstracted IT infrastructure, platforms, and applications as on-demand services that are billed by consumption. Cloud Service Engineering is the ...
Cloud Storage as the Infrastructure of Cloud Computing
ICICCI '10: Proceedings of the 2010 International Conference on Intelligent Computing and Cognitive InformaticsAs an emerging technology and business paradigm, Cloud Computing has taken commercial computing by storm. Cloud computing platforms provide easy access to a company’s high-performance computing and storage infrastructure through web services. With cloud ...
Comments