slurm | SLURM : A Highly Scalable Resource Manager

 by   chaos C Version: Current License: Non-SPDX

kandi X-RAY | slurm Summary

kandi X-RAY | slurm Summary

slurm is a C library. slurm has no bugs, it has no vulnerabilities and it has low support. However slurm has a Non-SPDX License. You can download it from GitHub.

SLURM: A Highly Scalable Resource Manager
Support
    Quality
      Security
        License
          Reuse

            kandi-support Support

              slurm has a low active ecosystem.
              It has 62 star(s) with 26 fork(s). There are 8 watchers for this library.
              OutlinedDot
              It had no major release in the last 6 months.
              There are 4 open issues and 5 have been closed. On average issues are closed in 299 days. There are no pull requests.
              It has a neutral sentiment in the developer community.
              The latest version of slurm is current.

            kandi-Quality Quality

              slurm has 0 bugs and 0 code smells.

            kandi-Security Security

              slurm has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
              slurm code analysis shows 0 unresolved vulnerabilities.
              There are 0 security hotspots that need review.

            kandi-License License

              slurm has a Non-SPDX License.
              Non-SPDX licenses can be open source with a non SPDX compliant license, or non open source licenses, and you need to review them closely before use.

            kandi-Reuse Reuse

              slurm releases are not available. You will need to build from source code and install.
              It has 20283 lines of code, 13 functions and 82 files.
              It has high code complexity. Code complexity directly impacts maintainability of the code.

            Top functions reviewed by kandi - BETA

            kandi's functional review helps you automatically verify the functionalities of the libraries and avoid rework.
            Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of slurm
            Get all kandi verified functions for this library.

            slurm Key Features

            No Key Features are available at this moment for slurm.

            slurm Examples and Code Snippets

            Get a SLURM variable .
            pythondot img1Lines of Code : 17dot img1License : Non-SPDX (Apache License 2.0)
            copy iconCopy
            def _get_slurm_var(name):
              """Gets the SLURM variable from the environment.
            
              Args:
                name: Name of the step variable
            
              Returns:
                SLURM_ from os.environ
              Raises:
                RuntimeError if variable is not found
              """
              name = 'SLURM_' + name
              try:  
            Get the number of slurm tasks .
            pythondot img2Lines of Code : 7dot img2License : Non-SPDX (Apache License 2.0)
            copy iconCopy
            def _get_num_slurm_tasks():
              """Returns the number of SLURM tasks of the current job step.
            
              Returns:
                The number of tasks as an int
              """
              return int(_get_slurm_var('STEP_NUM_TASKS'))  

            Community Discussions

            QUESTION

            Unable to write over an SSHFS mounted folder with SLURM jobs
            Asked 2022-Mar-31 at 07:00

            I have the following problematic and I am not sure what is happening. I'll explain briefly.

            I work on a cluster with several nodes which are managed via slurm. All these nodes share the same disk memory (I think it uses NFS4). My problem is that since this disk memory is shared by a lots of users, we have a limit a mount of disk memory per user.

            I use slurm to launch python scripts that runs some code and saves the output to a csv file and a folder.

            Since I need more memory than assigned, what I do is I mount a remote folder via sshfs from a machine where I have plenty of disk. Then, I configure the python script to write to that folder via an environment variable, named EXPERIMENT_PATH. The script example is the following:

            Python script:

            ...

            ANSWER

            Answered 2022-Mar-31 at 07:00

            I shall emphasize that all the nodes in the cluster share the same disk space so I guess that the mounted folder is visible from all machines.

            This is not how it works, unfortunately. Trying to put it simply; you could say that mount point inside mount points (here SSHFS inside NFS) are "stored" in memory and not in the "parent" filesystem (here NFS) so the compute nodes have no idea there is an SSHFS mount on the login node.

            For your setup to work, you should create the SSHFS mount point inside your submission script (which can create a whole lot of new problems, for instance regarding authentication, etc.)

            But before you dive into that, you probably should enquiry whether the cluster has another filesystem ("scratch", "work", etc.) where there you could temporarily store larger data than what the quota allows in your home filesystem.

            Source https://stackoverflow.com/questions/71644241

            QUESTION

            Move input arguments from bash script to executable
            Asked 2022-Mar-22 at 08:27

            I am currently trying to write a bash script which runs my executable with some input parameters. Most of the input parameters are set inside the script, some of them are passed to the bash script and evaluated. What I need now is to generalise the script so if I want to set other inputs known by my executable then I would want to write them in the bash script input. In other words my bash script executes at the end the command:

            ...

            ANSWER

            Answered 2022-Mar-22 at 08:27

            If I understand correctly, you have 7 parameters that you handle in the script and all the others should just be given to you executable?

            Try this:

            Source https://stackoverflow.com/questions/71568422

            QUESTION

            In Bash, how to capture exit status code from a command nested within a complex statement
            Asked 2022-Mar-18 at 21:45

            I'm relatively new to working with bash. I've inherited this bit of code to run a command via SLURM on an HPC system:

            ...

            ANSWER

            Answered 2022-Mar-18 at 19:06

            One way to get status is to save it in a file :

            Source https://stackoverflow.com/questions/71531939

            QUESTION

            How to make SLURM job step use the minimum number of nodes?
            Asked 2022-Mar-09 at 08:46

            I am trying to run many smaller SLURM job steps within one big multi-node allocation, but am struggling with how the tasks of the job steps are assigned to the different nodes. In general I would like to keep the tasks of one job step as local as possible (same node, same socket) and only spill over to the next node when not all tasks can be placed on a single node.

            The following example shows a case where I allocate 2 nodes with 4 tasks each and launch a job step asking for 4 tasks:

            ...

            ANSWER

            Answered 2022-Mar-09 at 08:46

            Unfortunately, there is no other way. You have to use -N.

            Even if you use -n 1 (instead of 4) there will be a warning:

            Source https://stackoverflow.com/questions/71382578

            QUESTION

            How to pipe input to SLURM's sbatch?
            Asked 2022-Mar-07 at 09:23

            I have a job script called testjob.sh which I submit as

            ...

            ANSWER

            Answered 2022-Mar-07 at 09:23

            sbatch runs the job in a different environment ("in the background"), therefore you can't pipe stuff into the scripts.

            You can avoid this in two ways:

            • use srun instead of sbatch, which doesn't disconnect the job from your session and piping works more-or-less normally. Still, this doesn't allow you to "queue" the job as with batches.
            • use intermediate file for saving the input, i.e., modify the batch file to read the input from testjob.in:

            Source https://stackoverflow.com/questions/69271461

            QUESTION

            Weird Characters Added When Creating File From String In Java
            Asked 2022-Mar-02 at 00:22

            When trying to create a bash script (.sh file) in Java, random characters are added to the beginning of the file.

            As a result, the script is rejected by SLURM when submitted using the sbatch command.

            My Code:

            ...

            ANSWER

            Answered 2022-Mar-02 at 00:22

            The problem is you used a DataOutputStream. That is unnecessary here, just write to the FileOutputStream. The 0x05 0x01 is an object header that is meaningful only when the output is read later by a DataInputStream.

            Source https://stackoverflow.com/questions/71316026

            QUESTION

            Allow a requested multi-node job to run on a subset of nodes
            Asked 2022-Mar-01 at 10:29

            I need to submit a slurm job that needs to have a core count divisible by 7 on a cluster with 64 core nodes. One solution is to run a 7 node/16 core job, which works well because the parallelization works extremely well between these 7 groups of cores (very little communication between the 7 groups).

            Scheduling of this job becomes difficult however since its hard for 7 nodes to open up 16 cores at one time. Are there any ways to submit jobs in the following configurations?

            • Explicitly request 2 nodes, one uses 64 cores and one uses 48 cores.

            • Allow the job to combine the 7 node job to place multiple node allocations on a single node, allowing it to simply find 7 groups of 16 cores.

            The only thing I cannot allow is the groups of 16 cores to be split over 2 nodes, as this will dramatically hurt performance.

            This is running on slurm 20.11.8

            ...

            ANSWER

            Answered 2022-Mar-01 at 10:29

            Explicitly request 2 nodes, one uses 64 cores and one uses 48 cores.

            If I understood your requirement correctly, then this will satisfy your first configuration requirement:

            Source https://stackoverflow.com/questions/71269675

            QUESTION

            Passing a parameter into a slurm script (matlab)
            Asked 2022-Feb-28 at 07:16

            I am using slurm to submit jobs to the university supercomputer. My matlab function has one parameter:

            function test(variable_1)

            and my slurm file is (I am not sure if it is correct. I know how to define the value of the parameter in the slurm file, but I would like to pass the value to the slurm file as I need to run the matlab function many times with different values for the parameter):

            ...

            ANSWER

            Answered 2022-Feb-28 at 07:16

            The first argument of the Bash script is stored in an environment variable named $1. So the last line of the script should be

            Source https://stackoverflow.com/questions/71282026

            QUESTION

            Setting and passing string variable in SLURM job script
            Asked 2022-Feb-24 at 12:06

            I have a SLURM job script as follows:

            ...

            ANSWER

            Answered 2022-Feb-24 at 12:06

            Actually, the single quotes will be striped by Bash during the assignment.

            Source https://stackoverflow.com/questions/71248955

            QUESTION

            Do submitted jobs take a copy the source? Queued jobs?
            Asked 2022-Feb-22 at 12:38

            When submitting jobs with sbatch, is a copy of my executable taken to the compute node? Or does it just execute the file from /home/user/? Sometimes when I am unorganised I will submit a job, then change the source and re-compile to submit another job. This does not seem like a good idea, especially if the job is still in the queue. At the same time it seems like it should be allowed, and it would be much safer if at the moment of calling sbatch a copy of the source was made.

            I ran some tests which confirmed (unsurprisingly) that once a job is running, recompiling the source code has no effect. But when the job is in the queue, I am not sure. It is difficult to test.

            edit: man sbatch does not seem to give much insight, other than to say that the job is submitted to the Slurm controller "immediately".

            ...

            ANSWER

            Answered 2022-Feb-22 at 12:38

            The sbatch command creates a copy of the submission script and a snapshot of the environment and saves it in the directory listed as the StateSaveLocation configuration parameter. It can therefore be changed after submission without effect. But that is not the case for the files used in the submission script. If your submission script starts an executable, if will see the "version" of the executable at the time it starts. Modifying the program before it starts will lead to the new version being run, modifying it during the run (i.e. while it has already been read from disk and saved into memory) will lead to the old version being run.

            Source https://stackoverflow.com/questions/71220595

            Community Discussions, Code Snippets contain sources that include Stack Exchange Network

            Vulnerabilities

            No vulnerabilities reported

            Install slurm

            You can download it from GitHub.

            Support

            For any new features, suggestions and bugs create an issue on GitHub. If you have any questions check and ask questions on community page Stack Overflow .
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries
            CLONE
          • HTTPS

            https://github.com/chaos/slurm.git

          • CLI

            gh repo clone chaos/slurm

          • sshUrl

            git@github.com:chaos/slurm.git

          • Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link