diff --git a/docs/configure.rst b/docs/configure.rst index 3ea07e667f..6a0bc4b674 100644 --- a/docs/configure.rst +++ b/docs/configure.rst @@ -305,6 +305,8 @@ ReFrame supports the following parallel job launchers: * ``alps``: Programs on the configured partition will be launched using the ``aprun`` command. * ``mpirun``: Programs on the configured partition will be launched using the ``mpirun`` command. * ``mpiexec``: Programs on the configured partition will be launched using the ``mpiexec`` command. +* ``ibrun``: *[new in 2.21]* Programs on the configured partition will be launched using the ``ibrun`` command. + This is a custom parallel job launcher used at `TACC `__. * ``local``: Programs on the configured partition will be launched as-is without using any parallel program launcher. * ``ssh``: *[new in 2.20]* Programs on the configured partition will be launched using SSH. This option uses the partition's ``access`` parameter (see `above <#partition-configuration>`__) in order to determine the remote host and any additional options to be passed to the SSH client. diff --git a/reframe/core/launchers/mpi.py b/reframe/core/launchers/mpi.py index 6c38887035..68da3ad4e4 100644 --- a/reframe/core/launchers/mpi.py +++ b/reframe/core/launchers/mpi.py @@ -8,6 +8,14 @@ def command(self, job): return ['srun'] +@register_launcher('ibrun') +class IbrunLauncher(JobLauncher): + '''TACC's custom parallel job launcher.''' + + def command(self, job): + return ['ibrun'] + + @register_launcher('alps') class AlpsLauncher(JobLauncher): def command(self, job):