SLURM Support for Remote GPU Virtualization: Implementation and Performance Study

SLURM is a resource manager that can be leveraged to share a collection of heterogeneous resources among the jobs in execution in a cluster. However, SLURM is not designed to handle resources such as graphics processing units (GPUs). Concretely, although SLURM can use a generic resource plugin (GRes...

Descripción completa

Detalles Bibliográficos
Autores: Iserte Agut, Sergio, Mayo Gual, Rafael, Duato Marín, José Francisco, Reaño González, Carlos, Castelló, Adrián|||0000-0002-8576-8451, Quintana-Ortí, Enrique S.|||0000-0002-5454-165X, Silla, Federico|||0000-0002-6435-1200, Prades, Javier|||0000-0003-3349-2200
Tipo de recurso: capítulo de libro
Fecha de publicación:2014
País:España
Institución:Universitat Politècnica de València (UPV)
Repositorio:RiuNet. Repositorio Institucional de la Universitat Politécnica de Valéncia
Idioma:inglés
OAI Identifier:oai:riunet.upv.es:10251/66693
Acceso en línea:https://riunet.upv.es/handle/10251/66693
Access Level:acceso abierto
Palabra clave:HPC cluster
Job scheduler
Remote GPU virtualization
Resource management
ARQUITECTURA Y TECNOLOGIA DE COMPUTADORES
Descripción
Sumario:SLURM is a resource manager that can be leveraged to share a collection of heterogeneous resources among the jobs in execution in a cluster. However, SLURM is not designed to handle resources such as graphics processing units (GPUs). Concretely, although SLURM can use a generic resource plugin (GRes) to manage GPUs, with this solution the hardware accelerators can only be accessed by the job that is in execution on the node to which the GPU is attached. This is a serious constraint for remote GPU virtualization technologies, which aim at providing a user-transparent access to all GPUs in cluster, independently of the specific location of the node where the application is running with respect to the GPU node. In this work we introduce a new type of device in SLURM, "rgpu", in order to gain access from any application node to any GPU node in the cluster using rCUDA as the remote GPU virtualization solution. With this new scheduling mechanism, a user can access any number of GPUs, as SLURM schedules the tasks taking into account all the graphics accelerators available in the complete cluster. We present experimental results that show the benefits of this new approach in terms of increased flexibility for the job scheduler.