

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 工作 HealthOmics 流程定义中的任务资源
<a name="task-resources"></a>

在工作流定义中，为每项任务定义以下内容：
+ 任务的容器镜像。有关更多信息，请参阅 [私有工作流程的容器镜像](workflows-ecr.md)。
+ 任务所需的数量 CPUs 和内存。有关更多信息，请参阅 [HealthOmics 任务的计算和内存要求](memory-and-compute-tasks.md)。

HealthOmics 忽略每项任务的任何存储规范。 HealthOmics 提供运行中的所有任务都可以访问的运行存储空间。有关更多信息，请参阅 [在 HealthOmics 工作流程中运行存储类型](workflows-run-types.md)。

------
#### [ WDL ]

```
task my_task {
   runtime {
      container: "<aws-account-id>.dkr.ecr.<aws-region>.amazonaws.com/<image-name>"
      cpu: 2
      memory: "4 GB"
   }
   ...
}
```

对于 WDL 工作流程， HealthOmics 对于因服务错误而失败的任务（API 请求返回 5XX HTTP 状态码），最多尝试重试两次。有关任务重试的更多信息，请参阅[任务重试次数](monitoring-runs.md#run-status-task-retries)。

您可以通过在 WDL 定义文件中为任务指定以下配置来选择退出重试行为：

```
runtime {
   preemptible: 0
}
```

------
#### [ NextFlow ]

```
process my_task {
   container "<aws-account-id>.dkr.ecr.<aws-region>.amazonaws.com/<image-name>"
   cpus 2
   memory "4 GiB"
   ...
}
```

------
#### [ CWL ]

```
cwlVersion: v1.2
class: CommandLineTool
requirements:
    DockerRequirement:
        dockerPull: "<aws-account-id>.dkr.ecr.<aws-region>.amazonaws.com/<image-name>"
    ResourceRequirement:
        coresMax: 2
        ramMax: 4000 # specified in mebibytes
```

------