Система анализа оптимизации доступа к общей памяти для реализации стандарта PMIx
https://doi.org/10.55648/1998-6920-2024-18-1-29-39
Аннотация
Рассмотрены алгоритмы синхронизации доступа к общей памяти с преобладанием операций чтения, которые характерны для реализаций PMIx. Проведен анализ схемы синхронизации N(mutex+signal), результаты показали увеличение пропускной способности примерно на 20 % в режиме «только чтение» и дальнейшее направление проведения оптимизации.
Ключевые слова
Об авторах
К. Е. КрамаренкоРоссия
Крамаренко Константин Евгеньевич, инженер-программист ИФП СО РАН; ст. преподаватель СибГУТИ
630090, Новосибирск, пр-кт. Ак. Лаврентьева, 13,
630102, Новосибирск, ул. Кирова, 86
А. Ю. Поляков
Соединённые Штаты Америки
Поляков Артём Юрьевич, старший архитектор программного обеспечения
Santa Clara, California
А. В. Ефимов
Россия
Ефимов Александр Владимирович, ведущий инженер-программист ИФП СО РАН; к.т.н., доцент СибГУТИ
630090, Новосибирск, пр-кт. Ак. Лаврентьева, 13,
630102, Новосибирск, ул. Кирова, 86
Список литературы
1. Хорошевский В. Г. Архитектура вычислительных систем. М.: МГТУ им. Н. Э. Баумана, 2008. 520 с.
2. Yu W., Wu J.,and Panda D. K. Fast and Scalable Startup of MPI Programs in InfiniBand Clusters // Proc. 11th International Conference on High Performance Computing (HiPC), Bangalore, India, December 19–22, 2004. P. 440–449.
3. Balaji P., Buntinas D., Goodell D., at. al. PMI: A Scalable Parallel Processmanagement Interface for Extreme-scale Systems // Proc. 17th European MPI Users’ Group Meeting Conference on Recent Advances in the Message Passing Interface (EuroMPI’10). Springer-Verlag, Berlin, Heidelberg. P. 31–41.
4. Castain R. H., Solt D., Hursey J., and Bouteiller A. PMIx: Process Management for Exascale Environments // Proc. 24th European MPI Users’ Group Meeting (EuroMPI ’17). ACM, New York, NY, USA, Article № 14, 10 p.
5. Polyakov A., Karasev B., Hursey J. et. al. A Performance Analysis and Optimization of PMIxbased HPC Software Stacks // Proc. 26th European MPI Users' Group Meeting, September 2019, Article № 9. P. 1–10.
6. PMIx Consortium. 2017–2020. Process Management Interface for Exascale (PMIx) Standard (version 3.1). [Электронный ресурс]. URL: https://github.com/pmix/pmixstandard/releases/download/v3.1/pmix-standard-3.1.pdf (дата обращения: 10.04.2023).
7. Open PMIx master repository [Электронный ресурс]. URL: https://github.com/openpmix/openpmix (дата обращения: 10.04.2023).
8. Message Passing Interface Forum. 2015. MPI-3.1: Official document. [Электронный ресурс]. URL: http://www.mpi-forum.org/docs (дата обращения: 10.04.2023).
9. Argonne National Laboratory. 2014. Hydra Process Management Framework. [Электронный ресурс]. URL: https://wiki.mpich.org/mpich/index.php/Hydra_Process_Management_Framework (дата обращения: 10.04.2023).
10. PMIx Reference RunTime Environment (PRRTE). [Электронный ресурс]. URL: https://github.com/openpmix/prrte (дата обращения: 10.04.2023).
11. SchedMD, LLC. 2017. SLURM Workload Manager. [Электронный ресурс]. URL: https://slurm.schedmd.com/ (дата обращения: 10.04.2023).
12. Chakraborty S., Subramoni H., Perkins J., Panda D. K. SHMEMPMI – Shared Memory Based PMI for Improved Performance and Scalability // Proc. 24th IEEE European MPI Users’ Group Meeting (CCGrid). P. 60–69.
13. Calciu I., Dice D., Lev Y., Luchangco V. et. al. NUMA-aware reader-writer locks // Proc. 18th ACM SIGPLAN symposium on Principles and practice of parallel programming. ACM, New York, NY, USA, 2013. P. 157–166.
14. IEEE Standard for Information Technology–Portable Operating System Interface (POSIX(R)) Base Specifications, Issue 7. IEEE Std 1003.1-2017 (Revision of IEEE Std 1003.1-2008) (Jan 2018). P. 1–3951.
15. Hsieh W. C., Weihl W. E. Scalable Reader-Writer Locks for Parallel Systems // Proc. Sixth IEEE International Parallel Processing Symposium, 1992. P. 656–659.
16. IEEE Standard for Information Technology–Portable Operating System Interface (POSIX(R)) Base Specifications, Issue 7. IEEE Std 1003.1-2017 (Revision of IEEE Std 1003.1-2008) (Jan 2018). P. 1–3951. [Электронный ресурс]. URL: https://doi.org/10.1109/IEEESTD.2018.8277153 (дата обращения: 01.09.2023).
17. Mellor-Crummey J., Scott M. Algorithms for scalable synchronization on shared-memory multiprocessors // ACM Trans. Comput. Syst. 1991. № 9. P. 21–65.
18. Mellor-Crummey J. Algorithms for Scalable Lock Synchronization on Shared-memory Multiprocessors. Department of Computer Science Rice University. Lecture 18. 17 March 2009. P. 1–49. [Электронный ресурс]. URL: https://cs.anu.edu.au/courses/comp8320/lectures/aux/comp422-Lecture18-HWLocks.pdf (дата обращения: 10.04.2023).
19. Микробенчмарк. [Электронный ресурс]. URL: https://bitly.su/Wtxe0Z (дата обращения: 05.02.2023).
20. OpenPMIx. [Электронный ресурс]. URL: https://shorturl.at/kwx14 (дата обращения: 16.04.2023).
21. Ефимов А. В., Поляков А. Ю., Крамаренко К. Е., Бочкарев Б. В. Оптимизация доступа к общей памяти для реализации стандарта PMIx // Вестник СибГУТИ. 2020. № 4. С. 28–38.
Рецензия
Для цитирования:
Крамаренко К.Е., Поляков А.Ю., Ефимов А.В. Система анализа оптимизации доступа к общей памяти для реализации стандарта PMIx. Вестник СибГУТИ. 2024;18(1):29-39. https://doi.org/10.55648/1998-6920-2024-18-1-29-39
For citation:
Kramarenko K.E., Polyakov A.Y., Efimov A.V. Shared Memory Access Optimization Analysis System for PMIx Standard Implementation. The Herald of the Siberian State University of Telecommunications and Information Science. 2024;18(1):29-39. (In Russ.) https://doi.org/10.55648/1998-6920-2024-18-1-29-39