Abstract
This article proposes a parallel operational transformation (OT) algorithm for collaborative editing. OT maintains the eventual consistency of replicated data in optimistic way, allowing users to manipulate the shared document simultaneously. It has been the first choice for most collaborative applications. However, existing approaches must keep the number of operations generated in a session small so that it can provide a decent responsive time. The multi-core/many-core architectures are becoming pervasive in recent years. Unfortunately, there is no prior work which has explored accelerating operational transformation algorithms with available computation power. We present a lock-free operation history which are accessed by a batch of remote operations at the same time. Moreover, a data parallel computation model is constructed to accelerate the integration of local operations. To the best of our knowledge, this is the first parallel OT algorithm. Experimental results show our proposed algorithm outperforms the stat-of-art algorithms for collaborative editing.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Sun, C., Xia, S., Sun, D., Chen, D., Shen, H., Cai, W.: Transparent adaptation of single-user applications for multi-user real-time collaboration. ACM Trans. Comput. Hum. Interact. 13(4), 531–582 (2006)
Lautamäki, J., Nieminen, A., Koskinen, J., Aho, T., Mikkonen, T., Englund, M.: Cored: browser-based collaborative real-time editor for java web applications. In: Proceedings of the ACM Conference on Computer Supported Cooperative Work, pp. 1307–1316. ACM (2012)
Nicolaescu, P., Derntl, M., Klamma, R.: Browser-based collaborative modeling in near real-time. In: The 9th International Conference on Collaborative Computing: Networking, Applications and Worksharing, pp. 335–344 (2013)
Liu, H., He, F., Zhu, F., Zhu, Q.: Consistency maintenance in collaborative cad systems. Chin. J. Electron. 22(1), 15–20 (2013)
Shao, B., Li, D., Gu, N.: A sequence transformation algorithm for supporting cooperative work on mobile devices. In: Proceedings of the 2010 ACM Conference on Computer Supported Cooperative Work, pp. 159–168. ACM (2010)
Ressel, M., Nitsche-Ruhland, D., Gunzenhäuser, R.: An integrating, transformation-oriented approach to concurrency control and undo in group editors. In: Proceedings of the 1996 ACM Conference on Computer Supported Cooperative Work, pp. 288–297. ACM (1996)
Randolph, A., Boucheneb, H., Imine, A., Quintero, A.: On synthesizing a consistent operational transformation approach. IEEE Trans. Comput. 64(4), 1074–1089 (2015)
Li, D., Li, R.: An admissibility-based operational transformation framework for collaborative editing systems. Comput. Support. Coop. Work 19(1), 1–43 (2010)
Ellis, C.A., Gibbs, S.J.: Concurrency control in groupware systems. In: ACM SIGMOD Record, vol. 18, pp. 399–407. ACM (1989)
Suleiman, M., Cart, M., Ferrié, J.: Serialization of concurrent operations in a distributed collaborative environment. In: Proceedings of the ACM Conference on Supporting Group Work: The Integration Challenge, pp. 435–445. ACM (1997)
Oster, G., Urso, P., Molli, P., Imine, A.: Data consistency for p2p collaborative editing. In: Proceedings of the 2006 20th Anniversary Conference on Computer Supported Cooperative Work, pp. 259–268. ACM (2006)
Lamport, L.: Time, clocks, and the ordering of events in a distributed system. Commun. ACM 21(7), 558–565 (1978)
Imine, A.: Flexible concurrency control for real-time collaborative editors. In: The 28th International Conference on Distributed Computing Systems Workshops, pp. 423–428. IEEE (2008)
Michael, M.M.: Hazard pointers: safe memory reclamation for lock-free objects. IEEE Trans. Parallel Distrib. Syst. 15(6), 491–504 (2004)
Ahmed-Nacer, M., Ignat, C.-L., Oster, G., Roh, H.-G., Urso, P.: Evaluating crdts for real-time document editing. In: Proceedings of the 11th ACM Symposium on Document Engineering, pp. 103–112. ACM (2011)
Li, D., Li, R.: An operational transformation algorithm and performance evaluation. Comput. Support. Coop. Work 17(5–6), 469–508 (2008)
Shao, B., Li, D., Gu, N.: A fast operational transformation algorithm for mobile and asynchronous collaboration. IEEE Trans. Parallel Distrib. Syst. 21(12), 1707–1720 (2010)
He, F., Han, S.: A method and tool for human-human interaction and instant collaboration in cscw-based cad. Comput. Ind. 57(8), 740–751 (2006)
Jing, S.-X., He, F., Han, S.-H., Cai, X.-T., Liu, H.-J.: A method for topological entity correspondence in a replicated collaborative cad system. Comput. Ind. 60(7), 467–475 (2009)
Huang, Z., He, F., Cai, X., Zou, Z., Liu, J., Liang, M., Chen, X.: Efficient random saliency map detection. Sci. China Inf. Sci. 54(6), 1207–1217 (2011)
Liu, H., He, F., Cai, X., Chen, X., Chen, Z.: Performance-based control interfaces using mixture of factor analyzers. Vis. Comput. 27(6), 595–603 (2011)
Li, X., He, F., Cai, X., Zhang, D.: Cad data exchange based on the recovery of feature modelling procedure. Int. J. Comput. Integr. Manuf. 25(10), 874–887 (2012)
Li, X., He, F., Cai, X., Zhang, D., Chen, Y.: A method for topological entity matching in the integration of heterogeneous cad systems. Integr. Comput. Aided Eng. 20(1), 15–30 (2013)
Cheng, Y., He, F., Cai, X., Zhang, D.: A group undo/redo method in 3d collaborative modeling systems with performance evaluation. J. Netw. Comput. Appl. 36(6), 1512–1522 (2013)
Cai, X.T., He, F.Z., Li, W.D., Li, X.X., Wu, Y.Q.: Encryption based partial sharing of cad models. Integr. Comput. Aided Eng. 22(3), 243–260 (2015)
Zhang, D.J., He, F.Z., Han, S.H., Li, X.X.: Quantitative optimization of interoperability during feature-based data exchange. Integr. Comput. Aided Eng., 1–20 (2015, preprint)
Acknowledgment
This paper is supported by the National Science Foundation of China (Grant No. 61472289) and Hubei Province Science Foundation (Grant No. 2015CFB254).
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2016 Institute for Computer Sciences, Social Informatics and Telecommunications Engineering
About this paper
Cite this paper
Cai, W., He, F., Lv, X. (2016). Multi-core Accelerated Operational Transformation for Collaborative Editing. In: Guo, S., Liao, X., Liu, F., Zhu, Y. (eds) Collaborative Computing: Networking, Applications, and Worksharing. CollaborateCom 2015. Lecture Notes of the Institute for Computer Sciences, Social Informatics and Telecommunications Engineering, vol 163. Springer, Cham. https://doi.org/10.1007/978-3-319-28910-6_11
Download citation
DOI: https://doi.org/10.1007/978-3-319-28910-6_11
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-28909-0
Online ISBN: 978-3-319-28910-6
eBook Packages: Computer ScienceComputer Science (R0)