Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
wiki:disk_reservation [2016/11/29 23:08]
neyron [Limits]
wiki:disk_reservation [2016/12/02 18:33]
neyron [Admission rules]
Line 2: Line 2:
 E.g. Each node has "​cpus"​ and "​disks",​ we want to allow users to create jobs to reserve disks for a long period, and eventually request smaller compute jobs on resources on which those disks are reserved. E.g. Each node has "​cpus"​ and "​disks",​ we want to allow users to create jobs to reserve disks for a long period, and eventually request smaller compute jobs on resources on which those disks are reserved.
 This would give users the capability of keeping data on disk for a longer time than the compute time, e.g. a more persistent storage for data. This would give users the capability of keeping data on disk for a longer time than the compute time, e.g. a more persistent storage for data.
 +
 ===== Setup ===== ===== Setup =====
 We create //disk// resources, then setup some coupling so that a //compute// resource is **tagged** when a user has disks reserved on it. Tagging in done in the //disk// property of the //compute// resource (type //​default//​),​ with the syntax: ''/​userid1:#​disks/​userid2:#​disks/''​. We create //disk// resources, then setup some coupling so that a //compute// resource is **tagged** when a user has disks reserved on it. Tagging in done in the //disk// property of the //compute// resource (type //​default//​),​ with the syntax: ''/​userid1:#​disks/​userid2:#​disks/''​.
Line 109: Line 110:
 In order to:  In order to: 
   - simplify the user interface   - simplify the user interface
-  - allow one to submit a compute job before the disk job actually starts +  - allow one to submit a compute job before the //disk// job actually starts ​(not possible otherwise, because not resource exists with the requested property value) 
-job type ''​withdisk''​ is added in admission rules. This type of job will be used for the compute job submission.+job type ''​with_disk''​ is added in admission rules. This type of job will be used for the compute job submission.
  
 First modify the job type checking: ''​$ oaradmission -m 15 -e''​ First modify the job type checking: ''​$ oaradmission -m 15 -e''​
Line 277: Line 278:
   * Users may want to select specific disks/hosts when using only a part of the reserved disks for a given compute job. This mechanism does not allow it.   * Users may want to select specific disks/hosts when using only a part of the reserved disks for a given compute job. This mechanism does not allow it.
   * The ''​reserve_disk''​ and ''​with_disk''​ job types do not allow to reserve at once (in a single ''​oarsub''​ command) both the disk and compute resources.   * The ''​reserve_disk''​ and ''​with_disk''​ job types do not allow to reserve at once (in a single ''​oarsub''​ command) both the disk and compute resources.
 +  * A //​with_disk//​ compute job could easily suffer from starvation since it will only be scheduled once the disk job is started:
 +    * While batch jobs which are not started yet will be move with regard to previous scheduling decisions, some may have started before the disk property of the resources is changed, making resources whose disks are reserved unavailable for the duration of those jobs.
 +    * Advance reservations could also be accepted on the resources: resources are //booked// upon submission acceptation for an advance reservation,​ possibly before the disk property is changed.
wiki/disk_reservation.txt · Last modified: 2016/12/02 18:33 by neyron
Recent changes RSS feed GNU Free Documentation License 1.3 Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki