Unified Software Development and Analysis Environment for MPD Experiment at NICA Collider
Authors: Buša J.Jr. , Hnatič S. , Korenkov V.V. , Rogachevsky O.V. , Vaľa M. , Vrláková J. 
Published: December 2024

MPDRoot is an off-line software framework for simulation, reconstruction, and physical analyses of the simulated or experimental data for MPD experiment at NICA collider. The experiment is projected to run for a few decades and to obtain ~ 108 events of heavy ion collisions for physics analysis. Hence, provided software must be sufficiently flexible, resilient, robust to be used, developed, and maintainable for the full lifetime of the experiment and the analysis of its data. In this paper, we describe the effective and efficient implementation of build automatization, configuration, and installation of the software (DevOps) for the development and use of the MPDRoot, playing crucial role for the success of the whole MPD project in the future. Compared to previously existing state, the major improvement requirements were to reduce the complexity and to increase the universality of these deployment related actions for various system and hardware configurations. We show how this was achieved by the use of containers to deploy unified development and user environment with CernVM-FS service to dynamically load built modularized software from CernVM-FS server located in existing JINR infrastructure. Typical MPDRoot DevOps operations, being before heavy, cumbersome, and time-consuming, are now scaled down to running few commands accompanied by short deployment guide, significantly reducing possibility of errors on end-user and developer side. Above all, the main benefit of the current implementation is its wide compatibility and full modularization, making it easy to maintain, upgrade, and to identify the source of potential issues in the future.
MPDRoot является оффлайн программной средой для моделирования, реконструкции и физического анализа смоделированных или экспериментальных данных для эксперимента MPD на коллайдере NICA. Предполагается, что эксперимент продлится несколько десятилетий и позволит получить ~ 108 событий столкновений тяжелых ионов для физического анализа. Следовательно, предоставляемое программное обеспечение должно быть достаточно гибким, отказоустойчивым, надежным, чтобы его можно было использовать, разрабатывать и поддерживать в течение всего времени проведения эксперимента и анализа его данных. В этой статье мы описываем эффективную реализацию автоматизации сборки, настройки и установки программного обеспечения (DevOps) для разработки и использования MPDRoot, играющего решающую роль в успехе всего проекта MPD в будущем. По сравнению с ранее существовавшим состоянием основные требования к улучшению заключались в снижении сложности и повышении универсальности действий, связанных с развертыванием на различных системных и аппаратных конфигурациях. Это было достигнуто за счет использования контейнеров для развертывания единой среды для разработчиков и пользователей с сервисом CernVM-FS для динамической загрузки модульного программного обеспечения с сервера, расположенного в существующей инфраструктуре ОИЯИ. Типичные операции MPDRootdevOps, которые ранее были громоздкими и трудоемкими, теперь сокращены до выполнения нескольких команд, сопровождаемых кратким руководством по развертыванию, что значительно снижает вероятность ошибок на стороне конечного пользователя и разработчика. Основным преимуществом текущей реализации является ее широкая совместимость и полная модульность, упрощающая обслуживание, обновление и выявление источника потенциальных проблем в будущем.