Skip to main content

MDProcessing.jl: Julia Programming Language Application for Molecular Dynamics Trajectory Processing

  • Conference paper
  • First Online:
Supercomputing (RuSCDays 2023)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 14389))

Included in the following conference series:

  • 161 Accesses

Abstract

Molecular simulations and molecular dynamics in particular are among the most performance-demanding computational methods. As the scale of simulations increases, the task of processing the simulation results becomes a computationally-hungry problem as well. The usual approach to build easy-to-use post-processing tools is based on providing an interface to a high-performance library called from a scripting language such as Python. We overview the advantages of using Julia programming language for building such tools, due to its easy surface syntax close to that of scripting languages and JIT compilation enabling high runtime performance. Then, we overview the package MDProcessing.jl written in Julia, regarding its customizability, abstractions for common processing workflows and performance characteristics.

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 59.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 74.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

References

  1. Thompson, A.P., Aktulga, H.M., Berger, R., et al.: LAMMPS – a flexible simulation tool for particle-based materials modeling at the atomic, meso, and continuum scales. Comp. Phys. Comm. 271, 108171 (2022). https://doi.org/10.1016/j.cpc.2021.108171

  2. Abraham, M.J., Murtola, T., Schulz, R., et al.: GROMACS: high performance molecular simulations through multi-level parallelism from laptops to supercomputers. SoftwareX 1, 19–25 (2015). https://doi.org/10.1016/j.softx.2015.06.001

    Article  Google Scholar 

  3. Stukowski, A.: Visualization and analysis of atomistic simulation data with OVITO - the Open Visualization Tool. Modelling Simul. Mater. Sci. Eng. 18(1), 015012 (2009). https://doi.org/10.1088/0965-0393/18/1/015012

  4. Larsen, A.H., Mortensen, J.J., Blomqvist, J., et al.: The atomic simulation environment - a Python library for working with atoms. J. Phys. Condens. Matter 29(27), 273002 (2017). https://doi.org/10.1088/1361-648X/aa680e

  5. Michaud-Agrawal, N., Denning, E.J., Woolf, T.B., Beckstein, O.: MDAnalysis: a toolkit for the analysis of molecular dynamics simulations. J. Comput. Chem. 32(10), 2319–2327 (2011). https://doi.org/10.1002/jcc.21787

    Article  Google Scholar 

  6. Gowers, R.J., et al.: MDAnalysis: a Python package for the rapid analysis of molecular dynamics simulations. In: Proceedings of the 15th Python in Science Conference. SciPy Austin, TX, vol. 98, p. 105 (2016). https://doi.org/10.25080/Majora-629e541a-00e

  7. Humbert, M.T., Zhang, Y., Maginn, E.J.: PyLAT: Python LAMMPS analysis tools. J. Chem. Inf. Model. 59(4), 1301–1305 (2019). https://doi.org/10.1021/acs.jcim.9b00066

    Article  Google Scholar 

  8. Humphrey, W., Dalke, A., Schulten, K.: VMD: visual molecular dynamics. J. Molec. Graphics 14(1), 33–38 (1996). https://doi.org/10.1016/0263-7855(96)00018-5

    Article  Google Scholar 

  9. Bezanson, J., Edelman, A., Karpinski, S., Shah, V.B.: Julia: a fresh approach to numerical computing. SIAM Rev. 59(1), 65–98 (2017). https://doi.org/10.1137/141000671

    Article  MathSciNet  Google Scholar 

  10. MDProcessing.jl package. https://gitlab.com/pisarevvv/mdprocessing.jl

  11. Intel MKL linear algebra backend for Julia. https://github.com/JuliaLinearAlgebra/MKL.jl

  12. Byrne, S., Wilcox, L.C., Churavy, V.: MPI.jl: Julia bindings for the message passing interface. In: JuliaCon Proceedings, vol. 1, p. 68 (2021). https://doi.org/10.21105/jcon.00068, https://github.com/JuliaParallel/MPI.jl

  13. Chen, J., Revels, J.: Robust benchmarking in noisy environments. arXiv e-prints arXiv:1608.04295 (2016)

  14. Kostenetskiy, P.S., Chulkevich, R.A., Kozyrev, V.I.: HPC resources of the higher school of economics. J. Phys. Conf. Series 1740(1), 012050 (2021). https://doi.org/10.1088/1742-6596/1740/1/012050

  15. Allen, M.P., Tildesley, D.J.: Computer Simulation of Liquids. Oxford University Press, Oxford (2017)

    Book  Google Scholar 

Download references

Acknowledgements

The article was prepared within the framework of the HSE University Basic Research Program. The research was supported in part through computational resources of HPC facilities at HSE University

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Vasily Pisarev .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Pisarev, V., Panov, M. (2023). MDProcessing.jl: Julia Programming Language Application for Molecular Dynamics Trajectory Processing. In: Voevodin, V., Sobolev, S., Yakobovskiy, M., Shagaliev, R. (eds) Supercomputing. RuSCDays 2023. Lecture Notes in Computer Science, vol 14389. Springer, Cham. https://doi.org/10.1007/978-3-031-49435-2_15

Download citation

  • DOI: https://doi.org/10.1007/978-3-031-49435-2_15

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-031-49434-5

  • Online ISBN: 978-3-031-49435-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics