Skip to main content

High Performance Implementation of Boris Particle Pusher on DPC++. A First Look at oneAPI

  • Conference paper
  • First Online:
Parallel Computing Technologies (PaCT 2021)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 12942))

Included in the following conference series:

Abstract

New hardware architectures open up immense opportunities for supercomputer simulations. However, programming techniques for different architectures vary significantly, which leads to the necessity of developing and supporting multiple code versions, each being optimized for specific hardware features. The oneAPI framework, recently introduced by Intel, contains a set of programming tools for the development of portable codes that can be compiled and fine-tuned for CPUs, GPUs, FPGAs, and accelerators. In this paper, we report on the experience of porting the implementation of Boris particle pusher to oneAPI. Boris particle pusher is one of the most demanding computational stages of the Particle-in-Cell method, which, in particular, is used for supercomputer simulations of laser-plasma interactions. We show how to adapt the C++ implementation of the particle push algorithm from the Hi-Chi project to the DPC++ programming language and report the performance of the code on high-end Intel CPUs (Xeon Platinum 8260L) and Intel GPUs (P630 and Iris Xe Max). It turned out that our C++ code can be easily ported to DPC++. We found that on CPUs the resulting DPC++ code is only ~10% on average inferior to the optimized C++ code. The code is compiled and run on new Intel GPUs without any specific optimizations and shows the expected performance.

This study is supported by Intel (oneAPI Center of Excellence program) and by the Ministry of Science and Higher Education of the Russian Federation, project no. 0729-2020-0055.

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 79.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 99.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. OpenCL: open standard for parallel programming of heterogeneous systems. https://www.khronos.org/opencl/

  2. OpenACC. https://www.openacc.org/

  3. Matthes, A., Widera, R., Zenker, E., Worpitz, B., Huebl, A., Bussmann, M.: Tuning and optimization for a variety of many-core architectures without changing a single line of implementation code using the Alpaka library. In: Kunkel, J.M., Yokota, R., Taufer, M., Shalf, J. (eds.) ISC High Performance 2017. LNCS, vol. 10524, pp. 496–514. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-67630-2_36

    Chapter  Google Scholar 

  4. Edwards, H.C., Trott, C.R., Sunderland, D.: Kokkos: enabling manycore performance portability through polymorphic memory access patterns. J. Parallel Distrib. Comput. 74(12), 3202–3216 (2014). https://doi.org/10.1016/j.jpdc.2014.07.003

    Article  Google Scholar 

  5. Reinders, J., et al.: Data Parallel C++: Mastering DPC++ for Programming of Heterogeneous Systems Using C++ and SYCL. Apress, Berkeley (2021). https://doi.org/10.1007/978-1-4842-5574-2

  6. Hi-Chi framework. https://github.com/hi-chi/pyHiChi

  7. Panova, E., et al.: Optimized computation of tight focusing of short pulses using mapping to periodic space. Appl. Sci. 11(3), 956 (2021). https://doi.org/10.3390/app11030956

    Article  Google Scholar 

  8. Birdsall, C.K., Langdon, A.B.: Plasma Physics via Computer Simulation. CRC Press, Hoboken (2004)

    Google Scholar 

  9. Taflove, A., Hagness, S.C., et al.: Computational Electrodynamics: the Finite-Difference Time-Domain Method, 2nd edn. Artech House, Norwood (1995)

    MATH  Google Scholar 

  10. Tajima, T.: Computational Plasma Physics: With Applications to Fusion and Astrophysics. CRC Press, Hoboken (2018)

    Book  Google Scholar 

  11. Ripperda, B., et al.: A comprehensive comparison of relativistic particle integrators. Astrophys. J. Suppl. Ser. 235(1), 21 (2018). https://doi.org/10.3847/1538-4365/aab114

    Article  Google Scholar 

  12. Boris, J.P.: Relativistic plasma simulation-optimization of a hybrid code. In: Proceedings of Fourth Conference on Numerical Simulations of Plasmas, pp. 3–67 (1970)

    Google Scholar 

  13. Decyk, V.K., Singh, T.V.: Particle-in-cell algorithms for emerging computer architectures. Comput. Phys. Commun. 185(3), 708–719 (2014). https://doi.org/10.1016/j.cpc.2013.10.013

    Article  MathSciNet  Google Scholar 

  14. Fonseca, R.A., et al.: Exploiting multi-scale parallelism for large scale numerical modelling of laser wakefield accelerators. Plasma Phys. Control. Fusion 55(12), 124011 (2013). https://doi.org/10.1088/0741-3335/55/12/124011

    Article  Google Scholar 

  15. Germaschewski, K., et al.: The plasma simulation code: a modern particle-in-cell code with patch-based load-balancing. J. Comput. Phys. 318, 305–326 (2016). https://doi.org/10.1016/j.jcp.2016.05.013

    Article  MathSciNet  MATH  Google Scholar 

  16. Surmin, I., Bastrakov, S., Matveev, Z., Efimenko, E., Gonoskov, A., Meyerov, I.: Co-design of a particle-in-cell plasma simulation code for Intel Xeon Phi: a first look at knights landing. In: Carretero, J., et al. (eds.) ICA3PP 2016. LNCS, vol. 10049, pp. 319–329. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-49956-7_25

    Chapter  Google Scholar 

  17. Surmin, I., et al.: Particle-in-cell laser-plasma simulation on Xeon Phi coprocessors. Comput. Phys. Commun. 202, 204–210 (2016). https://doi.org/10.1016/j.cpc.2016.02.004

    Article  Google Scholar 

  18. Vay, J.L., et al.: Modeling of a chain of three plasma accelerator stages with the WarpX electromagnetic pic code on GPUs. Phys. Plasmas 28(2), 023105 (2021). https://doi.org/10.1063/5.0028512

    Article  Google Scholar 

  19. Vshivkov, V., Kraeva, M., Malyshkin, V.: Parallel implementation of the particle-in-cell method. Program. Comput. Softw. 23(2), 87–97 (1998)

    Google Scholar 

  20. Gonoskov, I., et al.: Dipole pulse theory: maximizing the field amplitude from 4 π focused laser pulses. Phys. Rev. A 86(5), 053836 (2012). https://doi.org/10.1103/PhysRevA.86.053836

    Article  Google Scholar 

  21. Bashinov, A., et al.: Dense e− e+ plasma formation in magnetic dipole wave: vacuum breakdown by 10-pw class lasers. arXiv preprint arXiv:2103.16488 (2021)

  22. Bulanov, S., Mur, V., Narozhny, N., Nees, J., Popov, V.: Multiple colliding electromagnetic pulses: a way to lower the threshold of e+ e− pair production from vacuum. Phys. Rev. Lett. 104(22), 220404 (2010). https://doi.org/10.1103/PhysRevLett.104.220404

    Article  Google Scholar 

  23. Danson, C.N., Haefner, C., Bromage, J., et al.: Petawatt and exawatt class lasers worldwide. High Power Laser Sci. Eng. 7 (2019). https://doi.org/10.1017/hpl.2019.36

  24. Bassett, I.M.: Limit to concentration by focusing. Optica Acta Int. J. Opt. 33(3), 279–286 (1986). https://doi.org/10.1080/713821943

    Article  Google Scholar 

  25. Gonoskov, A., et al.: Anomalous radiative trapping in laser fields of extreme intensity. Phys. Rev. Lett. 113(1), 014801 (2014). https://doi.org/10.1103/PhysRevLett.113.014801

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Iosif Meyerov .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2021 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Volokitin, V., Bashinov, A., Efimenko, E., Gonoskov, A., Meyerov, I. (2021). High Performance Implementation of Boris Particle Pusher on DPC++. A First Look at oneAPI. In: Malyshkin, V. (eds) Parallel Computing Technologies. PaCT 2021. Lecture Notes in Computer Science(), vol 12942. Springer, Cham. https://doi.org/10.1007/978-3-030-86359-3_22

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-86359-3_22

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-86358-6

  • Online ISBN: 978-3-030-86359-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics