in reply to How can I convert my script for submitting SLURM jobs from Bash to Perl?
A quick google brings up this, is this the "sbatch" / SLURM you're talking about? https://computing.llnl.gov/linux/slurm/sbatch.html
If that's the case, and if my understanding from a quick skim is correct, then this isn't a plain bash script! There seems to be some preprocessing being done that reads the #SBATCH lines - as has already been noted, lines beginning with # are just comments to bash.
You'll either need to find a monk who's worked with this system before, or give everyone else a quick overview of how this system works.
I will still venture two guesses as to how this might still work with Perl. First, perhaps the system understands more than bash scripts. # lines are just comments to Perl too, so maybe this could work?
#!/usr/bin/perl #SBATCH -A 1234 #SBATCH -t 2-00:00 #SBATCH -n 24 use warnings; use strict; system("module add gromacs")==0 or warn "Warning: module add failed, code $?"; system("srun resp.com")==0 or warn "Warning: srun failed, code $?";
(This requires "module" and "srun" to be actual commands in your PATH, and not some directives that only sbatch understands.)
Or, even though this isn't exactly a "conversion to Perl", it still gives some control to Perl - this uses IPC::Run3 to feed the "script" to sbatch via STDIN.
#!/usr/bin/perl use warnings; use strict; use IPC::Run3 'run3'; my $script = <<'END_SCRIPT'; #!/bin/bash #SBATCH -A 1234 #SBATCH -t 2-00:00 #SBATCH -n 24 module add gromacs srun resp.com END_SCRIPT run3 ["sbatch"], \$script;
Even though that's really just a simple wrapper, it still gives you some of the power of Perl, such as being able to generate the script dynamically or do advanced things with STDOUT and STDERR.
I want to convert it to Perl it because I will add on it the other parts after it works.
Sorry, I don't understand, could you explain a bit more?
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: How can I convert my script for submitting SLURM jobs from Bash to Perl?
by erhan (Novice) on Feb 18, 2015 at 22:22 UTC | |
by RonW (Parson) on Feb 19, 2015 at 20:17 UTC | |
by Anonymous Monk on Feb 18, 2015 at 22:53 UTC | |
by erhan (Novice) on Feb 18, 2015 at 23:09 UTC | |
by Anonymous Monk on Feb 18, 2015 at 23:28 UTC |