View a markdown version of this page

ResourceRequirement - Amazon Elastic Container Service
Services or capabilities described in Amazon Web Services documentation might vary by Region. To see the differences applicable to the China Regions, see Getting Started with Amazon Web Services in China (PDF).

ResourceRequirement

The type and amount of a resource to assign to a container. The supported resource types are GPUs, Neuron devices, and Elastic Inference accelerators. For more information, see Working with GPUs on Amazon ECS or Working with Amazon Elastic Inference on Amazon ECS in the Amazon Elastic Container Service Developer Guide

Contents

type

The type of resource to assign to a container.

Type: String

Valid Values: GPU | InferenceAccelerator | NeuronDevice

Required: Yes

sharingStrategy

The strategy that the container uses to share a GPU with other containers. Specify a sharing strategy only when the type is GPU. For a GPU resource requirement, specify either value or sharingStrategy, but not both. If you don't specify a sharing strategy, the container has exclusive use of each GPU that Amazon ECS assigns to it. The containers in a task that request GPUs must all use the same option.

You can use GPU sharing with tasks that run on Amazon EC2 instances or Amazon ECS Managed Instances. Task definitions that require EXTERNAL compatibility don't support GPU sharing.

Type: SharingStrategy object

Note: This object is a Union. Only one member of this object can be specified or returned.

Required: No

value

The value for the specified resource type.

You must specify this parameter unless the type is GPU and you specify sharingStrategy.

When the type is GPU, the value is the number of physical GPUs the Amazon ECS container agent reserves for the container. The number of GPUs that's reserved for all containers in a task can't exceed the number of available GPUs on the container instance that the task is launched on. You can also specify ALL to allocate all available GPUs on the instance to the container.

When the type is NeuronDevice, the value must be ALL. This allocates all available Neuron devices on the instance to the container. Only one container in a task can specify NeuronDevice resources. This resource type is only supported on Managed Instances.

When the type is InferenceAccelerator, the value matches the deviceName for an InferenceAccelerator specified in a task definition.

Type: String

Required: No

See Also

For more information about using this API in one of the language-specific Amazon SDKs, see the following: