libZSservicesZSamazonka-batchZSamazonka-batch
Copyright(c) 2013-2021 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay <brendan.g.hay+amazonka@gmail.com>
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellNone

Amazonka.Batch.Types.ResourceRequirement

Description

 
Synopsis

Documentation

data ResourceRequirement Source #

The type and amount of a resource to assign to a container. The supported resources include GPU, MEMORY, and VCPU.

See: newResourceRequirement smart constructor.

Constructors

ResourceRequirement' 

Fields

  • value :: Text

    The quantity of the specified resource to reserve for the container. The values vary based on the type specified.

    type="GPU"
    The number of physical GPUs to reserve for the container. The number of GPUs reserved for all containers in a job shouldn't exceed the number of available GPUs on the compute resource that the job is launched on.

    GPUs are not available for jobs that are running on Fargate resources.

    type="MEMORY"
    The memory hard limit (in MiB) present to the container. This parameter is supported for jobs that are running on EC2 resources. If your container attempts to exceed the memory specified, the container is terminated. This parameter maps to Memory in the Create a container section of the Docker Remote API and the --memory option to docker run. You must specify at least 4 MiB of memory for a job. This is required but can be specified in several places for multi-node parallel (MNP) jobs. It must be specified for each node at least once. This parameter maps to Memory in the Create a container section of the Docker Remote API and the --memory option to docker run.

    If you're trying to maximize your resource utilization by providing your jobs as much memory as possible for a particular instance type, see Memory Management in the Batch User Guide.

    For jobs that are running on Fargate resources, then value is the hard limit (in MiB), and must match one of the supported values and the VCPU values must be one of the values supported for that memory value.

    value = 512
    VCPU = 0.25
    value = 1024
    VCPU = 0.25 or 0.5
    value = 2048
    VCPU = 0.25, 0.5, or 1
    value = 3072
    VCPU = 0.5, or 1
    value = 4096
    VCPU = 0.5, 1, or 2
    value = 5120, 6144, or 7168
    VCPU = 1 or 2
    value = 8192
    VCPU = 1, 2, or 4
    value = 9216, 10240, 11264, 12288, 13312, 14336, 15360, or 16384
    VCPU = 2 or 4
    value = 17408, 18432, 19456, 20480, 21504, 22528, 23552, 24576, 25600, 26624, 27648, 28672, 29696, or 30720
    VCPU = 4
    type="VCPU"
    The number of vCPUs reserved for the container. This parameter maps to CpuShares in the Create a container section of the Docker Remote API and the --cpu-shares option to docker run. Each vCPU is equivalent to 1,024 CPU shares. For EC2 resources, you must specify at least one vCPU. This is required but can be specified in several places; it must be specified for each node at least once.

    For jobs that are running on Fargate resources, then value must match one of the supported values and the MEMORY values must be one of the values supported for that VCPU value. The supported values are 0.25, 0.5, 1, 2, and 4

    value = 0.25
    MEMORY = 512, 1024, or 2048
    value = 0.5
    MEMORY = 1024, 2048, 3072, or 4096
    value = 1
    MEMORY = 2048, 3072, 4096, 5120, 6144, 7168, or 8192
    value = 2
    MEMORY = 4096, 5120, 6144, 7168, 8192, 9216, 10240, 11264, 12288, 13312, 14336, 15360, or 16384
    value = 4
    MEMORY = 8192, 9216, 10240, 11264, 12288, 13312, 14336, 15360, 16384, 17408, 18432, 19456, 20480, 21504, 22528, 23552, 24576, 25600, 26624, 27648, 28672, 29696, or 30720
  • type' :: ResourceType

    The type of resource to assign to a container. The supported resources include GPU, MEMORY, and VCPU.

Instances

Instances details
Eq ResourceRequirement Source # 
Instance details

Defined in Amazonka.Batch.Types.ResourceRequirement

Read ResourceRequirement Source # 
Instance details

Defined in Amazonka.Batch.Types.ResourceRequirement

Show ResourceRequirement Source # 
Instance details

Defined in Amazonka.Batch.Types.ResourceRequirement

Generic ResourceRequirement Source # 
Instance details

Defined in Amazonka.Batch.Types.ResourceRequirement

Associated Types

type Rep ResourceRequirement :: Type -> Type #

NFData ResourceRequirement Source # 
Instance details

Defined in Amazonka.Batch.Types.ResourceRequirement

Methods

rnf :: ResourceRequirement -> () #

Hashable ResourceRequirement Source # 
Instance details

Defined in Amazonka.Batch.Types.ResourceRequirement

ToJSON ResourceRequirement Source # 
Instance details

Defined in Amazonka.Batch.Types.ResourceRequirement

FromJSON ResourceRequirement Source # 
Instance details

Defined in Amazonka.Batch.Types.ResourceRequirement

type Rep ResourceRequirement Source # 
Instance details

Defined in Amazonka.Batch.Types.ResourceRequirement

type Rep ResourceRequirement = D1 ('MetaData "ResourceRequirement" "Amazonka.Batch.Types.ResourceRequirement" "libZSservicesZSamazonka-batchZSamazonka-batch" 'False) (C1 ('MetaCons "ResourceRequirement'" 'PrefixI 'True) (S1 ('MetaSel ('Just "value") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Just "type'") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 ResourceType)))

newResourceRequirement Source #

Create a value of ResourceRequirement with all optional fields omitted.

Use generic-lens or optics to modify other optional fields.

The following record fields are available, with the corresponding lenses provided for backwards compatibility:

$sel:value:ResourceRequirement', resourceRequirement_value - The quantity of the specified resource to reserve for the container. The values vary based on the type specified.

type="GPU"
The number of physical GPUs to reserve for the container. The number of GPUs reserved for all containers in a job shouldn't exceed the number of available GPUs on the compute resource that the job is launched on.

GPUs are not available for jobs that are running on Fargate resources.

type="MEMORY"
The memory hard limit (in MiB) present to the container. This parameter is supported for jobs that are running on EC2 resources. If your container attempts to exceed the memory specified, the container is terminated. This parameter maps to Memory in the Create a container section of the Docker Remote API and the --memory option to docker run. You must specify at least 4 MiB of memory for a job. This is required but can be specified in several places for multi-node parallel (MNP) jobs. It must be specified for each node at least once. This parameter maps to Memory in the Create a container section of the Docker Remote API and the --memory option to docker run.

If you're trying to maximize your resource utilization by providing your jobs as much memory as possible for a particular instance type, see Memory Management in the Batch User Guide.

For jobs that are running on Fargate resources, then value is the hard limit (in MiB), and must match one of the supported values and the VCPU values must be one of the values supported for that memory value.

value = 512
VCPU = 0.25
value = 1024
VCPU = 0.25 or 0.5
value = 2048
VCPU = 0.25, 0.5, or 1
value = 3072
VCPU = 0.5, or 1
value = 4096
VCPU = 0.5, 1, or 2
value = 5120, 6144, or 7168
VCPU = 1 or 2
value = 8192
VCPU = 1, 2, or 4
value = 9216, 10240, 11264, 12288, 13312, 14336, 15360, or 16384
VCPU = 2 or 4
value = 17408, 18432, 19456, 20480, 21504, 22528, 23552, 24576, 25600, 26624, 27648, 28672, 29696, or 30720
VCPU = 4
type="VCPU"
The number of vCPUs reserved for the container. This parameter maps to CpuShares in the Create a container section of the Docker Remote API and the --cpu-shares option to docker run. Each vCPU is equivalent to 1,024 CPU shares. For EC2 resources, you must specify at least one vCPU. This is required but can be specified in several places; it must be specified for each node at least once.

For jobs that are running on Fargate resources, then value must match one of the supported values and the MEMORY values must be one of the values supported for that VCPU value. The supported values are 0.25, 0.5, 1, 2, and 4

value = 0.25
MEMORY = 512, 1024, or 2048
value = 0.5
MEMORY = 1024, 2048, 3072, or 4096
value = 1
MEMORY = 2048, 3072, 4096, 5120, 6144, 7168, or 8192
value = 2
MEMORY = 4096, 5120, 6144, 7168, 8192, 9216, 10240, 11264, 12288, 13312, 14336, 15360, or 16384
value = 4
MEMORY = 8192, 9216, 10240, 11264, 12288, 13312, 14336, 15360, 16384, 17408, 18432, 19456, 20480, 21504, 22528, 23552, 24576, 25600, 26624, 27648, 28672, 29696, or 30720

$sel:type':ResourceRequirement', resourceRequirement_type - The type of resource to assign to a container. The supported resources include GPU, MEMORY, and VCPU.

resourceRequirement_value :: Lens' ResourceRequirement Text Source #

The quantity of the specified resource to reserve for the container. The values vary based on the type specified.

type="GPU"
The number of physical GPUs to reserve for the container. The number of GPUs reserved for all containers in a job shouldn't exceed the number of available GPUs on the compute resource that the job is launched on.

GPUs are not available for jobs that are running on Fargate resources.

type="MEMORY"
The memory hard limit (in MiB) present to the container. This parameter is supported for jobs that are running on EC2 resources. If your container attempts to exceed the memory specified, the container is terminated. This parameter maps to Memory in the Create a container section of the Docker Remote API and the --memory option to docker run. You must specify at least 4 MiB of memory for a job. This is required but can be specified in several places for multi-node parallel (MNP) jobs. It must be specified for each node at least once. This parameter maps to Memory in the Create a container section of the Docker Remote API and the --memory option to docker run.

If you're trying to maximize your resource utilization by providing your jobs as much memory as possible for a particular instance type, see Memory Management in the Batch User Guide.

For jobs that are running on Fargate resources, then value is the hard limit (in MiB), and must match one of the supported values and the VCPU values must be one of the values supported for that memory value.

value = 512
VCPU = 0.25
value = 1024
VCPU = 0.25 or 0.5
value = 2048
VCPU = 0.25, 0.5, or 1
value = 3072
VCPU = 0.5, or 1
value = 4096
VCPU = 0.5, 1, or 2
value = 5120, 6144, or 7168
VCPU = 1 or 2
value = 8192
VCPU = 1, 2, or 4
value = 9216, 10240, 11264, 12288, 13312, 14336, 15360, or 16384
VCPU = 2 or 4
value = 17408, 18432, 19456, 20480, 21504, 22528, 23552, 24576, 25600, 26624, 27648, 28672, 29696, or 30720
VCPU = 4
type="VCPU"
The number of vCPUs reserved for the container. This parameter maps to CpuShares in the Create a container section of the Docker Remote API and the --cpu-shares option to docker run. Each vCPU is equivalent to 1,024 CPU shares. For EC2 resources, you must specify at least one vCPU. This is required but can be specified in several places; it must be specified for each node at least once.

For jobs that are running on Fargate resources, then value must match one of the supported values and the MEMORY values must be one of the values supported for that VCPU value. The supported values are 0.25, 0.5, 1, 2, and 4

value = 0.25
MEMORY = 512, 1024, or 2048
value = 0.5
MEMORY = 1024, 2048, 3072, or 4096
value = 1
MEMORY = 2048, 3072, 4096, 5120, 6144, 7168, or 8192
value = 2
MEMORY = 4096, 5120, 6144, 7168, 8192, 9216, 10240, 11264, 12288, 13312, 14336, 15360, or 16384
value = 4
MEMORY = 8192, 9216, 10240, 11264, 12288, 13312, 14336, 15360, 16384, 17408, 18432, 19456, 20480, 21504, 22528, 23552, 24576, 25600, 26624, 27648, 28672, 29696, or 30720

resourceRequirement_type :: Lens' ResourceRequirement ResourceType Source #

The type of resource to assign to a container. The supported resources include GPU, MEMORY, and VCPU.