Алгоритмы редукции и широковещательной рассылки MPI на базе разделяемой памяти многопроцессорных узлов

Авторы

  • А. А. Романюта Сибирский государственный университет телекоммуникаций и информатики https://orcid.org/0009-0008-9756-0288
  • М. Г. Курносов Сибирский государственный университет телекоммуникаций и информатики https://orcid.org/0000-0002-7808-1635

DOI:

https://doi.org/10.26089/NumMet.v24r424

Ключевые слова:

Bcast, Reduce, Allreduce, коллективные операции, MPI, вычислительные системы

Аннотация

Предложены алгоритмы реализации коллективных операций MPI_Bcast, MPI_Reduce, MPI_Allreduce с использованием разделяемой памяти многопроцессорных серверов. Алгоритмы создают сегмент разделяемой памяти и систему очередей в нем, через которые выполняется передача блоков сообщений. Программная реализация выполнена на базе библиотеки Open MPI в виде изолированного компонента coll/sharm. В отличие от существующих алгоритмов, взаимодействие с системой очередей организовано через активное ожидание, что сокращает количество барьерных синхронизаций и атомарных операций. При проведении экспериментов на сервере с архитектурой x86–64 для операции MPI_Bcast получено наибольшее сокращение времени в 6.5 раз (на 85% меньше) и MPI_Reduce в 3.3 раза (на 70% меньше) по сравнению с реализацией в компоненте coll/tuned библиотеки Open MPI. Предложены рекомендации по использованию алгоритмов для различных размеров сообщений.

Авторы

А. А. Романюта

М. Г. Курносов

Библиографические ссылки

  1. MPI: A Message-Passing Interface Standard. Version 4.0.
    http://www.mpi-forum.org/docs/mpi-4.0/mpi40-report.pdf . Cited September 21, 2023.
  2. S. Jain, R. Kaleem, M. G. Balmana, et al., “Framework for Scalable Intra-Node Collective Operations Using Shared Memory,” in Proc. Int. Conf. on High Performance Computing, Networking, Storage, and Analysis, Dallas, USA, November 11-16, 2018 (IEEE Press, Piscataway, 2018), Vol. 1, pp. 374-385.
    doi  10.1109/SC.2018.00032
  3. J. S. Ladd, M. G. Venkata, P. Shamis, and R. L. Graham, “Collective Framework and Performance Optimizations to Open MPI for Cray XT Platforms,” in Proc. 53rd Cray User Group Meeting, Fairbanks, Alaska, USA, May 23-26, 2011.
    https://www.ornl.gov/publication/collective-framework-and-performance-optimizations-open-mpi-cray-xt-platforms . Cited September 22, 2023.
  4. High-Performance Portable MPI.
    https://www.mpich.org/.Cited September 22, 2023.
  5. Cross Memory Attach.
    https://lwn.net/Articles/405284/.Cited September 22, 2023.
  6. High-Performance Intra-Node MPI Communication.
    https://knem.gitlabpages.inria.fr . Cited September 22, 2023.
  7. B. Goglin and S. Moreaud, “KNEM: a Generic and Scalable Kernel-Assisted Intra-Node MPI Communication Framework,” J. Parallel Distrib. Comput. 73 (2), 176-188 (2013).
    doi 10.1016/j.jpdc.2012.09.016
  8. Linux Cross-Memory Attach.
    https://github.com/hjelmn/xpmem . Cited September 22, 2023.
  9. Open Source High Performance Computing.
    http://www.open-mpi.org . Cited September 22, 2023.
  10. R. L. Graham and G. Shipman, “MPI Support for Multi-Core Architectures: Optimized Shared Memory Collectives,” in Lecture Notes in Computer Science (Springer, Heidelberg, 2008), Vol. 5205, pp. 130-140.
    doi 10.1007/978-3-540-87475-1_21.
  11. MVAPICH: MPI over InfiniBand, Omni-Path, Ethernet/iWARP, RoCE, and Slingshot.
    https://mvapich.cse.ohio-state.edu/. Cited September 22, 2023.
  12. M. Kurnosov and E. Tokmasheva, “Shared Memory Based MPI Broadcast Algorithms for NUMA Systems,” in Communications in Computer and Information Science (Springer, Cham, 2020), Vol. 1331, pp. 473-485.
    doi 10.1007/978-3-030-64616-5_41
  13. S. Li, T. Hoefler, and M. Snir, “NUMA-Aware Shared-Memory Collective Communication for MPI,” in Proc. 22nd Int. Symposium on High-Performance Parallel and Distributed Computing, New York, USA, June 17-21, 2013 (ACM Press, New York, 2013), pp. 85-96.
    doi 10.1145/2462902.2462903
  14. M. G. Kurnosov, “Analysis of the Scalability of Collective Exchange Algorithms on Distributed Computing Systems,” in Proc. 4th All-Russian Scientific and Technical Conf. on Supercomputer Technologies, Rostov-on-Don, Russia, September 19-24, 2016 (Southern Federal Univ. Press, Rostov-on-Don, 2016), Vol. 2, pp. 48-52 [in Russian].

Загрузки

Опубликован

16-10-2023

Как цитировать

Романюта А.А., Курносов М.Г. Алгоритмы редукции и широковещательной рассылки MPI на базе разделяемой памяти многопроцессорных узлов // Вычислительные методы и программирование. 2023. 24. 339-351. doi 10.26089/NumMet.v24r424

Выпуск

Раздел

Параллельные программные средства и технологии