Evolution and Perspectives of the Service for Parallel Applications Running at JINR Multifunctional Information and Computing Complex

Nowadays scientists use cloud computing as a routine tool in a lot of fields of their research. Various Multifunctional Information and Computing Complex (MICC) resources are provided for JINR users to perform a wide range of scientific computations.The JINR cloud service for parallel applications was developed in order to simplify scientists’ work on running similar tasks but on different MICC resources and also to speed up the process of reaching significant results. There are several components with a flexible and modular architecture that allow running a various number of applications using different types of computational resources. The service is constantly developing and improving with the help of the users’ feedback. Some changes in web-interface were made to improve users’ experience: there was added the possibility to choose a certain type of particular application, to set a description for a job, to run multiple tasks, to notify a user about successful job submission and its completion. Moreover, accessibility of job results was reworked: when the job is done, its output is uploaded at the external file storage, where it becomes available at the auto-generated unique URL for downloading by the user and further analysis and/or visualization.


Introduction
A service for parallel scientific and engineering applications (SePSEA) was developed in order to provide access to powerful computational and storage resources of JINR Multifunctional Information and Computing Complex (MICC) for small research scientific groups to solve problems of computational and theoretical physics [1].

Implementation
The motivation behind the SePSEA was to provide users with access to more powerful computational resources in an easy and friendly way.
For example, a user interacts with the JINR cloud [2] via web-interface which allows him to manage virtual machines (VMs) within his quotas and to use those VMs as intended. Resources of the HybriLIT heterogeneous cluster [3] are available for users via a command-line interface from submitting machines of that complex. Users interactions with both mentioned computational components can be simplified by creating application-specific web-forms where the user just needs to set a proper value for the parameters of a certain application, select a computational back-end, specify the number of required resources and press "Submit" button. An implementation of such an approach transforms the JINR cloud computational back-end from a pure Infrastructure-as-a-Service platform (IaaS) into a Software-as-a-Service (SaaS) one -the JINR service for scientific and engineering computations (or JINR SaaS for short).
The main components of that service, as well as the basic schema of its workflow [1], are shown in the Figure 1.

New features
The service is developed and improved constantly based on users' feedback. Its recently implemented new features are described below.
A new application for short Josephson junctions stack simulation was added to the service [4,5].
A notification system was designed to inform the user about various situations such as job termination, occurrence of errors, lack of resources, job status change, possibility to submit a new job (if the previous one is not completed and the new submission is within the user quota). Before the addition of this mechanism, users could not receive up-to-date information about the execution of the calculations or the occurrence of errors in the calculations or in the system.
There are two ways of notifying the user (Fig. 2): • via e-mail messages; • pop-up notification messages in the web-interface.
A "Demo mode" was added to allow unauthorized users (e.g., ones who do not have JINR account) to get familiar with the JINR SaaS web-interface. All the functionality associated with the Demo Mode and UserNotification is located inside the web portal and is implemented using the Django framework and Python libraries. Another change is related to the storage for uploading job results upon its completion. Previously the user was responsible for providing and specifying a location for job output files. For example, he had to use some 3rd party FTP or HTTP-servers, create a directory there for each job and put the whole URL in the corresponding field of application web-form of the JINR SaaS. Such an approach was inconvenient and error-prone.
There is no more need to go through the above described complicated procedure in the current service implementation. When the user submits a job, the system automatically allocates the space on a Ceph storage [6] and creates a directory which stores the runtime data and auto-generates a unique URL to access the data folder via a link provided by the NGNIX web-server [7].
As soon as the job is completed its output data is available at the URL specified in the webinterface for downloading and further analysis and/or visualization. These data are stored for a week. After that time the service automatically removes the folder with the results. Specially developed daemon keeps track on that.
It is also worth noting that the new data storage system allows storing libraries and executable files of application packages for calculations in a single place. The schema of the data storage system is shown in Fig. 3.
Some other changes in the web-interface were made to improve the user experience: • possibility to add a description to each job; • running multiple jobs; • viewing details of the running jobs; • reorganization of the layout of the jobs creation form.

Future plans
The following steps of development of the JINR SaaS web-portal are foreseen: • Add more applications.
• Design and integrate data visualization system embedded into the JINR SaaS web-interface.
• Design and implement a checkpointing system that would allow recomputing checkpoint intervals with higher precision.

Conclusion
The service that was developed by the JINR cloud team has a user-friendly web-interface which allows using the MICC computational resources for small research scientific groups from JINR and its Member State organizations. New features and changes were implemented during 2018-2019 years to extend JINR SaaS functionality and improve the user experience.