[slurm-users] Differences between distributions of GRES and SPANK plugins

Rohit Zambre rzambre at nvidia.com
Tue Nov 14 03:46:44 UTC 2023


Can GRES plugins, like SPANK plugins, be distributed as third-party software (i.e. without needing to be distributed as part of the Slurm codebase)?

Slurm’s documentation on SPANK (https://slurm.schedmd.com/spank.html) clearly details the steps to develop and distribute a SPANK plugin.
One would need to
(1) implement the API at https://github.com/SchedMD/slurm/blob/master/slurm/spank.h
(2) build the SPANK plugin library against the header file
(3) add the SPANK plugin so to the plugstack.conf file and the plugin will be loaded at the next job launch

Slurm’s documentation on GRES (https://guriang.unpad.ac.id/slurmdoc/gres_plugins.html) doesn’t give as many details wrt to deploying/distributing a custom GRES plugin.
The doc says “It is intended as a resource to programmers wishing to write their own Slurm GRES plugins.” which hints at GRES plugins being analogous to SPANK plugins in terms of distribution.
Like SPANK plugins, one would need to
(1) implement the API at https://github.com/SchedMD/slurm/blob/master/src/interfaces/gres.h
but, it is not clear to me what the equivalent of steps (2) and (3) are for GRES.
Unlike spank.h, which falls under Slurm API’s include files, gres.h falls under slurm/src which leads me to believe that a new GRES plugin would need to be upstreamed into the Slurm codebase.

Could someone please verify my understanding?

Thank you,
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.schedmd.com/pipermail/slurm-users/attachments/20231114/1ad7d2ed/attachment-0001.htm>

More information about the slurm-users mailing list