Multi-core accelerated CRDT for large-scale and dynamic collaboration

被引:2
作者
Cai, Weiwei [1 ]
He, Fazhi [1 ]
Lv, Xiao [2 ]
机构
[1] Wuhan Univ, Sch Comp Sci, Wuhan 430072, Hubei, Peoples R China
[2] Naval Univ Engn, Dept Comp Engn, Wuhan 430072, Hubei, Peoples R China
基金
中国国家自然科学基金;
关键词
Distributed computing; Parallel computing; Multi-core processors; Commutative replicated data type; Consistency maintenance; Large-scale collaboration; SUPPORTING SELECTIVE UNDO; OPERATIONS; ALGORITHM; TIME;
D O I
10.1007/s11227-022-04308-7
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
With the advancement of networking technologies and large-scale social computing, multi-user collaboration is becoming popular. In large-scale and dynamic collaborative environments, users may arbitrarily join or quit a collaboration group and work on common tasks for a long time. When users synchronize their work with the other collaborators, a large number of concurrent updates from the collaborators must be reconciled or merged to produce a consistent document state, which could challenge existing consistency maintenance approaches. Our idea is to accelerate the commutative replicated data type (CRDT)-based consistency maintenance algorithms with multi-core processors. We theoretically prove a general commutative condition for CRDT operations. One typical CRDT algorithm, replicated growable array (RGA), is transformed into Parallel RGA (PRGA) under the guidance of the general commutative condition. PRGA allows a batch of RGA operations to be executed in parallel. Experimental results showed that when processing millions of concurrent updates, PRGA achieves approximately 4x performance gains over RGA on an ordinary four-core processor.
引用
收藏
页码:10799 / 10828
页数:30
相关论文
共 48 条
[1]  
Ahmed-Nacer M, 2011, DOCENG 2011: PROCEEDINGS OF THE 2011 ACM SYMPOSIUM ON DOCUMENT ENGINEERING, P103
[2]  
Andre Luc, 2013, 9th IEEE International Conference on Collaborative Computing: Networking, Applications and Worksharing (CollaborateCom 2013), P50, DOI 10.4108/icst.collaboratecom.2013.254123
[3]  
Aravind N., 2020, ACM TRANS PARALLEL C, V7
[4]   A scalable parallel cooperative coevolutionary PSO algorithm for multi-objective optimization [J].
Atashpendar, Arash ;
Dorronsoro, Bernabe ;
Danoy, Gregoire ;
Bouvry, Pascal .
JOURNAL OF PARALLEL AND DISTRIBUTED COMPUTING, 2018, 112 :111-125
[5]   Specification and space complexity of collaborative text editing [J].
Attiya, Hagit ;
Burckhardt, Sebastian ;
Gotsman, Alexey ;
Morrison, Adam ;
Yang, Hongseok ;
Zawirski, Marek .
THEORETICAL COMPUTER SCIENCE, 2021, 855 :141-160
[6]  
Bartel JacobW., 2012, Proceedings of the ACM 2012 Conference on Computer Supported Cooperative Work, CSCW12, P1297
[7]   Visualizing large-scale human collaboration in Wikipedia [J].
Biuk-Aghai, Robert P. ;
Pang, Cheong-Iao ;
Si, Yain-Whar .
FUTURE GENERATION COMPUTER SYSTEMS-THE INTERNATIONAL JOURNAL OF ESCIENCE, 2014, 31 :120-133
[8]   Basker: Parallel sparse LU factorization utilizing hierarchical parallelism and data layouts [J].
Booth, Joshua D. ;
Ellingwood, Nathan D. ;
Thornquist, Heidi K. ;
Rajamanickam, Sivasankaran .
PARALLEL COMPUTING, 2017, 68 :17-31
[9]  
Briot L., 2016, P 19 ACM INT C SUPPO, P51
[10]   Some Discoveries from a Concurrency Benchmark Study of Major Cloud Storage Systems [J].
Cai, Weiwei ;
Ng, Agustina ;
Sun, Chengzheng .
COOPERATIVE DESIGN, VISUALIZATION, AND ENGINEERING: 15TH INTERNATIONAL CONFERENCE, CDVE 2018, 2018, 11151 :44-48