Skip to content

/AWS1/CL_SGMRESOURCECONFIG

Describes the resources, including machine learning (ML) compute instances and ML storage volumes, to use for model training.

CONSTRUCTOR

IMPORTING

Required arguments:

iv_volumesizeingb TYPE /AWS1/SGMVOLUMESIZEINGB /AWS1/SGMVOLUMESIZEINGB

The size of the ML storage volume that you want to provision.

ML storage volumes store model artifacts and incremental states. Training algorithms might also use the ML storage volume for scratch space. If you want to store the training data in the ML storage volume, choose File as the TrainingInputMode in the algorithm specification.

When using an ML instance with NVMe SSD volumes, SageMaker doesn't provision Amazon EBS General Purpose SSD (gp2) storage. Available storage is fixed to the NVMe-type instance's storage capacity. SageMaker configures storage paths for training datasets, checkpoints, model artifacts, and outputs to use the entire capacity of the instance storage. For example, ML instance families with the NVMe-type instance storage include ml.p4d, ml.g4dn, and ml.g5.

When using an ML instance with the EBS-only storage option and without instance storage, you must define the size of EBS volume through VolumeSizeInGB in the ResourceConfig API. For example, ML instance families that use EBS volumes include ml.c5 and ml.p2.

To look up instance types and their instance storage types and volumes, see Amazon EC2 Instance Types.

To find the default local paths defined by the SageMaker training platform, see Amazon SageMaker Training Storage Folders for Training Datasets, Checkpoints, Model Artifacts, and Outputs.

Optional arguments:

iv_instancetype TYPE /AWS1/SGMTRAININGINSTANCETYPE /AWS1/SGMTRAININGINSTANCETYPE

The ML compute instance type.

iv_instancecount TYPE /AWS1/SGMTRAININGINSTANCECOUNT /AWS1/SGMTRAININGINSTANCECOUNT

The number of ML compute instances to use. For distributed training, provide a value greater than 1.

iv_volumekmskeyid TYPE /AWS1/SGMKMSKEYID /AWS1/SGMKMSKEYID

The Amazon Web Services KMS key that SageMaker uses to encrypt data on the storage volume attached to the ML compute instance(s) that run the training job.

Certain Nitro-based instances include local storage, dependent on the instance type. Local storage volumes are encrypted using a hardware module on the instance. You can't request a VolumeKmsKeyId when using an instance type with local storage.

For a list of instance types that support local instance storage, see Instance Store Volumes.

For more information about local instance storage encryption, see SSD Instance Store Volumes.

The VolumeKmsKeyId can be in any of the following formats:

  • // KMS Key ID

    "1234abcd-12ab-34cd-56ef-1234567890ab"

  • // Amazon Resource Name (ARN) of a KMS Key

    "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"

iv_keepaliveperiodinseconds TYPE /AWS1/SGMKEEPALIVEPERINSECONDS /AWS1/SGMKEEPALIVEPERINSECONDS

The duration of time in seconds to retain configured resources in a warm pool for subsequent training jobs.

it_instancegroups TYPE /AWS1/CL_SGMINSTANCEGROUP=>TT_INSTANCEGROUPS TT_INSTANCEGROUPS

The configuration of a heterogeneous cluster in JSON format.

iv_trainingplanarn TYPE /AWS1/SGMTRAININGPLANARN /AWS1/SGMTRAININGPLANARN

The Amazon Resource Name (ARN); of the training plan to use for this resource configuration.

io_instanceplacementconfig TYPE REF TO /AWS1/CL_SGMINSTPLCMTCONFIG /AWS1/CL_SGMINSTPLCMTCONFIG

Configuration for how training job instances are placed and allocated within UltraServers. Only applicable for UltraServer capacity.


Queryable Attributes

InstanceType

The ML compute instance type.

Accessible with the following methods

Method Description
GET_INSTANCETYPE() Getter for INSTANCETYPE, with configurable default
ASK_INSTANCETYPE() Getter for INSTANCETYPE w/ exceptions if field has no value
HAS_INSTANCETYPE() Determine if INSTANCETYPE has a value

InstanceCount

The number of ML compute instances to use. For distributed training, provide a value greater than 1.

Accessible with the following methods

Method Description
GET_INSTANCECOUNT() Getter for INSTANCECOUNT, with configurable default
ASK_INSTANCECOUNT() Getter for INSTANCECOUNT w/ exceptions if field has no value
HAS_INSTANCECOUNT() Determine if INSTANCECOUNT has a value

VolumeSizeInGB

The size of the ML storage volume that you want to provision.

ML storage volumes store model artifacts and incremental states. Training algorithms might also use the ML storage volume for scratch space. If you want to store the training data in the ML storage volume, choose File as the TrainingInputMode in the algorithm specification.

When using an ML instance with NVMe SSD volumes, SageMaker doesn't provision Amazon EBS General Purpose SSD (gp2) storage. Available storage is fixed to the NVMe-type instance's storage capacity. SageMaker configures storage paths for training datasets, checkpoints, model artifacts, and outputs to use the entire capacity of the instance storage. For example, ML instance families with the NVMe-type instance storage include ml.p4d, ml.g4dn, and ml.g5.

When using an ML instance with the EBS-only storage option and without instance storage, you must define the size of EBS volume through VolumeSizeInGB in the ResourceConfig API. For example, ML instance families that use EBS volumes include ml.c5 and ml.p2.

To look up instance types and their instance storage types and volumes, see Amazon EC2 Instance Types.

To find the default local paths defined by the SageMaker training platform, see Amazon SageMaker Training Storage Folders for Training Datasets, Checkpoints, Model Artifacts, and Outputs.

Accessible with the following methods

Method Description
GET_VOLUMESIZEINGB() Getter for VOLUMESIZEINGB, with configurable default
ASK_VOLUMESIZEINGB() Getter for VOLUMESIZEINGB w/ exceptions if field has no valu
HAS_VOLUMESIZEINGB() Determine if VOLUMESIZEINGB has a value

VolumeKmsKeyId

The Amazon Web Services KMS key that SageMaker uses to encrypt data on the storage volume attached to the ML compute instance(s) that run the training job.

Certain Nitro-based instances include local storage, dependent on the instance type. Local storage volumes are encrypted using a hardware module on the instance. You can't request a VolumeKmsKeyId when using an instance type with local storage.

For a list of instance types that support local instance storage, see Instance Store Volumes.

For more information about local instance storage encryption, see SSD Instance Store Volumes.

The VolumeKmsKeyId can be in any of the following formats:

  • // KMS Key ID

    "1234abcd-12ab-34cd-56ef-1234567890ab"

  • // Amazon Resource Name (ARN) of a KMS Key

    "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"

Accessible with the following methods

Method Description
GET_VOLUMEKMSKEYID() Getter for VOLUMEKMSKEYID, with configurable default
ASK_VOLUMEKMSKEYID() Getter for VOLUMEKMSKEYID w/ exceptions if field has no valu
HAS_VOLUMEKMSKEYID() Determine if VOLUMEKMSKEYID has a value

KeepAlivePeriodInSeconds

The duration of time in seconds to retain configured resources in a warm pool for subsequent training jobs.

Accessible with the following methods

Method Description
GET_KEEPALIVEPERIODINSECONDS() Getter for KEEPALIVEPERIODINSECONDS, with configurable defau
ASK_KEEPALIVEPERIODINSECONDS() Getter for KEEPALIVEPERIODINSECONDS w/ exceptions if field h
HAS_KEEPALIVEPERIODINSECONDS() Determine if KEEPALIVEPERIODINSECONDS has a value

InstanceGroups

The configuration of a heterogeneous cluster in JSON format.

Accessible with the following methods

Method Description
GET_INSTANCEGROUPS() Getter for INSTANCEGROUPS, with configurable default
ASK_INSTANCEGROUPS() Getter for INSTANCEGROUPS w/ exceptions if field has no valu
HAS_INSTANCEGROUPS() Determine if INSTANCEGROUPS has a value

TrainingPlanArn

The Amazon Resource Name (ARN); of the training plan to use for this resource configuration.

Accessible with the following methods

Method Description
GET_TRAININGPLANARN() Getter for TRAININGPLANARN, with configurable default
ASK_TRAININGPLANARN() Getter for TRAININGPLANARN w/ exceptions if field has no val
HAS_TRAININGPLANARN() Determine if TRAININGPLANARN has a value

InstancePlacementConfig

Configuration for how training job instances are placed and allocated within UltraServers. Only applicable for UltraServer capacity.

Accessible with the following methods

Method Description
GET_INSTANCEPLACEMENTCONFIG() Getter for INSTANCEPLACEMENTCONFIG