Funk: Difference between revisions

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


==<span id="options">Options</span>==
==<span id="options">Options</span>==
===running===
===General options===
* (-m): three modes available
Define mode and controls I/O.
** ''date''  = give you the number of nodes available at the time the script is run
  -h, --help            show this help message and exit
** ''free'' = find the slots for a combination of resources
  -m MODE, --mode MODE  Setup the mode: date, free or max
** ''max''  = find the maximum number of nodes for the period specified.
  -y, --yes            Perform the reservation automatically
* (-y): perform the reservation automatically
  -q, --quiet          Run without printing anything
* (-v): verbose mode (a lot of debugging informations)
  -v, --verbose        Run in verbose mode
* (-q): quiet mode (no informations displayed)
  -p PROG, --prog PROG  The program to be run when the reservation start
* (-p): draw gantt diagramm and slots (require matplotlib 1.2, not available on Grid'5000 frontends)


===resources===
===Reservation===
* (-r): define the elements you need by giving a comma separated list of elements (grid5000, site_uid, cluster_uid)
Customize your Grid'5000 reservation.
** element1,element2,element3 for mode ''now'' and ''max''
  -r RESOURCES, --resources RESOURCES
** element1:n_nodes1,element2:n_nodes2,element3:n_nodes3 for mode ''free''
                        Comma separated list of Grid'5000 elements (grid5000, site or cluster)
* (-k): ask for a global KaVLAN
                        -r element1,element2 for date and max modes
* (-o): define your oargridsub options (default = '-t deploy')
                        -r element1:n_nodes1,element2:n_nodes2 for free mode
 
  -b BLACKLIST, --blacklist BLACKLIST
===time===
                        Remove clusters from planning computation
* (-w): walltime of the reservation (1:00:00)
  -R RATIO, --ratio RATIO
* (-s): starting date for the planning computation (2013-07-12 16:12:35)
                        Apply a given ratio to the resources found, works only for mode date and max
* (-e): ending date for the planning computation (2013-07-16 16:12:35)
  -o OARGRIDSUB_OPTS, --oargridsub_opts OARGRIDSUB_OPTS
* (-c): choose a timeslot that is out of Grid'5000 charter time
                        Extra options to pass to the oargridsub command line
  -k, --kavlan          Ask for a KaVLAN
  -j JOB_NAME, --job_name JOB_NAME
                        The job name passed to the OAR subjobs
===Time===
Define options related to date and time.
  -w WALLTIME, --walltime WALLTIME
                        Reservation walltime in OAR format
  -s STARTDATE, --startdate STARTDATE
                        Starting date in OAR format
  -e ENDDATE, --enddate ENDDATE
                        End date in OAR format
  -c, --charter        Avoid charter periods


==<span id="usage">Usage</span>==
==<span id="usage">Usage</span>==

Revision as of 11:42, 15 November 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.

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

Some basic usage can be found here.

Funk Slots.png


Running the tool

No installation

A bash wrapper is installed on lyon frontend in /home/lpouilloux/bin/ and allow you to use funk without any configuration and installation. You must log into the Lyon frontend and run it:

   ssh lyon
   /home/lpouilloux/bin/funk -h

With installation

You need to install the git version of execo. Once it is done, you can clone the repository with:

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

And run the script with

   ./funk.py

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
 -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

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
 -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 OARGRIDSUB_OPTS, --oargridsub_opts OARGRIDSUB_OPTS
                       Extra options to pass to the oargridsub command line
 -k, --kavlan          Ask for a KaVLAN
 -j JOB_NAME, --job_name JOB_NAME
                       The job name passed to the OAR subjobs

Time

Define options related to date and time.

 -w WALLTIME, --walltime WALLTIME
                       Reservation walltime in OAR format
 -s STARTDATE, --startdate STARTDATE
                       Starting date in OAR format
 -e ENDDATE, --enddate ENDDATE
                       End date in OAR format
 -c, --charter         Avoid charter periods

Usage

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

 funk -m date -s "2013-11-18 10:41:25" -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