Skip to content

Latest commit

 

History

History
88 lines (75 loc) · 4.04 KB

README.md

File metadata and controls

88 lines (75 loc) · 4.04 KB

Funk

A Python tool to help you to find ressources on the Grid5000 platform. Requires execo 2.4

Developped by the Inria Hemera initiative 2010-2014

https://www.grid5000.fr/mediawiki/index.php/Hemera

usage: funk [-h] [--version] [-m MODE] [-y] [-q | -v] [-p PROG] [--plots]
	    [--json] [-r RESOURCES] [-b BLACKLIST] [-R RATIO]
	    [-o SUBMISSION_OPTS] [-k] [-n SUBNET] [-j JOB_NAME] [--virtual]
	    [--infiniband] [--green] [--no-oargrid | --force-oargrid]
	    [-w WALLTIME] [-s STARTDATE] [-e ENDDATE] [-c]

This tool helps you to find resources on Grid'5000 platform. It has three modes: 
 - date = give you the number of nodes available at a given date, 
 - free = find the next free slot for a combination of resources, 
 - max  = find the time slot where the maximum number of nodes are available.

If no arguments is given, compile the planning of the whole platform and generate an
    oargridsub command line with all available resources for 1 hour.
    Based on execo 2.4, http://execo.gforge.inria.fr/doc/oar 2.5, http://oar.imag.fr.

General options:
  Define mode and controls I/O.

  -h, --help            show this help message and exit
  --version             show program's version number 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
  --json                Produce a json file that contains all the informations

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 host resources
  -o SUBMISSION_OPTS, --submission_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
  --virtual             Use only clusters with hardware virtualization
  --infiniband          Use only clusters with infiniband or myrinet interfaces
  --green               Use only clusters that have energetical power measurements
  --no-oargrid          Don't use oargridsub and perform parallel oar reservations
  --force-oargrid       Force the usage of oargrisub, even if only one site is 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 = 1417596795
  -e ENDDATE, --enddate ENDDATE
	                End date in OAR format
	                default = 1419411195
  -c, --charter         Avoid charter periods

Examples:
Number of available nodes on stremi cluster from date to date + walltime 
  funk -m date -s "2014-12-03 09:53:15" -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 
Issues/features requests can be reported to https://github.com/lpouillo/Funk