Funk: Difference between revisions

From Grid5000
Jump to navigation Jump to search
No edit summary
Line 57: Line 57:


==<span id="usage">Usage</span>==
==<span id="usage">Usage</span>==
 
Number of available nodes on stremi cluster from date to date + walltime  
Finding the number of available nodes from now to now + walltime
  funk -m date -s "2013-11-18 10:41:25" -r stremi
  funk -w 1:00:00 -m date -r grid5000
First free slots for a resource combination with deploy job type and a KaVLAN
Finding the first free slots for a resource combination
  funk -m free -w 2:00:00 -r grid5000:100,taurus:4 -o "-t deploy" -k
  funk -w 2:00:00 -m free -r lille:10,lyon:10,sophia:10
Maximum number of nodes available for the resources, avoiding charter periods
Finding the maximum number of nodes available for the resource and with a
  funk -m max -w 10:00:00 -r nancy,paradent,edel -c
KaVLAN
  funk -w 10:00:00 -m max -r lyon,sophia,edel -k

Revision as of 11:40, 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

running

  • (-m): three modes available
    • date = give you the number of nodes available at the time the script is run
    • free = find the slots for a combination of resources
    • max = find the maximum number of nodes for the period specified.
  • (-y): perform the reservation automatically
  • (-v): verbose mode (a lot of debugging informations)
  • (-q): quiet mode (no informations displayed)
  • (-p): draw gantt diagramm and slots (require matplotlib 1.2, not available on Grid'5000 frontends)

resources

  • (-r): define the elements you need by giving a comma separated list of elements (grid5000, site_uid, cluster_uid)
    • element1,element2,element3 for mode now and max
    • element1:n_nodes1,element2:n_nodes2,element3:n_nodes3 for mode free
  • (-k): ask for a global KaVLAN
  • (-o): define your oargridsub options (default = '-t deploy')

time

  • (-w): walltime of the reservation (1:00:00)
  • (-s): starting date for the planning computation (2013-07-12 16:12:35)
  • (-e): ending date for the planning computation (2013-07-16 16:12:35)
  • (-c): choose a timeslot that is out of Grid'5000 charter time

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