Man Linux: Main Page and Category List

NAME

       slurm_hostlist_create,  slurm_hostlist_shift,  slurm_hostlist_destroy -
       Slurm host list support functions

SYNTAX

       #include <slurm/slurm.h>

       hostlist_t slurm_hostlist_create (
            char *node_list
       );

       char * slurm_hostlist_shift (
            hostlist_t host_list
       );

       void slurm_hostlist_destroy (
            hostlist_t host_list
       );

ARGUMENTS

       node_list
              A  list  of  nodes  as  returned  by  the  slurm_job_step_create
              functions.  The returned value may include a simple range format
              to describe numeric ranges of  values  and/or  multiple  numeric
              values   (e.g.  "linux[1-3,6]"  represents  "linux1",  "linux2",
              "linux3", and "linux6").

       host_list
              A hostlist created by the slurm_hostlist_create function.

DESCRIPTION

       slurm_hostlist_create creates a database of node  names  from  a  range
       format  describing  node  names.  Use slurm_hostlist_destroy to release
       storage associated with the database when no longer required.

       slurm_hostlist_shift extracts  the  first  entry  from  the  host  list
       database created by the slurm_hostlist_create function.

       slurm_hostlist_destroy  releases  storage  associated  with  a database
       created by slurm_hostlist_create when no longer required.

RETURN VALUE

       slurm_hostlist_create returns the host list database or NULL if  memory
       can not be allocated for the database.

       slurm_hostlist_shift  returns  a character string or NULL if no entries
       remain in the database.

EXAMPLE

       #include <stdio.h>
       #include <hostlist.h>
       #include <slurm.h>

       int main (int argc, char *argv[])
       {
            hostlist_t my_hostlist;
            char *hostnames, *host;

            /* generate a list of hostnames, possibly using a */
            /*    slurm job step creation function */

            my_hostlist = slurm_hostlist_create (hostnames);
            if (my_hostlist == NULL) {
                 fprintf (stderr, "No memory\n");
                 exit (1);
            }

            while ( (host = slurm_hostlist_shift(my_hostlist)) )
                 printf ("host = %s\n", host);

            slurm_hostlist_destroy (my_hostlist) ;
            exit (0);
       }

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-2006  The Regents of the University of California.
       Produced at Lawrence Livermore National  Laboratory  (cf,  DISCLAIMER).
       CODE-OCEC-09-009. All rights reserved.

       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

       slurm_get_job_steps(3), slurm_load_jobs(3), slurm_load_partitions(3)