Implementation of a Virtualized Environment for Laboratory Work in Parallel Programming
DOI:
https://doi.org/10.5281/zenodo.15269510Keywords:
virtualization, parallel programming, distance learning, JupyterHub, Proxmox, SSH access, laboratory work, OpenMP, MPI, ICT in educationAbstract
The aim of this study is to design and implement a virtualized environment for conducting laboratory work in parallel programming under conditions of distance learning. A review of the literature confirms the effectiveness of developing virtual laboratories for student education. Furthermore, the analysis reveals a lack of existing virtual lab solutions suitable for use in parallel programming education. The relevance of the research is driven by the need to provide students with equal access to computational resources without reliance on personal hardware. The research methodology includes an analysis of current virtualization technologies, comparison of five alternative solutions, development of evaluation criteria, and a reasoned selection of the most appropriate option.
This paper describes in detail the advantages of the selected solution — virtual machines accessed via SSH and JupyterHub — in terms of accessibility, performance, manageability, and scalability. The architecture of the system, based on the Proxmox platform, is presented along with detailed discussion of its support for OpenMP and MPI libraries. Key benefits of the proposed approach are identified, including the unification of the learning environment, simplified technical support, and reduced probability of user-side errors. A preliminary performance assessment has been conducted, and experimental implementation involving students is planned. It is expected that the virtual environment will ensure not only technical compatibility and high performance but also have a positive impact on student motivation and academic success — factors that are crucial in the context of remote education.
The conclusions highlight the scalability prospects of the developed solution, its applicability to other technical disciplines, and the need for further research in the areas of deployment automation, resource distribution, and learning progress monitoring.
