Slurm API(3)

NAME
slurm_free_job_step_create_response_msg, slurm_job_step_create - Slurm job step initiation functions

SYNTAX

#include <slurm/slurm.h>

void slurm_free_job_step_create_response_msg (
    job_step_create_response_msg_t *slurm_step_alloc_resp_msg_ptr
);

int slurm_job_step_create (
    job_step_create_request_msg_t *slurm_step_alloc_req_msg_ptr,
    job_step_create_response_msg_t **slurm_step_alloc_resp_msg_pptr
);

ARGUMENTS

slurm_step_alloc_req_msg_ptr
    Specifies the pointer to the structure with job step request specification. See slurm.h for full details on the data structure's contents.

slurm_step_alloc_resp_msg_pptr
    Specifies the double pointer to the structure to be created and filled with a description of the created job step: node allocation, credentials, etc. See slurm.h for full details on the data structure's contents.

DESCRIPTION

slurm_free_job_step_create_response_msg Release the storage generated in response to a call of the function slurm_job_step_create.

slurm_job_step_create Initialize a job step including the allocation of nodes to it from those already allocate to that job. Always release the response message when no longer required using the function slurm_free_job_step_create_response_msg. The list of host names returned may be matched to their data in the proper order by using the functions hostlist_create, hostlist_shift, and hostlist_destroy.

RETURN VALUE

On success, zero is returned. On error, -1 is returned, and Slurm error code is set appropriately.

ERRORS

SLURM_PROTOCOL_VERSION_ERROR Protocol version has changed, re-link your code.

ESLURM_INVALID_JOB_ID the requested job id does not exist.

ESLURM_ALREADY_DONE the specified job has already completed and can not be modified.

ESLURM_ACCESS_DENIED the requesting user lacks authorization for the requested action (e.g. trying to delete or modify another user's job).

ESLURM_DISABLED the ability to create a job step is currently disabled. This is indicative of the job being suspended. Retry the call as desired.

ESLURM_INTERCONNECT_FAILURE failed to configure the node interconnect.

ESLURM_BAD_DIST task distribution specification is invalid.

SLURM_PROTOCOL_SOCKET_IMPL_TIMEOUT Timeout in communicating with SLURM controller.

NOTE
These functions are included in the libslurm library, which must be linked to your process for use (e.g. "cc -lslurm myprog.c").

COPYING
Copyright (C) 2002-2007 The Regents of the University of California. Produced at Lawrence Livermore National Laboratory (cf, DISCLAIMER). LLNL-CODE-402394.

This file is part of SLURM, a resource management program. For details, see <https://computing.llnl.gov/linux/slurm/>.

SLURM is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

SLURM is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

SEE ALSO

hostlist_create(3), hostlist_shift(3), hostlist_destroy(3), srun(1), slurm_get_errno(3), slurm_perror(3), slurm_strerror(3)