<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.3 20210610//EN" "JATS-journalpublishing1-3.dtd">
<article article-type="research-article" dtd-version="1.3" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xml:lang="ru"><front><journal-meta><journal-id journal-id-type="publisher-id">sibsutis</journal-id><journal-title-group><journal-title xml:lang="ru">Вестник СибГУТИ</journal-title><trans-title-group xml:lang="en"><trans-title>The Herald of the Siberian State University of Telecommunications and Information Science</trans-title></trans-title-group></journal-title-group><issn pub-type="ppub">1998-6920</issn><publisher><publisher-name>СибГУТИ</publisher-name></publisher></journal-meta><article-meta><article-id pub-id-type="doi">10.55648/1998-6920-2024-18-1-29-39</article-id><article-id custom-type="elpub" pub-id-type="custom">sibsutis-821</article-id><article-categories><subj-group subj-group-type="heading"><subject>Research Article</subject></subj-group><subj-group subj-group-type="section-heading" xml:lang="ru"><subject>Статьи</subject></subj-group></article-categories><title-group><article-title>Система анализа оптимизации доступа к общей памяти для реализации стандарта PMIx</article-title><trans-title-group xml:lang="en"><trans-title>Shared Memory Access Optimization Analysis System for PMIx Standard Implementation</trans-title></trans-title-group></title-group><contrib-group><contrib contrib-type="author" corresp="yes"><contrib-id contrib-id-type="orcid">https://orcid.org/0000-0002-3844-5481</contrib-id><name-alternatives><name name-style="eastern" xml:lang="ru"><surname>Крамаренко</surname><given-names>К. Е.</given-names></name><name name-style="western" xml:lang="en"><surname>Kramarenko</surname><given-names>K. E.</given-names></name></name-alternatives><bio xml:lang="ru"><p>Крамаренко Константин Евгеньевич, инженер-программист ИФП СО РАН; ст. преподаватель СибГУТИ</p><p>630090, Новосибирск, пр-кт. Ак. Лаврентьева, 13,</p><p>630102, Новосибирск, ул. Кирова, 86</p></bio><bio xml:lang="en"><p>Konstantin E. Kramarenko, Software engineer of ISP SB RAS; Senior lecturer, SibSUTIS </p><p>630090, Novosibirsk,</p><p>630102, Novosibirsk, Kirov St. 86</p></bio><email xlink:type="simple">kostya.kram@gmail.com</email><xref ref-type="aff" rid="aff-1"/></contrib><contrib contrib-type="author" corresp="yes"><contrib-id contrib-id-type="orcid">https://orcid.org/0000-0001-6759-1448</contrib-id><name-alternatives><name name-style="eastern" xml:lang="ru"><surname>Поляков</surname><given-names>А. Ю.</given-names></name><name name-style="western" xml:lang="en"><surname>Polyakov</surname><given-names>A. Y.</given-names></name></name-alternatives><bio xml:lang="ru"><p>Поляков Артём Юрьевич, старший архитектор программного обеспечения </p><p>Santa Clara, California</p></bio><bio xml:lang="en"><p>Artem Yu. Polyakov, Senior software architect</p><p>Santa Clara, California</p><p> </p></bio><email xlink:type="simple">artemp@nvidia.com</email><xref ref-type="aff" rid="aff-2"/></contrib><contrib contrib-type="author" corresp="yes"><contrib-id contrib-id-type="orcid">https://orcid.org/0000-0002-8272-9924</contrib-id><name-alternatives><name name-style="eastern" xml:lang="ru"><surname>Ефимов</surname><given-names>А. В.</given-names></name><name name-style="western" xml:lang="en"><surname>Efimov</surname><given-names>A. V.</given-names></name></name-alternatives><bio xml:lang="ru"><p>Ефимов Александр Владимирович, ведущий инженер-программист ИФП СО РАН; к.т.н., доцент СибГУТИ </p><p>630090, Новосибирск, пр-кт. Ак. Лаврентьева, 13,</p><p>630102, Новосибирск, ул. Кирова, 86</p><p> </p></bio><bio xml:lang="en"><p>Alexander V. Efimov, Senior software engineer ISP SB RAS; Ph.D., docent, SibSUTIS</p><p>630090, Novosibirsk,</p><p>630102, Novosibirsk, Kirov St. 86</p></bio><email xlink:type="simple">alexandr.v.efimov@gmail.com</email><xref ref-type="aff" rid="aff-1"/></contrib></contrib-group><aff-alternatives id="aff-1"><aff xml:lang="ru"><institution>Институт физики полупроводников им. А. В. Ржанова СО РАН (ИФП СО РАН); Сибирский гос. унив. телекоммуникаций и информатики (СибГУТИ)</institution><country>Россия</country></aff><aff xml:lang="en"><institution>The Institute of Semiconductor Physics, Siberian Branch of the Russian Academy of Sciences (ISP SB RAS);&#13;
Siberian State University of Telecommunications and Information Science (SibSUTIS)</institution><country>Russian Federation</country></aff></aff-alternatives><aff-alternatives id="aff-2"><aff xml:lang="ru"><institution>NVIDIA</institution><country>Соединённые Штаты Америки</country></aff><aff xml:lang="en"><institution>NVIDIA</institution><country>United States</country></aff></aff-alternatives><pub-date pub-type="collection"><year>2024</year></pub-date><pub-date pub-type="epub"><day>17</day><month>12</month><year>2023</year></pub-date><volume>18</volume><issue>1</issue><fpage>29</fpage><lpage>39</lpage><permissions><copyright-statement>Copyright &amp;#x00A9; Крамаренко К.Е., Поляков А.Ю., Ефимов А.В., 2024</copyright-statement><copyright-year>2024</copyright-year><copyright-holder xml:lang="ru">Крамаренко К.Е., Поляков А.Ю., Ефимов А.В.</copyright-holder><copyright-holder xml:lang="en">Kramarenko K.E., Polyakov A.Y., Efimov A.V.</copyright-holder><license xml:lang="ru" license-type="creative-commons-attribution" xlink:href="https://creativecommons.org/licenses/by/4.0/" xlink:type="simple"><license-p>Данная работа распространяется под лицензией Creative Commons Attribution 4.0.</license-p></license><license xml:lang="en" license-type="creative-commons-attribution" xlink:href="https://creativecommons.org/licenses/by/4.0/" xlink:type="simple"><license-p>This work is licensed under a Creative Commons Attribution 4.0 License.</license-p></license></permissions><self-uri xlink:href="https://vestnik.sibsutis.ru/jour/article/view/821">https://vestnik.sibsutis.ru/jour/article/view/821</self-uri><abstract><p>Рассмотрены алгоритмы синхронизации доступа к общей памяти с преобладанием операций чтения, которые характерны для реализаций PMIx. Проведен анализ схемы синхронизации N(mutex+signal), результаты показали увеличение пропускной способности примерно на 20 % в режиме «только чтение» и дальнейшее направление проведения оптимизации.</p></abstract><trans-abstract xml:lang="en"><p>The results in the field of system software stacks optimization for distributed computing systems based on the process management Interface (PMI) are obtained. Algorithms for synchronizing access to shared memory with a predominance of reading operations which are typical for PMIx implementation,are considered. The locking schemes N(mutex+signal) are proposed.</p></trans-abstract><kwd-group xml:lang="ru"><kwd>распределенные вычислительные системы</kwd><kwd>интерфейс управления процессами</kwd><kwd>PMI</kwd><kwd>PMIx</kwd><kwd>общая память</kwd><kwd>синхронизация доступа</kwd></kwd-group><kwd-group xml:lang="en"><kwd>distributed computing systems</kwd><kwd>resource management</kwd><kwd>process management interface</kwd><kwd>PMI</kwd><kwd>PMIx</kwd><kwd>shared memory</kwd></kwd-group><funding-group><funding-statement xml:lang="ru">Работа выполнена в рамках государственного задания ИФП СО РАН (ГЗ FWGW-2022-0011)</funding-statement></funding-group></article-meta></front><back><ref-list><title>References</title><ref id="cit1"><label>1</label><citation-alternatives><mixed-citation xml:lang="ru">Хорошевский В. Г. Архитектура вычислительных систем. М.: МГТУ им. Н. Э. Баумана, 2008. 520 с.</mixed-citation><mixed-citation xml:lang="en">Khoroshevskii V. G. Arkhitektura vychislitel'nykh sistem [Architectures of computer systems]. Moscow, MGTU im. Baumana, 2008. 520 p.</mixed-citation></citation-alternatives></ref><ref id="cit2"><label>2</label><citation-alternatives><mixed-citation xml:lang="ru">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.</mixed-citation><mixed-citation xml:lang="en">Yu W., Wu J., Panda D. K. Fast and Scalable Startup of MPI Programs in InfiniBand Clusters. Proc. 11th International Conference on High Performance Computing (HiPC), Bangalore, India, 19-22 December, 2004, pp. 440-449.</mixed-citation></citation-alternatives></ref><ref id="cit3"><label>3</label><citation-alternatives><mixed-citation xml:lang="ru">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.</mixed-citation><mixed-citation xml:lang="en">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, pp. 31-41.</mixed-citation></citation-alternatives></ref><ref id="cit4"><label>4</label><citation-alternatives><mixed-citation xml:lang="ru">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.</mixed-citation><mixed-citation xml:lang="en">Castain R. H., Solt D., Hursey J., Bouteiller A. PMIx: Process Management for Exascale Environments. Proc. 24th European MPI Users’ Group Meeting (EuroMPI ’17). ACM, New York, NY, USA, Article no. 14, 10 p.</mixed-citation></citation-alternatives></ref><ref id="cit5"><label>5</label><citation-alternatives><mixed-citation xml:lang="ru">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.</mixed-citation><mixed-citation xml:lang="en">Polyakov A., Karasev B., Hursey J. et. al. A Performance Analysis and Optimization of PMIx-based HPC Software Stacks. EuroMPI '19: Proceedings of the 26th European MPI Users' Group Meeting, September, 2019, article no. 9, pp. 1-10.</mixed-citation></citation-alternatives></ref><ref id="cit6"><label>6</label><citation-alternatives><mixed-citation xml:lang="ru">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).</mixed-citation><mixed-citation xml:lang="en">PMIx Consortium. 2017–2020. Process Management Interface for Exascale (PMIx) Standard (version 3.1), available at: https://github.com/pmix/pmixstandard/releases/download/v3.1/pmix-standard-3.1.pdf (accessed: 10.04.2023).</mixed-citation></citation-alternatives></ref><ref id="cit7"><label>7</label><citation-alternatives><mixed-citation xml:lang="ru">Open PMIx master repository [Электронный ресурс]. URL: https://github.com/openpmix/openpmix (дата обращения: 10.04.2023).</mixed-citation><mixed-citation xml:lang="en">Open PMIx master repository, available at: https://github.com/openpmix/openpmix (accessed: 10.04.2023).</mixed-citation></citation-alternatives></ref><ref id="cit8"><label>8</label><citation-alternatives><mixed-citation xml:lang="ru">Message Passing Interface Forum. 2015. MPI-3.1: Official document. [Электронный ресурс]. URL: http://www.mpi-forum.org/docs (дата обращения: 10.04.2023).</mixed-citation><mixed-citation xml:lang="en">Message Passing Interface Forum. 2015. MPI-3.1: Official document, available at: http://www.mpi-forum.org/docs (accessed: 10.04.2023).</mixed-citation></citation-alternatives></ref><ref id="cit9"><label>9</label><citation-alternatives><mixed-citation xml:lang="ru">Argonne National Laboratory. 2014. Hydra Process Management Framework. [Электронный ресурс]. URL: https://wiki.mpich.org/mpich/index.php/Hydra_Process_Management_Framework (дата обращения: 10.04.2023).</mixed-citation><mixed-citation xml:lang="en">Argonne National Laboratory. 2014. Hydra Process Management Framework, available at: https://wiki.mpich.org/mpich/index.php/Hydra_Process_Management_Framework (accessed: 10.04.2023).</mixed-citation></citation-alternatives></ref><ref id="cit10"><label>10</label><citation-alternatives><mixed-citation xml:lang="ru">PMIx Reference RunTime Environment (PRRTE). [Электронный ресурс]. URL: https://github.com/openpmix/prrte (дата обращения: 10.04.2023).</mixed-citation><mixed-citation xml:lang="en">PMIx Reference RunTime Environment (PRRTE), available at: https://github.com/openpmix/prrte (accessed: 10.04.2023).</mixed-citation></citation-alternatives></ref><ref id="cit11"><label>11</label><citation-alternatives><mixed-citation xml:lang="ru">SchedMD, LLC. 2017. SLURM Workload Manager. [Электронный ресурс]. URL: https://slurm.schedmd.com/ (дата обращения: 10.04.2023).</mixed-citation><mixed-citation xml:lang="en">SchedMD, LLC. 2017. SLURM Workload Manager, available at: https://slurm.schedmd.com/ (accessed: 10.04.2023).</mixed-citation></citation-alternatives></ref><ref id="cit12"><label>12</label><citation-alternatives><mixed-citation xml:lang="ru">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.</mixed-citation><mixed-citation xml:lang="en">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), pp. 60-69.</mixed-citation></citation-alternatives></ref><ref id="cit13"><label>13</label><citation-alternatives><mixed-citation xml:lang="ru">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.</mixed-citation><mixed-citation xml:lang="en">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, pp. 157-166.</mixed-citation></citation-alternatives></ref><ref id="cit14"><label>14</label><citation-alternatives><mixed-citation xml:lang="ru">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.</mixed-citation><mixed-citation xml:lang="en">IEEE Standard for Information Technology–Portable Operating System Interface (POSIX(R)) Base Specifications, iss. 7. IEEE Std 1003.1-2017 (Revision of IEEE Std 1003.1-2008), Jan, 2018, pp. 1-3951.</mixed-citation></citation-alternatives></ref><ref id="cit15"><label>15</label><citation-alternatives><mixed-citation xml:lang="ru">Hsieh W. C., Weihl W. E. Scalable Reader-Writer Locks for Parallel Systems // Proc. Sixth IEEE International Parallel Processing Symposium, 1992. P. 656–659.</mixed-citation><mixed-citation xml:lang="en">Hsieh W. C., Weihl W. E. Scalable Reader-Writer Locks for Parallel Systems. Proc. Sixth IEEE International Parallel Processing Symposium, 1992, pp. 656-659.</mixed-citation></citation-alternatives></ref><ref id="cit16"><label>16</label><citation-alternatives><mixed-citation xml:lang="ru">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).</mixed-citation><mixed-citation xml:lang="en">IEEE Standard for Information Technology–Portable Operating System Interface (POSIX(R)) Base Specifications, iss. 7. IEEE Std 1003.1-2017 (Revision of IEEE Std 1003.1-2008), Jan, 2018, pp. 1-3951, available at: https://doi.org/10.1109/IEEESTD.2018.8277153 (accessed: 01.09.2023).</mixed-citation></citation-alternatives></ref><ref id="cit17"><label>17</label><citation-alternatives><mixed-citation xml:lang="ru">Mellor-Crummey J., Scott M. Algorithms for scalable synchronization on shared-memory multiprocessors // ACM Trans. Comput. Syst. 1991. № 9. P. 21–65.</mixed-citation><mixed-citation xml:lang="en">Mellor-Crummey J., Scott M. Algorithms for scalable synchronization on shared-memory multiprocessors. ACM Trans. Comput. Syst, 1991, no. 9, pp. 21-65.</mixed-citation></citation-alternatives></ref><ref id="cit18"><label>18</label><citation-alternatives><mixed-citation xml:lang="ru">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).</mixed-citation><mixed-citation xml:lang="en">Mellor-Crummey J. Algorithms for Scalable Lock Synchronization on Shared-memory Multiprocessors. Department of Computer Science Rice University, Lecture 18. 17 March, 2009, pp. 1-49. available at: https://cs.anu.edu.au/courses/comp8320/lectures/aux/comp422-Lecture18-HWLocks.pdf (accessed: 10.04.2023).</mixed-citation></citation-alternatives></ref><ref id="cit19"><label>19</label><citation-alternatives><mixed-citation xml:lang="ru">Микробенчмарк. [Электронный ресурс]. URL: https://bitly.su/Wtxe0Z (дата обращения: 05.02.2023).</mixed-citation><mixed-citation xml:lang="en">Mikrobenchmark [Microbenchmark], available at: https://bitly.su/Wtxe0Z (accessed: 05.02.2023).</mixed-citation></citation-alternatives></ref><ref id="cit20"><label>20</label><citation-alternatives><mixed-citation xml:lang="ru">OpenPMIx. [Электронный ресурс]. URL: https://shorturl.at/kwx14 (дата обращения: 16.04.2023).</mixed-citation><mixed-citation xml:lang="en">OpenPMIx, available at: https://shorturl.at/kwx14 (accessed: 16.04.2023).</mixed-citation></citation-alternatives></ref><ref id="cit21"><label>21</label><citation-alternatives><mixed-citation xml:lang="ru">Ефимов А. В., Поляков А. Ю., Крамаренко К. Е., Бочкарев Б. В. Оптимизация доступа к общей памяти для реализации стандарта PMIx // Вестник СибГУТИ. 2020. № 4. С. 28–38.</mixed-citation><mixed-citation xml:lang="en">Efimov A. V., Plyakov A. U., Kramarenko K. E., Bochkarev B. V. Optimizatsiya dostupa k obshchei pamyati dlya realizatsii standarta PMIx [Optimization of access to shared memory for the implementation of the PMIx standard]. Vestnik SibGUTI, 2020, no. 4, pp. 28-38.</mixed-citation></citation-alternatives></ref></ref-list><fn-group><fn fn-type="conflict"><p>The authors declare that there are no conflicts of interest present.</p></fn></fn-group></back></article>
