Skip to main content

Multi-core Accelerated Operational Transformation for Collaborative Editing

  • Conference paper
  • First Online:
Collaborative Computing: Networking, Applications, and Worksharing (CollaborateCom 2015)

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.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    https://www.threadingbuildingblocks.org/.

  2. 2.

    http://libcds.sourceforge.net/doc/cds-api/index.html.

References

  1. 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)

    Article  Google Scholar 

  2. 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)

    Google Scholar 

  3. 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)

    Google Scholar 

  4. Liu, H., He, F., Zhu, F., Zhu, Q.: Consistency maintenance in collaborative cad systems. Chin. J. Electron. 22(1), 15–20 (2013)

    Google Scholar 

  5. 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)

    Google Scholar 

  6. 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)

    Google Scholar 

  7. Randolph, A., Boucheneb, H., Imine, A., Quintero, A.: On synthesizing a consistent operational transformation approach. IEEE Trans. Comput. 64(4), 1074–1089 (2015)

    Article  MathSciNet  Google Scholar 

  8. Li, D., Li, R.: An admissibility-based operational transformation framework for collaborative editing systems. Comput. Support. Coop. Work 19(1), 1–43 (2010)

    Article  Google Scholar 

  9. Ellis, C.A., Gibbs, S.J.: Concurrency control in groupware systems. In: ACM SIGMOD Record, vol. 18, pp. 399–407. ACM (1989)

    Google Scholar 

  10. 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)

    Google Scholar 

  11. 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)

    Google Scholar 

  12. Lamport, L.: Time, clocks, and the ordering of events in a distributed system. Commun. ACM 21(7), 558–565 (1978)

    Article  MATH  Google Scholar 

  13. 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)

    Google Scholar 

  14. Michael, M.M.: Hazard pointers: safe memory reclamation for lock-free objects. IEEE Trans. Parallel Distrib. Syst. 15(6), 491–504 (2004)

    Article  Google Scholar 

  15. 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)

    Google Scholar 

  16. Li, D., Li, R.: An operational transformation algorithm and performance evaluation. Comput. Support. Coop. Work 17(5–6), 469–508 (2008)

    Article  Google Scholar 

  17. 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)

    Article  Google Scholar 

  18. 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)

    Article  Google Scholar 

  19. 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)

    Article  Google Scholar 

  20. 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)

    Article  MATH  Google Scholar 

  21. 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)

    Article  MATH  Google Scholar 

  22. 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)

    Article  Google Scholar 

  23. 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)

    Google Scholar 

  24. 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)

    Article  Google Scholar 

  25. 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)

    Article  Google Scholar 

  26. 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)

    Google Scholar 

Download references

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

Authors

Corresponding author

Correspondence to Fazhi He .

Editor information

Editors and Affiliations

Rights and permissions

Reprints 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)

Publish with us

Policies and ethics