Machine Learning eResearch Platform (MLeRP) How serving a subcommunity creates different design decisions
Machine Learning (ML) development involves code development and debugging, model training, labelling, and inference. Batch job submission systems like those on HPC clusters can serve the user's needs well if the problem is large and well-defined. Still, the development and debugging phase requires interactivity, driving users to Jupyter notebooks. Getting such interactivity on a large system tends to lead to poor GPU utilisation and resource availability. The Machine Learning eResearch Platform (MLeRP) was developed to address this niche by offering a premium Jupyter notebook experience backed by the power of a GPU cluster, persistent storage, and full control over their software environment. MLeRP was designed to take advantage of the Dask framework, allowing users to decouple a Jupyter notebook from a GPU in the cluster rather than only attaching it as a reservation. This means that we can create more user seats and have the capacity to serve more users than otherwise possible. Such flexibility provides users with the ability to offload to differently sized GPU slices or even CPU clusters from within the same notebook for different stages of their pipeline. The MLeRP service also supports batch job submission via a web portal application when they are ready for training and transitioning their code to a more classical GPU HPC environment. We will discuss how users have used MLeRP as a stepping stone, teaching them cluster concepts when they re ready and preparing them for when they eventually outgrow our platform and scale to HPC.
Publication Details
- Journal
- Zenodo (CERN European Organization for Nuclear Research)
- Published
- 2024-10-30
- DOI
- https://doi.org/10.5281/zenodo.15293465
- Primary Topic
- Parallel Computing and Optimization Techniques
- Type
- article
- Field-Weighted Citation Impact
- 0.00