Set execution hints at workflow level

Via the visual interface

  1. Go to the Apps tab of your project dashboard.
  2. Click the pencil icon corresponding to the workflow you want to edit to open the Workflow Editor.
  3. In the Workflow Editor, click the ellipses and select Settings.
  4. Set the workflow-level instance in the pop-up:
    a. Enter the name of the hint you are setting in the Requirement class field, e.g. sbg:AWSInstanceType, sbg:maxNumberOfParallelInstances.
    b. Enter the value for the hint in the Requirement value field, e.g. c3.8xlarge.
    c. If setting up the sbg:AWSInstanceType hint, you can also add or change the value in the Attached Storage field to define the size of storage attached to the computation instance.
  5. Click Save.

Via the API

  • To set workflow level hints via the API, include those hints in the CWL specification of the workflow when adding a new app or adding a new revision of an app.
  • Workflow level hints should be placed in an array named hints at the top level of the workflow JSON.
  • A hint is represented by a JSON object with the following fields:
FieldDescription
classThe name of the hint to set
valueThe value to assign to this hint

AWS

{
  ...
  "hints": [
    {
      "class": "sbg:AWSInstanceType",
      "value": "c4.8xlarge;ebs-gp2;2000"
    },
    {
      "class": "sbg:maxNumberOfParallelInstances",
      "value": "4"
    }
  ],
  ...
}

In this case, the workflow uses the c4.8xlarge instance with 2000 GB of attached EBS storage. The value of sbg:AWSInstanceType consists of the following three parts:

  • instance type, e.g. c4.8xlarge
  • attached disk type - ebs-gp2
  • disk size in GB