next up previous contents
Next: Schedule Bins Up: UsersGuideStable Previous: Steerable   Contents


Scheduling

Cactus contains a rule-based scheduling system, which determines which routines, from which thorns are run in which order. The scheduler determines if the specifications are inconsistent, but does allow the user to schedule a routine with respect to another routine which may not exist. For a detailed discussion of the schedule.ccl syntax see Appendix E2.4.

A usual simple specification for a schedule declaration is

schedule <function name> AT <schedule bin>
{
  LANG: <language>
  [STORAGE:       <group>,<group>...]
} "Description of function"

The full specification for a schedule declaration is

schedule [GROUP] <function|schedule group name> AT|IN <schedule bin|group name>
         [AS <alias>]
         [WHILE <variable>] [IF <variable>]
         [BEFORE|AFTER <item>|(<item> <item> ...)]
{
  LANG: <language>
  [STORAGE:       <group>,<group>...]
  [TRIGGER:       <group>,<group>...]
  [SYNC:          <group>,<group>...]
  [OPTIONS:       <option>,<option>...]
} "Description of function or schedule group"

This full schedule specification consists of a mandatory part, a set of options, and the main body limited by braces, referred to as the schedule block.

Each schedule item is scheduled either AT a particular scheduling bin, or IN a schedule group.



Subsections
next up previous contents
Next: Schedule Bins Up: UsersGuideStable Previous: Steerable   Contents