clusterize – quick cluster submission


clusterize [options] -c “command”


Creates a script in the temp directory to run the user specified command with parameters defined by [options], submits it to the cluster, then cleans the script file. Please note that the command should be surrounded by quotes so bash doesn’t interpret the command before clusterize can.

The script is located on the Storrs and UCHC HPC clusters.

You can either add the user name daguiar's home/bin directory to your PATH variable or soft link the script somewhere into your path.

It’s quite possible there are bugs with this script! Please let me know if you find any. Run the clusterize script without parameters to get the latest usage.


[options] are in…

The command surrounded by quotes (REQUIRED).

Shows this help text.

-w <dir>
Sets the working directory of the executing script to <dir> (default is pwd, for your current directory it is: /home/daguiar).

-l <length>
Sets the upper bound on the amount of time required by this job to <length>. It’s important to have an accurate estimate. Some schedulers might terminate your job if you go over this time and all schedulers will give you higher priority if your job is requires less time (default is one hour: 01:00:00).

-p <ppn>
Sets the number of processors per node to <ppn> (default 1)

-n <nodes>
Sets the number of nodes required by this job to <nodes> (default 1)

-m <mem>
Sets the amount of memory required per node to <mem> (default 1G)

Test this script for your command. This will create the temporary file, tell you where it is, and then abort. You should remember to clean up your temporary file after done verifying it.

Do NOT combine the std out and std err streams (default is to combine them)


1) A very simple example to send the command echo ‘hi’ to the cluster.

clusterize -c "echo 'hi'"

2) A slightly more complicated example to send a find command to the cluster.

clusterize -c "find . -name 'bin'"

3) A super cool example. First, find all of the text files in the current directory or any subdirectory, then create a script for each text file found that lists the file (with options -al). You can use this same find -exec framework to clusterize a number of input files.

find . -name "*.txt" -exec clusterize -c 'ls -al {}' \;