Funk: Difference between revisions

From Grid5000
Jump to navigation Jump to search
Line 20: Line 20:


===Inside Grid'5000===
===Inside Grid'5000===
{{Term|location=frontend|cmd=$ funk -h}}
{{Term|location=frontend|cmd=$ <code class="command">funk</code> -h}}
See below for options descriptions.
See below for options descriptions.



Revision as of 18:04, 19 December 2013

(F)ind yo(U)r (N)odes on g5(K) is a tool that help you to plan your multi-site experiments on Grid5000. It is a Python script based on Execo that:

  • give you the number of nodes available at a date and for walltime
  • find the slots for a combination of resources and a walltime
  • find the slot with the maximum number of nodes for a period and a walltime.

Some basic examples can be found here.

Projet source, issue and feature requests can be found here.

Funk Slots.png


Running the tool

Inside Grid'5000

Terminal.png frontend:
$ funk -h

See below for options descriptions.

Outside Grid'5000

You need to install execo 2.2 and configure it for Grid'5000 [1] Once it is done, you can clone the repository with:

 git clone https://github.com/lpouillo/Funk.git

And run the script with the options you need.

Options

General options

Define mode and controls I/O.

 -h, --help            show this help message and exit
 -m MODE, --mode MODE  Setup the mode: date, free or max 
                       default = date
 -y, --yes             Perform the reservation automatically
 -q, --quiet           Run without printing anything
 -v, --verbose         Run in verbose mode
 -p PROG, --prog PROG  The program to be run when the reservation start
 --plots               Draw a Gantt plot and the slots

Reservation

Customize your Grid'5000 reservation.

 -r RESOURCES, --resources RESOURCES
                       Comma separated list of Grid'5000 elements (grid5000, site or cluster)
                       -r element1,element2 for date and max modes
                       -r element1:n_nodes1,element2:n_nodes2 for free mode
                       default = grid5000
 -b BLACKLIST, --blacklist BLACKLIST
                       Remove clusters from planning computation
 -R RATIO, --ratio RATIO
                       Apply a given ratio to the resources found, works only for mode date and max
 -o SUBMISSION_OPTS, --oargridsub_opts SUBMISSION_OPTS
                       Extra options to pass to the oarsub/oargridsub command line
 -k, --kavlan          Ask for a KaVLAN
 -n SUBNET, --subnet SUBNET
                       Ask for subnets. slash_22=1 will retrieve a /22 subnet on every site of your requests, 
                       but you can specify site1:slash_22=2,site2:slash_19=1
 -j JOB_NAME, --job_name JOB_NAME
                       The job name passed to the OAR subjobs
                       default = FUNK
 --no-oargrid          Don't use oargridsub and perform parallel oar reservations
 --force-oargrid       Force the usage of oargrisub, even if there only one site involved

Time

Define options related to date and time.

 -w WALLTIME, --walltime WALLTIME
                       Reservation walltime in OAR format
                       default = 1:00:00
 -s STARTDATE, --startdate STARTDATE
                       Starting date in OAR format
                       default = 2013-12-18 11:28:32
 -e ENDDATE, --enddate ENDDATE
                       End date in OAR format
                       default = 2014-01-08 11:28:32
 -c, --charter         Avoid charter periods

Examples

Number of available nodes on stremi cluster from date to date + walltime

 funk -m date -s "2013-12-18 11:28:32" -r stremi

First free slots for a resource combination with deploy job type and a KaVLAN

 funk -m free -w 2:00:00 -r grid5000:100,taurus:4 -o "-t deploy" -k

Maximum number of nodes available for the resources, avoiding charter periods

 funk -m max -w 10:00:00 -r nancy,paradent,edel -c