Abstract
We present the tuple-based coordination language RepliKlaim, which enriches Klaim with primitives for replica-aware coordination. Our overall goal is to offer suitable solutions to the challenging problems of data distribution and locality in large-scale high performance computing. In particular, RepliKlaim allows the programmer to specify and coordinate the replication of shared data items and the desired consistency properties. The programmer can hence exploit such flexible mechanisms to adapt data distribution and locality to the needs of the application, so to improve performance in terms of concurrency and data access. We investigate issues related to replica consistency, provide an operational semantics that guides the implementation of the language, and discuss the main synchronization mechanisms of our prototypical run-time framework. Finally, we provide a performance analysis, which includes scenarios where replica-based specifications and relaxed consistency provide significant performance gains.
Research supported by the European projects IP 257414 ASCENS and STReP 600708 QUANTICOL, and the Italian PRIN 2010LHT4KM CINA.
Chapter PDF
Similar content being viewed by others
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
References
Gigaspaces technologies ltd, www.gigaspaces.com
Atkinson, A.K.: Development and Execution of Array-based Applications in a Cluster Computing Environment. Ph.D. thesis, University of Tasmania (2010)
Balzarotti, D., Costa, P., Picco, G.P.: The lights tuple space framework and its customization for context-aware applications. Web Intelligence and Agent Systems 5(2), 215–231 (2007), http://iospress.metapress.com/content/v16153407085177x/
Bettini, L., De Nicola, R., Loreti, M.: Implementing mobile and distributed applications in x-klaim. Scalable Computing: Practice and Experience 7(4) (2006), http://www.scpe.org/index.php/scpe/article/view/384
Bettini, L., De Nicola, R., Pugliese, R.: Klava: a java package for distributed and mobile applications. Softw., Pract. Exper. 32(14), 1365–1394 (2002), http://dx.doi.org/10.1002/spe.486
Brewer, E.: CAP twelve years later: How the “rules” have changed. Computer 45(2), 23–29 (2012)
Busi, N., Gorrieri, R., Zavattaro, G.: A truly concurrent view of linda interprocess communication. Tech. rep., University of Bologna (1997)
Busi, N., Gorrieri, R., Zavattaro, G.: Comparing three semantics for linda-like languages. Theor. Comput. Sci. 240(1), 49–90 (2000), http://dx.doi.org/10.1016/S0304-39759900227-3
Busi, N., Montresor, A., Zavattaro, G.: Data-driven coordination in peer-to-peer information systems. Int. J. Cooperative Inf. Syst. 13(1), 63–89 (2004)
Capizzi, S.: A tuple space implementation for large-scale infrastructures. Ph.D. thesis, University of Bologna (2008)
Crafa, S., Cunningham, D., Saraswat, V., Shinnar, A., Tardieu, O.: Semantics of (resilient) X10. In: Jones, R. (ed.) ECOOP 2014. LNCS, vol. 8586, pp. 670–696. Springer, Heidelberg (2014)
De Nicola, R., Ferrari, G., Pugliese, R.: Klaim: a kernel language for agents interaction and mobility. IEEE Transactions on Software Engineering 24(5), 315–330 (1998)
De Nicola, R., Loreti, M., Pugliese, R., Tiezzi, F.: A formal approach to autonomic systems programming: The SCEL language. TAAS 9(2), 7 (2014), http://doi.acm.org/10.1145/2619998
De Nicola, R., Pugliese, R., Rowstron, A.: Proving the correctness of optimising destructive and non-destructive reads over tuple spaces. In: Porto, A., Roman, G.-C. (eds.) COORDINATION 2000. LNCS, vol. 1906, pp. 66–80. Springer, Heidelberg (2000)
van der Goot, R.: High Performance Linda using a Class Library. Ph.D. thesis, Erasmus University Rotterdam (2001)
Gudenkauf, S., Hasselbring, W.: Space-based multi-core programming in java. In: Probst, C.W., Wimmer, C. (eds.) Proceedings of the 9th International Conference on Principles and Practice of Programming in Java, PPPJ 2011, pp. 41–50. ACM (2011), http://doi.acm.org/10.1145/2093157.2093164
Hari, H.: Tuple Space in the Cloud. Ph.D. thesis, Uppsala Universitet (2012)
Jiang, Y., Xue, G., Li, M., You, J.-y.: Dtupleshpc: Distributed tuple space for desktop high performance computing. In: Jesshope, C., Egan, C. (eds.) ACSAC 2006. LNCS, vol. 4186, pp. 394–400. Springer, Heidelberg (2006)
Krishnamurthy, A., Aiken, A., Colella, P., Gay, D., Graham, S.L., Hilfinger, P.N., Liblit, B., Miyamoto, C., Pike, G., Semenzato, L., Yelick, K.A.: Titanium: A high performance java dialect. In: PPSC (1999)
Li, C., Porto, D., Clement, A., Gehrke, J., Preguiça, N.M., Rodrigues, R.: Making geo-replicated systems fast as possible, consistent when necessary. In: Thekkath, C., Vahdat, A. (eds.) 10th USENIX Symposium on Operating Systems Design and Implementation (OSDI 2012), pp. 265–278. USENIX Association (2012)
Li, Z., Parashar, M.: Comet: a scalable coordination space for decentralized distributed environments. In: Second International Workshop on Hot Topics in Peer-to-Peer Systems, HOT-P2P 2005, pp. 104–111. IEEE Computer Society (2005)
Mamei, M., Zambonelli, F.: Programming pervasive and mobile computing applications: The TOTA approach. ACM Trans. Softw. Eng. Methodol. 18(4) (2009)
Murphy, A.L., Picco, G.P., Roman, G.: LIME: A coordination model and middleware supporting mobility of hosts and agents. ACM Trans. Softw. Eng. Methodol. 15(3), 279–328 (2006)
Rowstron, A.: Using asynchronous tuple-space access primitives (BONITA primitives) for process co-ordination. In: Garlan, D., Le Métayer, D. (eds.) COORDINATION 1997. LNCS, vol. 1282, pp. 426–429. Springer, Heidelberg (1997)
Rowstron, A., Wood, A.: An efficient distributed tuple space implementation for networks of workstations. In: Fraigniaud, P., Mignotte, A., Bougé, L., Robert, Y. (eds.) Euro-Par 1996. LNCS, vol. 1123, pp. 510–513. Springer, Heidelberg (1996)
Terry, D.: Replicated data consistency explained through baseball. Commun. ACM 56(12), 82–89 (2013), http://doi.acm.org/10.1145/2500500
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2015 IFIP International Federation for Information Processing
About this paper
Cite this paper
Andrić, M., De Nicola, R., Lafuente, A.L. (2015). Replica-Based High-Performance Tuple Space Computing. In: Holvoet, T., Viroli, M. (eds) Coordination Models and Languages. COORDINATION 2015. Lecture Notes in Computer Science(), vol 9037. Springer, Cham. https://doi.org/10.1007/978-3-319-19282-6_1
Download citation
DOI: https://doi.org/10.1007/978-3-319-19282-6_1
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-19281-9
Online ISBN: 978-3-319-19282-6
eBook Packages: Computer ScienceComputer Science (R0)