From ecbe66ffa1ecd3816a0ff0712bfe36d71934d15f Mon Sep 17 00:00:00 2001 From: Jonathan Makunga Date: Tue, 23 Jan 2024 15:08:08 -0800 Subject: [PATCH 01/14] Add logic to detect hardware GPU count and aggregate GPU memory size in MiB --- .../serve/utils/hardware_detector.py | 183 +++++++++++++++ .../serve/utils/test_hardware_detector.py | 209 ++++++++++++++++++ 2 files changed, 392 insertions(+) create mode 100644 src/sagemaker/serve/utils/hardware_detector.py create mode 100644 tests/unit/sagemaker/serve/utils/test_hardware_detector.py diff --git a/src/sagemaker/serve/utils/hardware_detector.py b/src/sagemaker/serve/utils/hardware_detector.py new file mode 100644 index 0000000000..37f215f9e5 --- /dev/null +++ b/src/sagemaker/serve/utils/hardware_detector.py @@ -0,0 +1,183 @@ +# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"). You +# may not use this file except in compliance with the License. A copy of +# the License is located at +# +# http://aws.amazon.com/apache2.0/ +# +# or in the "license" file accompanying this file. This file is +# distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF +# ANY KIND, either express or implied. See the License for the specific +# language governing permissions and limitations under the License. +"""Utilites for identifying and analyzing instance gpu hardware""" +from __future__ import absolute_import + +import logging + +from sagemaker import Session + +logger = logging.getLogger(__name__) + + +fallback_gpu_resource_mapping = { + "ml.p5.48xlarge": { + "Count": 8, + "TotalGpuMemoryInMiB": 655360 + }, + "ml.p4d.24xlarge": { + "Count": 8, + "TotalGpuMemoryInMiB": 327680 + }, + "ml.p4de.24xlarge": { + "Count": 8, + "TotalGpuMemoryInMiB": 610352 + }, + "ml.p3.2xlarge": { + "Count": 1, + "TotalGpuMemoryInMiB": 16384 + }, + "ml.p3.8xlarge": { + "Count": 4, + "TotalGpuMemoryInMiB": 65536 + }, + "ml.p3.16xlarge": { + "Count": 8, + "TotalGpuMemoryInMiB": 131072 + }, + "ml.p3dn.24xlarge": { + "Count": 8, + "TotalGpuMemoryInMiB": 262144 + }, + "ml.p2.xlarge": { + "Count": 1, + "TotalGpuMemoryInMiB": 12288 + }, + "ml.p2.8xlarge": { + "Count": 8, + "TotalGpuMemoryInMiB": 98304 + }, + "ml.p2.16xlarge": { + "Count": 16, + "TotalGpuMemoryInMiB": 196608 + }, + "ml.g4dn.xlarge": { + "Count": 1, + "TotalGpuMemoryInMiB": 16384 + }, + "ml.g4dn.2xlarge": { + "Count": 1, + "TotalGpuMemoryInMiB": 16384 + }, + "ml.g4dn.4xlarge": { + "Count": 1, + "TotalGpuMemoryInMiB": 16384 + }, + "ml.g4dn.8xlarge": { + "Count": 1, + "TotalGpuMemoryInMiB": 16384 + }, + "ml.g4dn.16xlarge": { + "Count": 1, + "TotalGpuMemoryInMiB": 16384 + }, + "ml.g4dn.12xlarge": { + "Count": 4, + "TotalGpuMemoryInMiB": 65536 + }, + "ml.g5n.xlarge": { + "Count": 1, + "TotalGpuMemoryInMiB": 22888 + }, + "ml.g5.2xlarge": { + "Count": 1, + "TotalGpuMemoryInMiB": 24576 + }, + "ml.g5.4xlarge": { + "Count": 1, + "TotalGpuMemoryInMiB": 24576 + }, + "ml.g5.8xlarge": { + "Count": 1, + "TotalGpuMemoryInMiB": 24576 + }, + "ml.g5.16xlarge": { + "Count": 1, + "TotalGpuMemoryInMiB": 24576 + }, + "ml.g5.12xlarge": { + "Count": 4, + "TotalGpuMemoryInMiB": 98304 + }, + "ml.g5.24xlarge": { + "Count": 4, + "TotalGpuMemoryInMiB": 98304 + }, + "ml.g5.48xlarge": { + "Count": 8, + "TotalGpuMemoryInMiB": 196608 + }, +} + + +instance = None + + +def _get_gpu_info(instance_type: str, session: Session) -> int: + """Get GPU info for the provided instance""" + global instance + ec2_client = session.boto_session.client("ec2") + + split_instance = instance_type.split(".") + split_instance.pop(0) + + ec2_instance = ".".join(split_instance) + + if instance is not None and instance.get("InstanceType") == ec2_instance: + instance_info = instance + else: + instance_info = ec2_client.describe_instance_types(InstanceTypes=[ec2_instance]).get("InstanceTypes")[0] + instance = instance_info + + gpus_info = instance_info.get("GpuInfo") + if gpus_info: + return gpus_info.get("Gpus")[0].get("Count") + raise ValueError("Provided instance_type is not GPU enabled.") + + +def _aggregate_gpu_memory_size(instance_type: str, session: Session) -> int: + """Get Aggregate GPU Memory Size in MiB for the provided instance""" + global instance + ec2_client = session.boto_session.client("ec2") + + split_instance = instance_type.split(".") + split_instance.pop(0) + + ec2_instance = ".".join(split_instance) + + if instance is not None and instance.get("InstanceType") == ec2_instance: + instance_info = instance + else: + instance_info = ec2_client.describe_instance_types(InstanceTypes=[ec2_instance]).get("InstanceTypes")[0] + instance = instance_info + + gpus_info = instance_info.get("GpuInfo") + if gpus_info: + return gpus_info.get("TotalGpuMemoryInMiB") + raise ValueError("Provided instance_type is not GPU enabled.") + + +def _get_gpu_info_fallback(instance_type: str) -> int: + """Get GPU info for the provided instance fallback""" + fallback_instance = fallback_gpu_resource_mapping.get(instance_type) + if fallback_instance is None or not fallback_instance.get("Count"): + raise ValueError("Provided instance_type is not GPU enabled.") + return fallback_instance.get("Count") + + +def _get_aggregate_gpu_memory_size_fallback(instance_type: str) -> int: + """Get Aggregate GPU Memory Size in MiB for the provided instance fallback""" + fallback_instance = fallback_gpu_resource_mapping.get(instance_type) + if fallback_instance is None or not fallback_instance.get("TotalGpuMemoryInMiB"): + raise ValueError("Provided instance_type is not GPU enabled.") + return fallback_instance.get("TotalGpuMemoryInMiB") diff --git a/tests/unit/sagemaker/serve/utils/test_hardware_detector.py b/tests/unit/sagemaker/serve/utils/test_hardware_detector.py new file mode 100644 index 0000000000..930393411a --- /dev/null +++ b/tests/unit/sagemaker/serve/utils/test_hardware_detector.py @@ -0,0 +1,209 @@ +# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"). You +# may not use this file except in compliance with the License. A copy of +# the License is located at +# +# http://aws.amazon.com/apache2.0/ +# +# or in the "license" file accompanying this file. This file is +# distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF +# ANY KIND, either express or implied. See the License for the specific +# language governing permissions and limitations under the License. +from mock.mock import patch +import pytest + +from sagemaker.serve.utils import hardware_detector + +REGION = "us-west-2" +VALID_INSTANCE_TYPE = "ml.p5.48xlarge" +INVALID_INSTANCE_TYPE = "fl.c5.57xxlarge" +DESCRIBE_INSTANCE_TYPE_RESULT = { + "InstanceTypes": [ + { + "InstanceType": "g5.48xlarge", + "CurrentGeneration": True, + "FreeTierEligible": False, + "SupportedUsageClasses": [ + "on-demand", + "spot" + ], + "SupportedRootDeviceTypes": [ + "ebs" + ], + "SupportedVirtualizationTypes": [ + "hvm" + ], + "BareMetal": False, + "Hypervisor": "nitro", + "ProcessorInfo": { + "SupportedArchitectures": [ + "x86_64" + ], + "SustainedClockSpeedInGhz": 3.3, + "Manufacturer": "AMD" + }, + "VCpuInfo": { + "DefaultVCpus": 192, + "DefaultCores": 96, + "DefaultThreadsPerCore": 2 + }, + "MemoryInfo": { + "SizeInMiB": 786432 + }, + "InstanceStorageSupported": True, + "InstanceStorageInfo": { + "TotalSizeInGB": 7600, + "Disks": [ + { + "SizeInGB": 3800, + "Count": 2, + "Type": "ssd" + } + ], + "NvmeSupport": "required", + "EncryptionSupport": "required" + }, + "EbsInfo": { + "EbsOptimizedSupport": "default", + "EncryptionSupport": "supported", + "EbsOptimizedInfo": { + "BaselineBandwidthInMbps": 19000, + "BaselineThroughputInMBps": 2375.0, + "BaselineIops": 80000, + "MaximumBandwidthInMbps": 19000, + "MaximumThroughputInMBps": 2375.0, + "MaximumIops": 80000 + }, + "NvmeSupport": "required" + }, + "NetworkInfo": { + "NetworkPerformance": "100 Gigabit", + "MaximumNetworkInterfaces": 7, + "MaximumNetworkCards": 1, + "DefaultNetworkCardIndex": 0, + "NetworkCards": [ + { + "NetworkCardIndex": 0, + "NetworkPerformance": "100 Gigabit", + "MaximumNetworkInterfaces": 7, + "BaselineBandwidthInGbps": 100.0, + "PeakBandwidthInGbps": 100.0 + } + ], + "Ipv4AddressesPerInterface": 50, + "Ipv6AddressesPerInterface": 50, + "Ipv6Supported": True, + "EnaSupport": "required", + "EfaSupported": True, + "EfaInfo": { + "MaximumEfaInterfaces": 1 + }, + "EncryptionInTransitSupported": True, + "EnaSrdSupported": True + }, + "GpuInfo": { + "Gpus": [ + { + "Name": "A10G", + "Manufacturer": "NVIDIA", + "Count": 8, + "MemoryInfo": { + "SizeInMiB": 24576 + } + } + ], + "TotalGpuMemoryInMiB": 196608 + }, + "PlacementGroupInfo": { + "SupportedStrategies": [ + "cluster", + "partition", + "spread" + ] + }, + "HibernationSupported": False, + "BurstablePerformanceSupported": False, + "DedicatedHostsSupported": True, + "AutoRecoverySupported": False, + "SupportedBootModes": [ + "legacy-bios", + "uefi" + ], + "NitroEnclavesSupport": "supported", + "NitroTpmSupport": "supported", + "NitroTpmInfo": { + "SupportedVersions": [ + "2.0" + ] + } + } + ] +} + + +@patch("sagemaker.session.Session") +def test_get_gpu_info_success(session): + session.boto_session.client("ec2").describe_instance_types.return_value = DESCRIBE_INSTANCE_TYPE_RESULT + + gpu_info = hardware_detector._get_gpu_info(VALID_INSTANCE_TYPE, session) + + assert gpu_info == 8 + + +@patch("sagemaker.session.Session") +def test_get_gpu_info_throws(session): + session.boto_session.client("ec2").describe_instance_types.return_value = { + "InstanceTypes": [ + {} + ] + } + + with pytest.raises(ValueError): + hardware_detector._get_gpu_info(INVALID_INSTANCE_TYPE, session) + + +@patch("sagemaker.session.Session") +def test_aggregate_gpu_memory_size_success(session): + session.boto_session.client("ec2").describe_instance_types.return_value = DESCRIBE_INSTANCE_TYPE_RESULT + + aggregate_memory_size_in_mib = hardware_detector._aggregate_gpu_memory_size( + VALID_INSTANCE_TYPE, + session + ) + + assert aggregate_memory_size_in_mib == 196608 + + +@patch("sagemaker.session.Session") +def test_aggregate_gpu_memory_size_throws(session): + session.boto_session.client("ec2").describe_instance_types.return_value = { + "InstanceTypes": [ + {} + ] + } + + with pytest.raises(ValueError): + hardware_detector._aggregate_gpu_memory_size(INVALID_INSTANCE_TYPE, session) + + +def test_get_gpu_info_fallback_success(): + gpu_info = hardware_detector._get_gpu_info_fallback(VALID_INSTANCE_TYPE) + + assert gpu_info == 8 + + +def test_get_gpu_info_fallback_throws(): + with pytest.raises(ValueError): + hardware_detector._get_gpu_info_fallback(INVALID_INSTANCE_TYPE) + + +def test_get_gpu_aggregate_memory_size_in_mib_fallback_success(): + aggregate_memory_size_in_mib = hardware_detector._get_aggregate_gpu_memory_size_fallback(VALID_INSTANCE_TYPE) + + assert aggregate_memory_size_in_mib == 655360 + + +def test_get_gpu_aggregate_memory_size_in_mib_fallback_throws(): + with pytest.raises(ValueError): + hardware_detector._get_aggregate_gpu_memory_size_fallback(INVALID_INSTANCE_TYPE) From 27a620a7de19b2004953bf3ee311df06209f6913 Mon Sep 17 00:00:00 2001 From: Jonathan Makunga Date: Tue, 23 Jan 2024 15:44:36 -0800 Subject: [PATCH 02/14] Fix all formatting --- .../serve/utils/hardware_detector.py | 141 ++++-------------- .../serve/utils/test_hardware_detector.py | 101 ++++--------- 2 files changed, 63 insertions(+), 179 deletions(-) diff --git a/src/sagemaker/serve/utils/hardware_detector.py b/src/sagemaker/serve/utils/hardware_detector.py index 37f215f9e5..86b6289691 100644 --- a/src/sagemaker/serve/utils/hardware_detector.py +++ b/src/sagemaker/serve/utils/hardware_detector.py @@ -21,111 +21,35 @@ fallback_gpu_resource_mapping = { - "ml.p5.48xlarge": { - "Count": 8, - "TotalGpuMemoryInMiB": 655360 - }, - "ml.p4d.24xlarge": { - "Count": 8, - "TotalGpuMemoryInMiB": 327680 - }, - "ml.p4de.24xlarge": { - "Count": 8, - "TotalGpuMemoryInMiB": 610352 - }, - "ml.p3.2xlarge": { - "Count": 1, - "TotalGpuMemoryInMiB": 16384 - }, - "ml.p3.8xlarge": { - "Count": 4, - "TotalGpuMemoryInMiB": 65536 - }, - "ml.p3.16xlarge": { - "Count": 8, - "TotalGpuMemoryInMiB": 131072 - }, - "ml.p3dn.24xlarge": { - "Count": 8, - "TotalGpuMemoryInMiB": 262144 - }, - "ml.p2.xlarge": { - "Count": 1, - "TotalGpuMemoryInMiB": 12288 - }, - "ml.p2.8xlarge": { - "Count": 8, - "TotalGpuMemoryInMiB": 98304 - }, - "ml.p2.16xlarge": { - "Count": 16, - "TotalGpuMemoryInMiB": 196608 - }, - "ml.g4dn.xlarge": { - "Count": 1, - "TotalGpuMemoryInMiB": 16384 - }, - "ml.g4dn.2xlarge": { - "Count": 1, - "TotalGpuMemoryInMiB": 16384 - }, - "ml.g4dn.4xlarge": { - "Count": 1, - "TotalGpuMemoryInMiB": 16384 - }, - "ml.g4dn.8xlarge": { - "Count": 1, - "TotalGpuMemoryInMiB": 16384 - }, - "ml.g4dn.16xlarge": { - "Count": 1, - "TotalGpuMemoryInMiB": 16384 - }, - "ml.g4dn.12xlarge": { - "Count": 4, - "TotalGpuMemoryInMiB": 65536 - }, - "ml.g5n.xlarge": { - "Count": 1, - "TotalGpuMemoryInMiB": 22888 - }, - "ml.g5.2xlarge": { - "Count": 1, - "TotalGpuMemoryInMiB": 24576 - }, - "ml.g5.4xlarge": { - "Count": 1, - "TotalGpuMemoryInMiB": 24576 - }, - "ml.g5.8xlarge": { - "Count": 1, - "TotalGpuMemoryInMiB": 24576 - }, - "ml.g5.16xlarge": { - "Count": 1, - "TotalGpuMemoryInMiB": 24576 - }, - "ml.g5.12xlarge": { - "Count": 4, - "TotalGpuMemoryInMiB": 98304 - }, - "ml.g5.24xlarge": { - "Count": 4, - "TotalGpuMemoryInMiB": 98304 - }, - "ml.g5.48xlarge": { - "Count": 8, - "TotalGpuMemoryInMiB": 196608 - }, + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 610352}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 22888}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608}, } -instance = None - - def _get_gpu_info(instance_type: str, session: Session) -> int: """Get GPU info for the provided instance""" - global instance ec2_client = session.boto_session.client("ec2") split_instance = instance_type.split(".") @@ -133,11 +57,9 @@ def _get_gpu_info(instance_type: str, session: Session) -> int: ec2_instance = ".".join(split_instance) - if instance is not None and instance.get("InstanceType") == ec2_instance: - instance_info = instance - else: - instance_info = ec2_client.describe_instance_types(InstanceTypes=[ec2_instance]).get("InstanceTypes")[0] - instance = instance_info + instance_info = ec2_client.describe_instance_types(InstanceTypes=[ec2_instance]).get( + "InstanceTypes" + )[0] gpus_info = instance_info.get("GpuInfo") if gpus_info: @@ -147,7 +69,6 @@ def _get_gpu_info(instance_type: str, session: Session) -> int: def _aggregate_gpu_memory_size(instance_type: str, session: Session) -> int: """Get Aggregate GPU Memory Size in MiB for the provided instance""" - global instance ec2_client = session.boto_session.client("ec2") split_instance = instance_type.split(".") @@ -155,11 +76,9 @@ def _aggregate_gpu_memory_size(instance_type: str, session: Session) -> int: ec2_instance = ".".join(split_instance) - if instance is not None and instance.get("InstanceType") == ec2_instance: - instance_info = instance - else: - instance_info = ec2_client.describe_instance_types(InstanceTypes=[ec2_instance]).get("InstanceTypes")[0] - instance = instance_info + instance_info = ec2_client.describe_instance_types(InstanceTypes=[ec2_instance]).get( + "InstanceTypes" + )[0] gpus_info = instance_info.get("GpuInfo") if gpus_info: diff --git a/tests/unit/sagemaker/serve/utils/test_hardware_detector.py b/tests/unit/sagemaker/serve/utils/test_hardware_detector.py index 930393411a..7ed7aecfd1 100644 --- a/tests/unit/sagemaker/serve/utils/test_hardware_detector.py +++ b/tests/unit/sagemaker/serve/utils/test_hardware_detector.py @@ -10,6 +10,8 @@ # distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF # ANY KIND, either express or implied. See the License for the specific # language governing permissions and limitations under the License. +from __future__ import absolute_import + from mock.mock import patch import pytest @@ -24,45 +26,24 @@ "InstanceType": "g5.48xlarge", "CurrentGeneration": True, "FreeTierEligible": False, - "SupportedUsageClasses": [ - "on-demand", - "spot" - ], - "SupportedRootDeviceTypes": [ - "ebs" - ], - "SupportedVirtualizationTypes": [ - "hvm" - ], + "SupportedUsageClasses": ["on-demand", "spot"], + "SupportedRootDeviceTypes": ["ebs"], + "SupportedVirtualizationTypes": ["hvm"], "BareMetal": False, "Hypervisor": "nitro", "ProcessorInfo": { - "SupportedArchitectures": [ - "x86_64" - ], + "SupportedArchitectures": ["x86_64"], "SustainedClockSpeedInGhz": 3.3, - "Manufacturer": "AMD" - }, - "VCpuInfo": { - "DefaultVCpus": 192, - "DefaultCores": 96, - "DefaultThreadsPerCore": 2 - }, - "MemoryInfo": { - "SizeInMiB": 786432 + "Manufacturer": "AMD", }, + "VCpuInfo": {"DefaultVCpus": 192, "DefaultCores": 96, "DefaultThreadsPerCore": 2}, + "MemoryInfo": {"SizeInMiB": 786432}, "InstanceStorageSupported": True, "InstanceStorageInfo": { "TotalSizeInGB": 7600, - "Disks": [ - { - "SizeInGB": 3800, - "Count": 2, - "Type": "ssd" - } - ], + "Disks": [{"SizeInGB": 3800, "Count": 2, "Type": "ssd"}], "NvmeSupport": "required", - "EncryptionSupport": "required" + "EncryptionSupport": "required", }, "EbsInfo": { "EbsOptimizedSupport": "default", @@ -73,9 +54,9 @@ "BaselineIops": 80000, "MaximumBandwidthInMbps": 19000, "MaximumThroughputInMBps": 2375.0, - "MaximumIops": 80000 + "MaximumIops": 80000, }, - "NvmeSupport": "required" + "NvmeSupport": "required", }, "NetworkInfo": { "NetworkPerformance": "100 Gigabit", @@ -88,7 +69,7 @@ "NetworkPerformance": "100 Gigabit", "MaximumNetworkInterfaces": 7, "BaselineBandwidthInGbps": 100.0, - "PeakBandwidthInGbps": 100.0 + "PeakBandwidthInGbps": 100.0, } ], "Ipv4AddressesPerInterface": 50, @@ -96,11 +77,9 @@ "Ipv6Supported": True, "EnaSupport": "required", "EfaSupported": True, - "EfaInfo": { - "MaximumEfaInterfaces": 1 - }, + "EfaInfo": {"MaximumEfaInterfaces": 1}, "EncryptionInTransitSupported": True, - "EnaSrdSupported": True + "EnaSrdSupported": True, }, "GpuInfo": { "Gpus": [ @@ -108,35 +87,20 @@ "Name": "A10G", "Manufacturer": "NVIDIA", "Count": 8, - "MemoryInfo": { - "SizeInMiB": 24576 - } + "MemoryInfo": {"SizeInMiB": 24576}, } ], - "TotalGpuMemoryInMiB": 196608 - }, - "PlacementGroupInfo": { - "SupportedStrategies": [ - "cluster", - "partition", - "spread" - ] + "TotalGpuMemoryInMiB": 196608, }, + "PlacementGroupInfo": {"SupportedStrategies": ["cluster", "partition", "spread"]}, "HibernationSupported": False, "BurstablePerformanceSupported": False, "DedicatedHostsSupported": True, "AutoRecoverySupported": False, - "SupportedBootModes": [ - "legacy-bios", - "uefi" - ], + "SupportedBootModes": ["legacy-bios", "uefi"], "NitroEnclavesSupport": "supported", "NitroTpmSupport": "supported", - "NitroTpmInfo": { - "SupportedVersions": [ - "2.0" - ] - } + "NitroTpmInfo": {"SupportedVersions": ["2.0"]}, } ] } @@ -144,7 +108,9 @@ @patch("sagemaker.session.Session") def test_get_gpu_info_success(session): - session.boto_session.client("ec2").describe_instance_types.return_value = DESCRIBE_INSTANCE_TYPE_RESULT + session.boto_session.client( + "ec2" + ).describe_instance_types.return_value = DESCRIBE_INSTANCE_TYPE_RESULT gpu_info = hardware_detector._get_gpu_info(VALID_INSTANCE_TYPE, session) @@ -154,9 +120,7 @@ def test_get_gpu_info_success(session): @patch("sagemaker.session.Session") def test_get_gpu_info_throws(session): session.boto_session.client("ec2").describe_instance_types.return_value = { - "InstanceTypes": [ - {} - ] + "InstanceTypes": [{}] } with pytest.raises(ValueError): @@ -165,11 +129,12 @@ def test_get_gpu_info_throws(session): @patch("sagemaker.session.Session") def test_aggregate_gpu_memory_size_success(session): - session.boto_session.client("ec2").describe_instance_types.return_value = DESCRIBE_INSTANCE_TYPE_RESULT + session.boto_session.client( + "ec2" + ).describe_instance_types.return_value = DESCRIBE_INSTANCE_TYPE_RESULT aggregate_memory_size_in_mib = hardware_detector._aggregate_gpu_memory_size( - VALID_INSTANCE_TYPE, - session + VALID_INSTANCE_TYPE, session ) assert aggregate_memory_size_in_mib == 196608 @@ -178,9 +143,7 @@ def test_aggregate_gpu_memory_size_success(session): @patch("sagemaker.session.Session") def test_aggregate_gpu_memory_size_throws(session): session.boto_session.client("ec2").describe_instance_types.return_value = { - "InstanceTypes": [ - {} - ] + "InstanceTypes": [{}] } with pytest.raises(ValueError): @@ -199,7 +162,9 @@ def test_get_gpu_info_fallback_throws(): def test_get_gpu_aggregate_memory_size_in_mib_fallback_success(): - aggregate_memory_size_in_mib = hardware_detector._get_aggregate_gpu_memory_size_fallback(VALID_INSTANCE_TYPE) + aggregate_memory_size_in_mib = hardware_detector._get_aggregate_gpu_memory_size_fallback( + VALID_INSTANCE_TYPE + ) assert aggregate_memory_size_in_mib == 655360 From cf49ca8bb25c7f963f0b1f451b1716de79b5073b Mon Sep 17 00:00:00 2001 From: Jonathan Makunga Date: Wed, 24 Jan 2024 10:06:41 -0800 Subject: [PATCH 03/14] Addressed PR review comments --- .../serve/utils/hardware_detector.py | 83 ++++----- .../serve/utils/test_hardware_detector.py | 167 +++++------------- 2 files changed, 89 insertions(+), 161 deletions(-) diff --git a/src/sagemaker/serve/utils/hardware_detector.py b/src/sagemaker/serve/utils/hardware_detector.py index 86b6289691..c19514daef 100644 --- a/src/sagemaker/serve/utils/hardware_detector.py +++ b/src/sagemaker/serve/utils/hardware_detector.py @@ -15,6 +15,8 @@ import logging +from botocore.exceptions import ClientError + from sagemaker import Session logger = logging.getLogger(__name__) @@ -23,7 +25,6 @@ fallback_gpu_resource_mapping = { "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, - "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 610352}, "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, @@ -37,7 +38,6 @@ "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 22888}, "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, @@ -48,55 +48,56 @@ } -def _get_gpu_info(instance_type: str, session: Session) -> int: +def _get_gpu_info(instance_type: str, session: Session) -> tuple: """Get GPU info for the provided instance""" ec2_client = session.boto_session.client("ec2") + ec2_instance = _format_instance_type(instance_type) + + try: + instance_info = ec2_client.describe_instance_types(InstanceTypes=[ec2_instance]).get( + "InstanceTypes" + )[0] + except ClientError as e: + logger.error("Failed to describe instance types %s", e) + raise ValueError("Provided instance_type is not GPU enabled.") - split_instance = instance_type.split(".") - split_instance.pop(0) - - ec2_instance = ".".join(split_instance) + if instance_info is not None: + gpus_info = instance_info.get("GpuInfo") + if gpus_info is not None: + instance_gpu_info = ( + gpus_info.get("Gpus")[0].get("Count"), + gpus_info.get("TotalGpuMemoryInMiB"), + ) - instance_info = ec2_client.describe_instance_types(InstanceTypes=[ec2_instance]).get( - "InstanceTypes" - )[0] + logger.info("GPU Info [%s]: %s", ec2_instance, instance_gpu_info) + return instance_gpu_info - gpus_info = instance_info.get("GpuInfo") - if gpus_info: - return gpus_info.get("Gpus")[0].get("Count") + logger.error("Provided instance_type is not GPU enabled: [%s]", ec2_instance) raise ValueError("Provided instance_type is not GPU enabled.") -def _aggregate_gpu_memory_size(instance_type: str, session: Session) -> int: - """Get Aggregate GPU Memory Size in MiB for the provided instance""" - ec2_client = session.boto_session.client("ec2") - - split_instance = instance_type.split(".") - split_instance.pop(0) - - ec2_instance = ".".join(split_instance) +def _get_gpu_info_fallback(instance_type: str) -> tuple: + """Get GPU info for the provided instance fallback""" + fallback_instance_gpu_info = fallback_gpu_resource_mapping.get(instance_type) + ec2_instance = _format_instance_type(instance_type) + if fallback_instance_gpu_info is None: + logger.error("Provided instance_type is not GPU enabled: [%s]", ec2_instance) + raise ValueError("Provided instance_type is not GPU enabled.") - instance_info = ec2_client.describe_instance_types(InstanceTypes=[ec2_instance]).get( - "InstanceTypes" - )[0] + fallback_instance_gpu_info = ( + fallback_instance_gpu_info.get("Count"), + fallback_instance_gpu_info.get("TotalGpuMemoryInMiB"), + ) + logger.info("GPU Info [%s]: %s", ec2_instance, fallback_instance_gpu_info) + return fallback_instance_gpu_info - gpus_info = instance_info.get("GpuInfo") - if gpus_info: - return gpus_info.get("TotalGpuMemoryInMiB") - raise ValueError("Provided instance_type is not GPU enabled.") +def _format_instance_type(instance_type: str) -> str: + """Formats provided instance type name""" + split_instance = instance_type.split(".") -def _get_gpu_info_fallback(instance_type: str) -> int: - """Get GPU info for the provided instance fallback""" - fallback_instance = fallback_gpu_resource_mapping.get(instance_type) - if fallback_instance is None or not fallback_instance.get("Count"): - raise ValueError("Provided instance_type is not GPU enabled.") - return fallback_instance.get("Count") - + if len(split_instance) > 2: + split_instance.pop(0) -def _get_aggregate_gpu_memory_size_fallback(instance_type: str) -> int: - """Get Aggregate GPU Memory Size in MiB for the provided instance fallback""" - fallback_instance = fallback_gpu_resource_mapping.get(instance_type) - if fallback_instance is None or not fallback_instance.get("TotalGpuMemoryInMiB"): - raise ValueError("Provided instance_type is not GPU enabled.") - return fallback_instance.get("TotalGpuMemoryInMiB") + ec2_instance = ".".join(split_instance) + return ec2_instance diff --git a/tests/unit/sagemaker/serve/utils/test_hardware_detector.py b/tests/unit/sagemaker/serve/utils/test_hardware_detector.py index 7ed7aecfd1..221108da31 100644 --- a/tests/unit/sagemaker/serve/utils/test_hardware_detector.py +++ b/tests/unit/sagemaker/serve/utils/test_hardware_detector.py @@ -12,148 +12,76 @@ # language governing permissions and limitations under the License. from __future__ import absolute_import +from botocore.exceptions import ClientError from mock.mock import patch import pytest from sagemaker.serve.utils import hardware_detector REGION = "us-west-2" -VALID_INSTANCE_TYPE = "ml.p5.48xlarge" +VALID_INSTANCE_TYPE = "ml.g5.48xlarge" INVALID_INSTANCE_TYPE = "fl.c5.57xxlarge" -DESCRIBE_INSTANCE_TYPE_RESULT = { - "InstanceTypes": [ - { - "InstanceType": "g5.48xlarge", - "CurrentGeneration": True, - "FreeTierEligible": False, - "SupportedUsageClasses": ["on-demand", "spot"], - "SupportedRootDeviceTypes": ["ebs"], - "SupportedVirtualizationTypes": ["hvm"], - "BareMetal": False, - "Hypervisor": "nitro", - "ProcessorInfo": { - "SupportedArchitectures": ["x86_64"], - "SustainedClockSpeedInGhz": 3.3, - "Manufacturer": "AMD", - }, - "VCpuInfo": {"DefaultVCpus": 192, "DefaultCores": 96, "DefaultThreadsPerCore": 2}, - "MemoryInfo": {"SizeInMiB": 786432}, - "InstanceStorageSupported": True, - "InstanceStorageInfo": { - "TotalSizeInGB": 7600, - "Disks": [{"SizeInGB": 3800, "Count": 2, "Type": "ssd"}], - "NvmeSupport": "required", - "EncryptionSupport": "required", - }, - "EbsInfo": { - "EbsOptimizedSupport": "default", - "EncryptionSupport": "supported", - "EbsOptimizedInfo": { - "BaselineBandwidthInMbps": 19000, - "BaselineThroughputInMBps": 2375.0, - "BaselineIops": 80000, - "MaximumBandwidthInMbps": 19000, - "MaximumThroughputInMBps": 2375.0, - "MaximumIops": 80000, - }, - "NvmeSupport": "required", - }, - "NetworkInfo": { - "NetworkPerformance": "100 Gigabit", - "MaximumNetworkInterfaces": 7, - "MaximumNetworkCards": 1, - "DefaultNetworkCardIndex": 0, - "NetworkCards": [ - { - "NetworkCardIndex": 0, - "NetworkPerformance": "100 Gigabit", - "MaximumNetworkInterfaces": 7, - "BaselineBandwidthInGbps": 100.0, - "PeakBandwidthInGbps": 100.0, - } - ], - "Ipv4AddressesPerInterface": 50, - "Ipv6AddressesPerInterface": 50, - "Ipv6Supported": True, - "EnaSupport": "required", - "EfaSupported": True, - "EfaInfo": {"MaximumEfaInterfaces": 1}, - "EncryptionInTransitSupported": True, - "EnaSrdSupported": True, - }, - "GpuInfo": { - "Gpus": [ - { - "Name": "A10G", - "Manufacturer": "NVIDIA", - "Count": 8, - "MemoryInfo": {"SizeInMiB": 24576}, - } - ], - "TotalGpuMemoryInMiB": 196608, - }, - "PlacementGroupInfo": {"SupportedStrategies": ["cluster", "partition", "spread"]}, - "HibernationSupported": False, - "BurstablePerformanceSupported": False, - "DedicatedHostsSupported": True, - "AutoRecoverySupported": False, - "SupportedBootModes": ["legacy-bios", "uefi"], - "NitroEnclavesSupport": "supported", - "NitroTpmSupport": "supported", - "NitroTpmInfo": {"SupportedVersions": ["2.0"]}, - } - ] -} +EXPECTED_INSTANCE_GPU_INFO = (8, 196608) @patch("sagemaker.session.Session") def test_get_gpu_info_success(session): - session.boto_session.client( - "ec2" - ).describe_instance_types.return_value = DESCRIBE_INSTANCE_TYPE_RESULT + client = session.boto_session.client("ec2") + client.describe_instance_types.return_value = { + "InstanceTypes": [ + { + "GpuInfo": { + "Gpus": [ + { + "Name": "A10G", + "Manufacturer": "NVIDIA", + "Count": 8, + "MemoryInfo": {"SizeInMiB": 24576}, + } + ], + "TotalGpuMemoryInMiB": 196608, + }, + } + ] + } - gpu_info = hardware_detector._get_gpu_info(VALID_INSTANCE_TYPE, session) + instance_gpu_info = hardware_detector._get_gpu_info(VALID_INSTANCE_TYPE, session) - assert gpu_info == 8 + client.describe_instance_types.assert_called_once_with(InstanceTypes=["g5.48xlarge"]) + assert instance_gpu_info == EXPECTED_INSTANCE_GPU_INFO @patch("sagemaker.session.Session") def test_get_gpu_info_throws(session): - session.boto_session.client("ec2").describe_instance_types.return_value = { - "InstanceTypes": [{}] - } + client = session.boto_session.client("ec2") + client.describe_instance_types.return_value = {"InstanceTypes": [{}]} with pytest.raises(ValueError): hardware_detector._get_gpu_info(INVALID_INSTANCE_TYPE, session) @patch("sagemaker.session.Session") -def test_aggregate_gpu_memory_size_success(session): - session.boto_session.client( - "ec2" - ).describe_instance_types.return_value = DESCRIBE_INSTANCE_TYPE_RESULT - - aggregate_memory_size_in_mib = hardware_detector._aggregate_gpu_memory_size( - VALID_INSTANCE_TYPE, session +def test_get_gpu_info_describe_instance_types_throws(session): + client = session.boto_session.client("ec2") + client.describe_instance_types.side_effect = ClientError( + { + "Error": { + "Code": "InvalidInstanceType", + "Message": f"An error occurred (InvalidInstanceType) when calling the DescribeInstanceTypes " + f"operation: The following supplied instance types do not exist: [#{INVALID_INSTANCE_TYPE}]", + } + }, + "DescribeInstanceTypes", ) - assert aggregate_memory_size_in_mib == 196608 - - -@patch("sagemaker.session.Session") -def test_aggregate_gpu_memory_size_throws(session): - session.boto_session.client("ec2").describe_instance_types.return_value = { - "InstanceTypes": [{}] - } - with pytest.raises(ValueError): - hardware_detector._aggregate_gpu_memory_size(INVALID_INSTANCE_TYPE, session) + hardware_detector._get_gpu_info(INVALID_INSTANCE_TYPE, session) def test_get_gpu_info_fallback_success(): - gpu_info = hardware_detector._get_gpu_info_fallback(VALID_INSTANCE_TYPE) + fallback_instance_gpu_info = hardware_detector._get_gpu_info_fallback(VALID_INSTANCE_TYPE) - assert gpu_info == 8 + assert fallback_instance_gpu_info == EXPECTED_INSTANCE_GPU_INFO def test_get_gpu_info_fallback_throws(): @@ -161,14 +89,13 @@ def test_get_gpu_info_fallback_throws(): hardware_detector._get_gpu_info_fallback(INVALID_INSTANCE_TYPE) -def test_get_gpu_aggregate_memory_size_in_mib_fallback_success(): - aggregate_memory_size_in_mib = hardware_detector._get_aggregate_gpu_memory_size_fallback( - VALID_INSTANCE_TYPE - ) +def test_format_instance_type_success(): + formatted_instance_type = hardware_detector._format_instance_type(VALID_INSTANCE_TYPE) - assert aggregate_memory_size_in_mib == 655360 + assert formatted_instance_type == "g5.48xlarge" -def test_get_gpu_aggregate_memory_size_in_mib_fallback_throws(): - with pytest.raises(ValueError): - hardware_detector._get_aggregate_gpu_memory_size_fallback(INVALID_INSTANCE_TYPE) +def test_format_instance_type_without_ml_success(): + formatted_instance_type = hardware_detector._format_instance_type("g5.48xlarge") + + assert formatted_instance_type == "g5.48xlarge" From 477d6c2ccd13cc9720731d8116e3de3383090d24 Mon Sep 17 00:00:00 2001 From: Jonathan Makunga Date: Wed, 24 Jan 2024 13:35:55 -0800 Subject: [PATCH 04/14] Addressed PR Review messages --- .../serve/utils/hardware_detector.py | 21 ++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/src/sagemaker/serve/utils/hardware_detector.py b/src/sagemaker/serve/utils/hardware_detector.py index c19514daef..f4cb29da51 100644 --- a/src/sagemaker/serve/utils/hardware_detector.py +++ b/src/sagemaker/serve/utils/hardware_detector.py @@ -21,10 +21,10 @@ logger = logging.getLogger(__name__) - -fallback_gpu_resource_mapping = { +FALLBACK_GPU_RESOURCE_MAPPING = { "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 610352}, "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, @@ -38,6 +38,7 @@ "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 22888}, "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, @@ -48,8 +49,11 @@ } -def _get_gpu_info(instance_type: str, session: Session) -> tuple: - """Get GPU info for the provided instance""" +def _get_gpu_info(instance_type: str, session: Session) -> tuple[int, int]: + """Get GPU info for the provided instance + + @return: Tuple containing: [0]number of GPUs available and [1]aggregate memory size in MiB + """ ec2_client = session.boto_session.client("ec2") ec2_instance = _format_instance_type(instance_type) @@ -76,9 +80,12 @@ def _get_gpu_info(instance_type: str, session: Session) -> tuple: raise ValueError("Provided instance_type is not GPU enabled.") -def _get_gpu_info_fallback(instance_type: str) -> tuple: - """Get GPU info for the provided instance fallback""" - fallback_instance_gpu_info = fallback_gpu_resource_mapping.get(instance_type) +def _get_gpu_info_fallback(instance_type: str) -> tuple[int, int]: + """Get GPU info for the provided instance fallback + + @return: Tuple containing: [0]number of GPUs available and [1]aggregate memory size in MiB + """ + fallback_instance_gpu_info = FALLBACK_GPU_RESOURCE_MAPPING.get(instance_type) ec2_instance = _format_instance_type(instance_type) if fallback_instance_gpu_info is None: logger.error("Provided instance_type is not GPU enabled: [%s]", ec2_instance) From 27abb4c25ffcc11140ed4d5b0f0b3f5511960079 Mon Sep 17 00:00:00 2001 From: Jonathan Makunga Date: Wed, 24 Jan 2024 14:14:28 -0800 Subject: [PATCH 05/14] Addressed PR Review Messages --- src/sagemaker/serve/utils/hardware_detector.py | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/src/sagemaker/serve/utils/hardware_detector.py b/src/sagemaker/serve/utils/hardware_detector.py index f4cb29da51..187b58c093 100644 --- a/src/sagemaker/serve/utils/hardware_detector.py +++ b/src/sagemaker/serve/utils/hardware_detector.py @@ -61,9 +61,8 @@ def _get_gpu_info(instance_type: str, session: Session) -> tuple[int, int]: instance_info = ec2_client.describe_instance_types(InstanceTypes=[ec2_instance]).get( "InstanceTypes" )[0] - except ClientError as e: - logger.error("Failed to describe instance types %s", e) - raise ValueError("Provided instance_type is not GPU enabled.") + except ClientError: + raise ValueError(f"Provided instance_type is not GPU enabled: [#{ec2_instance}]") if instance_info is not None: gpus_info = instance_info.get("GpuInfo") @@ -76,8 +75,7 @@ def _get_gpu_info(instance_type: str, session: Session) -> tuple[int, int]: logger.info("GPU Info [%s]: %s", ec2_instance, instance_gpu_info) return instance_gpu_info - logger.error("Provided instance_type is not GPU enabled: [%s]", ec2_instance) - raise ValueError("Provided instance_type is not GPU enabled.") + raise ValueError(f"Provided instance_type is not GPU enabled: [#{ec2_instance}]") def _get_gpu_info_fallback(instance_type: str) -> tuple[int, int]: @@ -88,8 +86,7 @@ def _get_gpu_info_fallback(instance_type: str) -> tuple[int, int]: fallback_instance_gpu_info = FALLBACK_GPU_RESOURCE_MAPPING.get(instance_type) ec2_instance = _format_instance_type(instance_type) if fallback_instance_gpu_info is None: - logger.error("Provided instance_type is not GPU enabled: [%s]", ec2_instance) - raise ValueError("Provided instance_type is not GPU enabled.") + raise ValueError(f"Provided instance_type is not GPU enabled: [#{ec2_instance}]") fallback_instance_gpu_info = ( fallback_instance_gpu_info.get("Count"), From 51c8649201230ba2ce0c42e21ec28da42b84c89e Mon Sep 17 00:00:00 2001 From: Jonathan Makunga Date: Wed, 24 Jan 2024 15:18:25 -0800 Subject: [PATCH 06/14] Addressed PR Review comments --- src/sagemaker/serve/utils/hardware_detector.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/sagemaker/serve/utils/hardware_detector.py b/src/sagemaker/serve/utils/hardware_detector.py index 187b58c093..1861b0ba77 100644 --- a/src/sagemaker/serve/utils/hardware_detector.py +++ b/src/sagemaker/serve/utils/hardware_detector.py @@ -24,7 +24,7 @@ FALLBACK_GPU_RESOURCE_MAPPING = { "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, - "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 610352}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 640000}, "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, @@ -38,7 +38,7 @@ "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 22888}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24000}, "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, From 9521f8794eec9f7f84cef8b7214710d67f343714 Mon Sep 17 00:00:00 2001 From: Jonathan Makunga Date: Wed, 24 Jan 2024 15:25:10 -0800 Subject: [PATCH 07/14] Addressed PR Review Comments --- src/sagemaker/serve/utils/hardware_detector.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/sagemaker/serve/utils/hardware_detector.py b/src/sagemaker/serve/utils/hardware_detector.py index 1861b0ba77..7286823ee6 100644 --- a/src/sagemaker/serve/utils/hardware_detector.py +++ b/src/sagemaker/serve/utils/hardware_detector.py @@ -24,7 +24,7 @@ FALLBACK_GPU_RESOURCE_MAPPING = { "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, - "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 640000}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, @@ -38,7 +38,7 @@ "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24000}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, From 7592faca8166ae1cfda1cde5ece03b830fad57f8 Mon Sep 17 00:00:00 2001 From: Jonathan Makunga Date: Thu, 25 Jan 2024 00:10:29 -0800 Subject: [PATCH 08/14] Add integration tests --- .../serve/utils/hardware_detector.py | 22 ++++++---- .../serve/utils/test_hardware_detector.py | 43 +++++++++++++++++++ .../serve/utils/test_hardware_detector.py | 2 +- 3 files changed, 57 insertions(+), 10 deletions(-) create mode 100644 tests/integ/sagemaker/serve/utils/test_hardware_detector.py diff --git a/src/sagemaker/serve/utils/hardware_detector.py b/src/sagemaker/serve/utils/hardware_detector.py index 7286823ee6..2c4925191f 100644 --- a/src/sagemaker/serve/utils/hardware_detector.py +++ b/src/sagemaker/serve/utils/hardware_detector.py @@ -67,15 +67,19 @@ def _get_gpu_info(instance_type: str, session: Session) -> tuple[int, int]: if instance_info is not None: gpus_info = instance_info.get("GpuInfo") if gpus_info is not None: - instance_gpu_info = ( - gpus_info.get("Gpus")[0].get("Count"), - gpus_info.get("TotalGpuMemoryInMiB"), - ) + gpus = gpus_info.get("Gpus") + if gpus is not None and len(gpus) > 0: + count = gpus[0].get("Count") + total_gpu_memory_in_mib = gpus_info.get("TotalGpuMemoryInMiB") + if count and total_gpu_memory_in_mib: + instance_gpu_info = ( + count, + total_gpu_memory_in_mib, + ) + logger.info("GPU Info [%s]: %s", ec2_instance, instance_gpu_info) + return instance_gpu_info - logger.info("GPU Info [%s]: %s", ec2_instance, instance_gpu_info) - return instance_gpu_info - - raise ValueError(f"Provided instance_type is not GPU enabled: [#{ec2_instance}]") + raise ValueError(f"Provided instance_type is not GPU enabled: [{ec2_instance}]") def _get_gpu_info_fallback(instance_type: str) -> tuple[int, int]: @@ -86,7 +90,7 @@ def _get_gpu_info_fallback(instance_type: str) -> tuple[int, int]: fallback_instance_gpu_info = FALLBACK_GPU_RESOURCE_MAPPING.get(instance_type) ec2_instance = _format_instance_type(instance_type) if fallback_instance_gpu_info is None: - raise ValueError(f"Provided instance_type is not GPU enabled: [#{ec2_instance}]") + raise ValueError(f"Provided instance_type is not GPU enabled: [{ec2_instance}]") fallback_instance_gpu_info = ( fallback_instance_gpu_info.get("Count"), diff --git a/tests/integ/sagemaker/serve/utils/test_hardware_detector.py b/tests/integ/sagemaker/serve/utils/test_hardware_detector.py new file mode 100644 index 0000000000..ae551b751c --- /dev/null +++ b/tests/integ/sagemaker/serve/utils/test_hardware_detector.py @@ -0,0 +1,43 @@ +# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"). You +# may not use this file except in compliance with the License. A copy of +# the License is located at +# +# http://aws.amazon.com/apache2.0/ +# +# or in the "license" file accompanying this file. This file is +# distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF +# ANY KIND, either express or implied. See the License for the specific +# language governing permissions and limitations under the License. +from __future__ import absolute_import + +import pytest + +from sagemaker.serve.utils import hardware_detector + +VALID_INSTANCE_TYPE = "ml.g5.48xlarge" +INVALID_INSTANCE_TYPE = "fl.c5.57xxlarge" +EXPECTED_INSTANCE_GPU_INFO = (8, 196608) + + +def test_get_gpu_info_success(sagemaker_session): + gpu_info = hardware_detector._get_gpu_info(VALID_INSTANCE_TYPE, sagemaker_session) + + assert gpu_info == EXPECTED_INSTANCE_GPU_INFO + + +def test_get_gpu_info_throws(sagemaker_session): + with pytest.raises(ValueError): + hardware_detector._get_gpu_info(INVALID_INSTANCE_TYPE, sagemaker_session) + + +def test_get_gpu_info_fallback_success(): + gpu_info = hardware_detector._get_gpu_info_fallback(VALID_INSTANCE_TYPE) + + assert gpu_info == EXPECTED_INSTANCE_GPU_INFO + + +def test_get_gpu_info_fallback_throws(): + with pytest.raises(ValueError): + hardware_detector._get_gpu_info_fallback(INVALID_INSTANCE_TYPE) diff --git a/tests/unit/sagemaker/serve/utils/test_hardware_detector.py b/tests/unit/sagemaker/serve/utils/test_hardware_detector.py index 221108da31..964998a3ff 100644 --- a/tests/unit/sagemaker/serve/utils/test_hardware_detector.py +++ b/tests/unit/sagemaker/serve/utils/test_hardware_detector.py @@ -68,7 +68,7 @@ def test_get_gpu_info_describe_instance_types_throws(session): "Error": { "Code": "InvalidInstanceType", "Message": f"An error occurred (InvalidInstanceType) when calling the DescribeInstanceTypes " - f"operation: The following supplied instance types do not exist: [#{INVALID_INSTANCE_TYPE}]", + f"operation: The following supplied instance types do not exist: [{INVALID_INSTANCE_TYPE}]", } }, "DescribeInstanceTypes", From b19c286df22840bea66f1df789d0c267f3a46170 Mon Sep 17 00:00:00 2001 From: Jonathan Makunga Date: Fri, 26 Jan 2024 10:48:49 -0800 Subject: [PATCH 09/14] Add config --- src/sagemaker/instance_types_gpu_info.py | 40 +++++++++++ .../\taf-south-1.json" | 28 ++++++++ .../ap-east-1.json | 28 ++++++++ .../ap-northeast-1.json | 28 ++++++++ .../ap-northeast-2.json | 28 ++++++++ .../ap-northeast-3.json | 28 ++++++++ .../ap-south-1.json | 28 ++++++++ .../ap-southeast-1.json | 28 ++++++++ .../ap-southeast-2.json | 28 ++++++++ .../ap-southeast-3.json | 28 ++++++++ .../ca-central-1.json | 28 ++++++++ .../cn-north-1.json | 28 ++++++++ .../cn-northwest-1.json | 28 ++++++++ .../eu-central-1.json | 28 ++++++++ .../eu-central-2.json | 28 ++++++++ .../eu-north-1.json | 28 ++++++++ .../eu-south-1.json | 28 ++++++++ .../eu-south-2.json | 28 ++++++++ .../eu-west-1.json | 28 ++++++++ .../eu-west-2.json | 28 ++++++++ .../eu-west-3.json | 28 ++++++++ .../il-central-1.json | 28 ++++++++ .../me-central-1.json | 28 ++++++++ .../me-south-1.json | 28 ++++++++ .../sa-east-1.json | 28 ++++++++ .../us-east-1.json | 28 ++++++++ .../us-east-2.json | 28 ++++++++ .../us-gov-east-1.json | 28 ++++++++ .../us-gov-west-1.json | 28 ++++++++ .../us-west-1.json | 28 ++++++++ .../us-west-2.json | 28 ++++++++ .../serve/utils/hardware_detector.py | 66 +++++++++---------- .../serve/utils/test_hardware_detector.py | 25 +++---- .../sagemaker/test_instance_types_gpu_info.py | 30 +++++++++ 34 files changed, 952 insertions(+), 49 deletions(-) create mode 100644 src/sagemaker/instance_types_gpu_info.py create mode 100644 "src/sagemaker/instance_types_gpu_info_config/\taf-south-1.json" create mode 100644 src/sagemaker/instance_types_gpu_info_config/ap-east-1.json create mode 100644 src/sagemaker/instance_types_gpu_info_config/ap-northeast-1.json create mode 100644 src/sagemaker/instance_types_gpu_info_config/ap-northeast-2.json create mode 100644 src/sagemaker/instance_types_gpu_info_config/ap-northeast-3.json create mode 100644 src/sagemaker/instance_types_gpu_info_config/ap-south-1.json create mode 100644 src/sagemaker/instance_types_gpu_info_config/ap-southeast-1.json create mode 100644 src/sagemaker/instance_types_gpu_info_config/ap-southeast-2.json create mode 100644 src/sagemaker/instance_types_gpu_info_config/ap-southeast-3.json create mode 100644 src/sagemaker/instance_types_gpu_info_config/ca-central-1.json create mode 100644 src/sagemaker/instance_types_gpu_info_config/cn-north-1.json create mode 100644 src/sagemaker/instance_types_gpu_info_config/cn-northwest-1.json create mode 100644 src/sagemaker/instance_types_gpu_info_config/eu-central-1.json create mode 100644 src/sagemaker/instance_types_gpu_info_config/eu-central-2.json create mode 100644 src/sagemaker/instance_types_gpu_info_config/eu-north-1.json create mode 100644 src/sagemaker/instance_types_gpu_info_config/eu-south-1.json create mode 100644 src/sagemaker/instance_types_gpu_info_config/eu-south-2.json create mode 100644 src/sagemaker/instance_types_gpu_info_config/eu-west-1.json create mode 100644 src/sagemaker/instance_types_gpu_info_config/eu-west-2.json create mode 100644 src/sagemaker/instance_types_gpu_info_config/eu-west-3.json create mode 100644 src/sagemaker/instance_types_gpu_info_config/il-central-1.json create mode 100644 src/sagemaker/instance_types_gpu_info_config/me-central-1.json create mode 100644 src/sagemaker/instance_types_gpu_info_config/me-south-1.json create mode 100644 src/sagemaker/instance_types_gpu_info_config/sa-east-1.json create mode 100644 src/sagemaker/instance_types_gpu_info_config/us-east-1.json create mode 100644 src/sagemaker/instance_types_gpu_info_config/us-east-2.json create mode 100644 src/sagemaker/instance_types_gpu_info_config/us-gov-east-1.json create mode 100644 src/sagemaker/instance_types_gpu_info_config/us-gov-west-1.json create mode 100644 src/sagemaker/instance_types_gpu_info_config/us-west-1.json create mode 100644 src/sagemaker/instance_types_gpu_info_config/us-west-2.json create mode 100644 tests/unit/sagemaker/test_instance_types_gpu_info.py diff --git a/src/sagemaker/instance_types_gpu_info.py b/src/sagemaker/instance_types_gpu_info.py new file mode 100644 index 0000000000..09494c011a --- /dev/null +++ b/src/sagemaker/instance_types_gpu_info.py @@ -0,0 +1,40 @@ +# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"). You +# may not use this file except in compliance with the License. A copy of +# the License is located at +# +# http://aws.amazon.com/apache2.0/ +# +# or in the "license" file accompanying this file. This file is +# distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF +# ANY KIND, either express or implied. See the License for the specific +# language governing permissions and limitations under the License. +"""Accessors to retrieve instance types GPU info.""" +from __future__ import absolute_import + +import json +import os + + +def retrieve(region: str) -> dict[str, any]: + """Retrieves instance types GPU info of the given region. + + Args: + region (str): The AWS region. + + Returns: + dict[str, any]: A dictionary that contains instance types as keys, and GPU info as values. + + Raises: + ValueError: If no config found for the given region. + """ + config_path = os.path.join( + os.path.dirname(__file__), "instance_types_gpu_info_config", "{}.json".format(region) + ) + try: + with open(config_path) as f: + instance_types_gpu_info_config = json.load(f) + return instance_types_gpu_info_config.get("registries") + except FileNotFoundError: + raise ValueError("Could not find instance types gpu info config for {}".format(region)) diff --git "a/src/sagemaker/instance_types_gpu_info_config/\taf-south-1.json" "b/src/sagemaker/instance_types_gpu_info_config/\taf-south-1.json" new file mode 100644 index 0000000000..6bd809e21c --- /dev/null +++ "b/src/sagemaker/instance_types_gpu_info_config/\taf-south-1.json" @@ -0,0 +1,28 @@ +{ + "registries": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + } +} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/ap-east-1.json b/src/sagemaker/instance_types_gpu_info_config/ap-east-1.json new file mode 100644 index 0000000000..6bd809e21c --- /dev/null +++ b/src/sagemaker/instance_types_gpu_info_config/ap-east-1.json @@ -0,0 +1,28 @@ +{ + "registries": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + } +} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/ap-northeast-1.json b/src/sagemaker/instance_types_gpu_info_config/ap-northeast-1.json new file mode 100644 index 0000000000..6bd809e21c --- /dev/null +++ b/src/sagemaker/instance_types_gpu_info_config/ap-northeast-1.json @@ -0,0 +1,28 @@ +{ + "registries": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + } +} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/ap-northeast-2.json b/src/sagemaker/instance_types_gpu_info_config/ap-northeast-2.json new file mode 100644 index 0000000000..6bd809e21c --- /dev/null +++ b/src/sagemaker/instance_types_gpu_info_config/ap-northeast-2.json @@ -0,0 +1,28 @@ +{ + "registries": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + } +} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/ap-northeast-3.json b/src/sagemaker/instance_types_gpu_info_config/ap-northeast-3.json new file mode 100644 index 0000000000..6bd809e21c --- /dev/null +++ b/src/sagemaker/instance_types_gpu_info_config/ap-northeast-3.json @@ -0,0 +1,28 @@ +{ + "registries": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + } +} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/ap-south-1.json b/src/sagemaker/instance_types_gpu_info_config/ap-south-1.json new file mode 100644 index 0000000000..6bd809e21c --- /dev/null +++ b/src/sagemaker/instance_types_gpu_info_config/ap-south-1.json @@ -0,0 +1,28 @@ +{ + "registries": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + } +} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/ap-southeast-1.json b/src/sagemaker/instance_types_gpu_info_config/ap-southeast-1.json new file mode 100644 index 0000000000..6bd809e21c --- /dev/null +++ b/src/sagemaker/instance_types_gpu_info_config/ap-southeast-1.json @@ -0,0 +1,28 @@ +{ + "registries": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + } +} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/ap-southeast-2.json b/src/sagemaker/instance_types_gpu_info_config/ap-southeast-2.json new file mode 100644 index 0000000000..6bd809e21c --- /dev/null +++ b/src/sagemaker/instance_types_gpu_info_config/ap-southeast-2.json @@ -0,0 +1,28 @@ +{ + "registries": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + } +} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/ap-southeast-3.json b/src/sagemaker/instance_types_gpu_info_config/ap-southeast-3.json new file mode 100644 index 0000000000..6bd809e21c --- /dev/null +++ b/src/sagemaker/instance_types_gpu_info_config/ap-southeast-3.json @@ -0,0 +1,28 @@ +{ + "registries": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + } +} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/ca-central-1.json b/src/sagemaker/instance_types_gpu_info_config/ca-central-1.json new file mode 100644 index 0000000000..6bd809e21c --- /dev/null +++ b/src/sagemaker/instance_types_gpu_info_config/ca-central-1.json @@ -0,0 +1,28 @@ +{ + "registries": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + } +} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/cn-north-1.json b/src/sagemaker/instance_types_gpu_info_config/cn-north-1.json new file mode 100644 index 0000000000..6bd809e21c --- /dev/null +++ b/src/sagemaker/instance_types_gpu_info_config/cn-north-1.json @@ -0,0 +1,28 @@ +{ + "registries": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + } +} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/cn-northwest-1.json b/src/sagemaker/instance_types_gpu_info_config/cn-northwest-1.json new file mode 100644 index 0000000000..6bd809e21c --- /dev/null +++ b/src/sagemaker/instance_types_gpu_info_config/cn-northwest-1.json @@ -0,0 +1,28 @@ +{ + "registries": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + } +} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/eu-central-1.json b/src/sagemaker/instance_types_gpu_info_config/eu-central-1.json new file mode 100644 index 0000000000..6bd809e21c --- /dev/null +++ b/src/sagemaker/instance_types_gpu_info_config/eu-central-1.json @@ -0,0 +1,28 @@ +{ + "registries": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + } +} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/eu-central-2.json b/src/sagemaker/instance_types_gpu_info_config/eu-central-2.json new file mode 100644 index 0000000000..6bd809e21c --- /dev/null +++ b/src/sagemaker/instance_types_gpu_info_config/eu-central-2.json @@ -0,0 +1,28 @@ +{ + "registries": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + } +} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/eu-north-1.json b/src/sagemaker/instance_types_gpu_info_config/eu-north-1.json new file mode 100644 index 0000000000..6bd809e21c --- /dev/null +++ b/src/sagemaker/instance_types_gpu_info_config/eu-north-1.json @@ -0,0 +1,28 @@ +{ + "registries": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + } +} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/eu-south-1.json b/src/sagemaker/instance_types_gpu_info_config/eu-south-1.json new file mode 100644 index 0000000000..6bd809e21c --- /dev/null +++ b/src/sagemaker/instance_types_gpu_info_config/eu-south-1.json @@ -0,0 +1,28 @@ +{ + "registries": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + } +} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/eu-south-2.json b/src/sagemaker/instance_types_gpu_info_config/eu-south-2.json new file mode 100644 index 0000000000..6bd809e21c --- /dev/null +++ b/src/sagemaker/instance_types_gpu_info_config/eu-south-2.json @@ -0,0 +1,28 @@ +{ + "registries": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + } +} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/eu-west-1.json b/src/sagemaker/instance_types_gpu_info_config/eu-west-1.json new file mode 100644 index 0000000000..6bd809e21c --- /dev/null +++ b/src/sagemaker/instance_types_gpu_info_config/eu-west-1.json @@ -0,0 +1,28 @@ +{ + "registries": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + } +} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/eu-west-2.json b/src/sagemaker/instance_types_gpu_info_config/eu-west-2.json new file mode 100644 index 0000000000..6bd809e21c --- /dev/null +++ b/src/sagemaker/instance_types_gpu_info_config/eu-west-2.json @@ -0,0 +1,28 @@ +{ + "registries": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + } +} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/eu-west-3.json b/src/sagemaker/instance_types_gpu_info_config/eu-west-3.json new file mode 100644 index 0000000000..6bd809e21c --- /dev/null +++ b/src/sagemaker/instance_types_gpu_info_config/eu-west-3.json @@ -0,0 +1,28 @@ +{ + "registries": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + } +} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/il-central-1.json b/src/sagemaker/instance_types_gpu_info_config/il-central-1.json new file mode 100644 index 0000000000..6bd809e21c --- /dev/null +++ b/src/sagemaker/instance_types_gpu_info_config/il-central-1.json @@ -0,0 +1,28 @@ +{ + "registries": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + } +} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/me-central-1.json b/src/sagemaker/instance_types_gpu_info_config/me-central-1.json new file mode 100644 index 0000000000..6bd809e21c --- /dev/null +++ b/src/sagemaker/instance_types_gpu_info_config/me-central-1.json @@ -0,0 +1,28 @@ +{ + "registries": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + } +} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/me-south-1.json b/src/sagemaker/instance_types_gpu_info_config/me-south-1.json new file mode 100644 index 0000000000..6bd809e21c --- /dev/null +++ b/src/sagemaker/instance_types_gpu_info_config/me-south-1.json @@ -0,0 +1,28 @@ +{ + "registries": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + } +} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/sa-east-1.json b/src/sagemaker/instance_types_gpu_info_config/sa-east-1.json new file mode 100644 index 0000000000..6bd809e21c --- /dev/null +++ b/src/sagemaker/instance_types_gpu_info_config/sa-east-1.json @@ -0,0 +1,28 @@ +{ + "registries": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + } +} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/us-east-1.json b/src/sagemaker/instance_types_gpu_info_config/us-east-1.json new file mode 100644 index 0000000000..6bd809e21c --- /dev/null +++ b/src/sagemaker/instance_types_gpu_info_config/us-east-1.json @@ -0,0 +1,28 @@ +{ + "registries": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + } +} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/us-east-2.json b/src/sagemaker/instance_types_gpu_info_config/us-east-2.json new file mode 100644 index 0000000000..6bd809e21c --- /dev/null +++ b/src/sagemaker/instance_types_gpu_info_config/us-east-2.json @@ -0,0 +1,28 @@ +{ + "registries": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + } +} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/us-gov-east-1.json b/src/sagemaker/instance_types_gpu_info_config/us-gov-east-1.json new file mode 100644 index 0000000000..6bd809e21c --- /dev/null +++ b/src/sagemaker/instance_types_gpu_info_config/us-gov-east-1.json @@ -0,0 +1,28 @@ +{ + "registries": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + } +} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/us-gov-west-1.json b/src/sagemaker/instance_types_gpu_info_config/us-gov-west-1.json new file mode 100644 index 0000000000..6bd809e21c --- /dev/null +++ b/src/sagemaker/instance_types_gpu_info_config/us-gov-west-1.json @@ -0,0 +1,28 @@ +{ + "registries": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + } +} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/us-west-1.json b/src/sagemaker/instance_types_gpu_info_config/us-west-1.json new file mode 100644 index 0000000000..6bd809e21c --- /dev/null +++ b/src/sagemaker/instance_types_gpu_info_config/us-west-1.json @@ -0,0 +1,28 @@ +{ + "registries": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + } +} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/us-west-2.json b/src/sagemaker/instance_types_gpu_info_config/us-west-2.json new file mode 100644 index 0000000000..6bd809e21c --- /dev/null +++ b/src/sagemaker/instance_types_gpu_info_config/us-west-2.json @@ -0,0 +1,28 @@ +{ + "registries": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + } +} \ No newline at end of file diff --git a/src/sagemaker/serve/utils/hardware_detector.py b/src/sagemaker/serve/utils/hardware_detector.py index 2c4925191f..646f7dcdcc 100644 --- a/src/sagemaker/serve/utils/hardware_detector.py +++ b/src/sagemaker/serve/utils/hardware_detector.py @@ -10,7 +10,7 @@ # distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF # ANY KIND, either express or implied. See the License for the specific # language governing permissions and limitations under the License. -"""Utilites for identifying and analyzing instance gpu hardware""" +"""Utilities for detecting available GPUs and Aggregate GPU Memory size of an instance""" from __future__ import absolute_import import logging @@ -18,41 +18,23 @@ from botocore.exceptions import ClientError from sagemaker import Session +from sagemaker.instance_types_gpu_info import retrieve logger = logging.getLogger(__name__) -FALLBACK_GPU_RESOURCE_MAPPING = { - "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, - "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, - "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, - "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, - "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, - "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, - "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608}, -} - def _get_gpu_info(instance_type: str, session: Session) -> tuple[int, int]: """Get GPU info for the provided instance - @return: Tuple containing: [0]number of GPUs available and [1]aggregate memory size in MiB + Args: + instance_type (str) + session: The session to use. + + Returns: tuple[int, int]: A tuple that contains number of GPUs available at index 0, + and aggregate memory size in MiB at index 1. + + Raises: + ValueError: If The given instance type does not exist or GPU is not enabled. """ ec2_client = session.boto_session.client("ec2") ec2_instance = _format_instance_type(instance_type) @@ -82,12 +64,22 @@ def _get_gpu_info(instance_type: str, session: Session) -> tuple[int, int]: raise ValueError(f"Provided instance_type is not GPU enabled: [{ec2_instance}]") -def _get_gpu_info_fallback(instance_type: str) -> tuple[int, int]: - """Get GPU info for the provided instance fallback +def _get_gpu_info_fallback(instance_type: str, region: str) -> tuple[int, int]: + """Get GPU info for the provided from the config + + Args: + instance_type (str): + region: The AWS region. + + Returns: tuple[int, int]: A tuple that contains number of GPUs available at index 0, + and aggregate memory size in MiB at index 1. - @return: Tuple containing: [0]number of GPUs available and [1]aggregate memory size in MiB + Raises: + ValueError: If The given instance type does not exist. """ - fallback_instance_gpu_info = FALLBACK_GPU_RESOURCE_MAPPING.get(instance_type) + instance_types_gpu_info_config = retrieve(region) + fallback_instance_gpu_info = instance_types_gpu_info_config.get(instance_type) + ec2_instance = _format_instance_type(instance_type) if fallback_instance_gpu_info is None: raise ValueError(f"Provided instance_type is not GPU enabled: [{ec2_instance}]") @@ -101,7 +93,13 @@ def _get_gpu_info_fallback(instance_type: str) -> tuple[int, int]: def _format_instance_type(instance_type: str) -> str: - """Formats provided instance type name""" + """Formats provided instance type name + + Args: + instance_type (str): + + Returns: formatted instance type. + """ split_instance = instance_type.split(".") if len(split_instance) > 2: diff --git a/tests/unit/sagemaker/serve/utils/test_hardware_detector.py b/tests/unit/sagemaker/serve/utils/test_hardware_detector.py index 964998a3ff..4c91a2699f 100644 --- a/tests/unit/sagemaker/serve/utils/test_hardware_detector.py +++ b/tests/unit/sagemaker/serve/utils/test_hardware_detector.py @@ -13,7 +13,6 @@ from __future__ import absolute_import from botocore.exceptions import ClientError -from mock.mock import patch import pytest from sagemaker.serve.utils import hardware_detector @@ -24,9 +23,7 @@ EXPECTED_INSTANCE_GPU_INFO = (8, 196608) -@patch("sagemaker.session.Session") -def test_get_gpu_info_success(session): - client = session.boto_session.client("ec2") +def test_get_gpu_info_success(sagemaker_session, client): client.describe_instance_types.return_value = { "InstanceTypes": [ { @@ -45,24 +42,20 @@ def test_get_gpu_info_success(session): ] } - instance_gpu_info = hardware_detector._get_gpu_info(VALID_INSTANCE_TYPE, session) + instance_gpu_info = hardware_detector._get_gpu_info(VALID_INSTANCE_TYPE, sagemaker_session) client.describe_instance_types.assert_called_once_with(InstanceTypes=["g5.48xlarge"]) assert instance_gpu_info == EXPECTED_INSTANCE_GPU_INFO -@patch("sagemaker.session.Session") -def test_get_gpu_info_throws(session): - client = session.boto_session.client("ec2") +def test_get_gpu_info_throws(sagemaker_session, client): client.describe_instance_types.return_value = {"InstanceTypes": [{}]} with pytest.raises(ValueError): - hardware_detector._get_gpu_info(INVALID_INSTANCE_TYPE, session) + hardware_detector._get_gpu_info(INVALID_INSTANCE_TYPE, sagemaker_session) -@patch("sagemaker.session.Session") -def test_get_gpu_info_describe_instance_types_throws(session): - client = session.boto_session.client("ec2") +def test_get_gpu_info_describe_instance_types_throws(sagemaker_session, client): client.describe_instance_types.side_effect = ClientError( { "Error": { @@ -75,18 +68,20 @@ def test_get_gpu_info_describe_instance_types_throws(session): ) with pytest.raises(ValueError): - hardware_detector._get_gpu_info(INVALID_INSTANCE_TYPE, session) + hardware_detector._get_gpu_info(INVALID_INSTANCE_TYPE, sagemaker_session) def test_get_gpu_info_fallback_success(): - fallback_instance_gpu_info = hardware_detector._get_gpu_info_fallback(VALID_INSTANCE_TYPE) + fallback_instance_gpu_info = hardware_detector._get_gpu_info_fallback( + VALID_INSTANCE_TYPE, REGION + ) assert fallback_instance_gpu_info == EXPECTED_INSTANCE_GPU_INFO def test_get_gpu_info_fallback_throws(): with pytest.raises(ValueError): - hardware_detector._get_gpu_info_fallback(INVALID_INSTANCE_TYPE) + hardware_detector._get_gpu_info_fallback(INVALID_INSTANCE_TYPE, REGION) def test_format_instance_type_success(): diff --git a/tests/unit/sagemaker/test_instance_types_gpu_info.py b/tests/unit/sagemaker/test_instance_types_gpu_info.py new file mode 100644 index 0000000000..d3420f833d --- /dev/null +++ b/tests/unit/sagemaker/test_instance_types_gpu_info.py @@ -0,0 +1,30 @@ +# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"). You +# may not use this file except in compliance with the License. A copy of +# the License is located at +# +# http://aws.amazon.com/apache2.0/ +# +# or in the "license" file accompanying this file. This file is +# distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF +# ANY KIND, either express or implied. See the License for the specific +# language governing permissions and limitations under the License. +from __future__ import absolute_import + +import pytest + +from sagemaker.instance_types_gpu_info import retrieve + +REGION = "us-west-2" +INVALID_REGION = "invalid-region" + + +def test_retrieve_success(): + data = retrieve(REGION) + assert len(data) > 0 + + +def test_retrieve_throws(): + with pytest.raises(ValueError): + retrieve(INVALID_REGION) From f3e4a2af83faf799cacdef3d9d5a273dbd1c6dd5 Mon Sep 17 00:00:00 2001 From: Jonathan Makunga Date: Fri, 26 Jan 2024 11:26:58 -0800 Subject: [PATCH 10/14] Fix integration tests --- tests/integ/sagemaker/serve/utils/test_hardware_detector.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/tests/integ/sagemaker/serve/utils/test_hardware_detector.py b/tests/integ/sagemaker/serve/utils/test_hardware_detector.py index ae551b751c..9102927c55 100644 --- a/tests/integ/sagemaker/serve/utils/test_hardware_detector.py +++ b/tests/integ/sagemaker/serve/utils/test_hardware_detector.py @@ -16,6 +16,7 @@ from sagemaker.serve.utils import hardware_detector +REGION = "us-west-2" VALID_INSTANCE_TYPE = "ml.g5.48xlarge" INVALID_INSTANCE_TYPE = "fl.c5.57xxlarge" EXPECTED_INSTANCE_GPU_INFO = (8, 196608) @@ -33,11 +34,11 @@ def test_get_gpu_info_throws(sagemaker_session): def test_get_gpu_info_fallback_success(): - gpu_info = hardware_detector._get_gpu_info_fallback(VALID_INSTANCE_TYPE) + gpu_info = hardware_detector._get_gpu_info_fallback(VALID_INSTANCE_TYPE, REGION) assert gpu_info == EXPECTED_INSTANCE_GPU_INFO def test_get_gpu_info_fallback_throws(): with pytest.raises(ValueError): - hardware_detector._get_gpu_info_fallback(INVALID_INSTANCE_TYPE) + hardware_detector._get_gpu_info_fallback(INVALID_INSTANCE_TYPE, REGION) From e9547febec961457f2b42be221ba282d1013d9f0 Mon Sep 17 00:00:00 2001 From: Jonathan Makunga Date: Fri, 26 Jan 2024 12:11:21 -0800 Subject: [PATCH 11/14] Include Instance Types GPU infor Config files --- MANIFEST.in | 1 + 1 file changed, 1 insertion(+) diff --git a/MANIFEST.in b/MANIFEST.in index f8d3d426f6..a855a95c31 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -1,6 +1,7 @@ recursive-include src/sagemaker *.py include src/sagemaker/image_uri_config/*.json +include src/sagemaker/instance_types_gpu_info_config/*.json include src/sagemaker/serve/requirements.txt recursive-include requirements * From 46fb3910c9ef590390c007856280db10b6048876 Mon Sep 17 00:00:00 2001 From: Jonathan Makunga Date: Fri, 26 Jan 2024 15:42:20 -0800 Subject: [PATCH 12/14] Addressed PR review comments --- MANIFEST.in | 1 - .../image_uri_config/instance_gpu_info.json | 782 ++++++++++++++++++ src/sagemaker/instance_types_gpu_info.py | 14 +- .../\taf-south-1.json" | 28 - .../ap-east-1.json | 28 - .../ap-northeast-1.json | 28 - .../ap-northeast-2.json | 28 - .../ap-northeast-3.json | 28 - .../ap-south-1.json | 28 - .../ap-southeast-1.json | 28 - .../ap-southeast-2.json | 28 - .../ap-southeast-3.json | 28 - .../ca-central-1.json | 28 - .../cn-north-1.json | 28 - .../cn-northwest-1.json | 28 - .../eu-central-1.json | 28 - .../eu-central-2.json | 28 - .../eu-north-1.json | 28 - .../eu-south-1.json | 28 - .../eu-south-2.json | 28 - .../eu-west-1.json | 28 - .../eu-west-2.json | 28 - .../eu-west-3.json | 28 - .../il-central-1.json | 28 - .../me-central-1.json | 28 - .../me-south-1.json | 28 - .../sa-east-1.json | 28 - .../us-east-1.json | 28 - .../us-east-2.json | 28 - .../us-gov-east-1.json | 28 - .../us-gov-west-1.json | 28 - .../us-west-1.json | 28 - .../us-west-2.json | 28 - .../serve/utils/hardware_detector.py | 4 +- .../sagemaker/test_instance_types_gpu_info.py | 12 +- 35 files changed, 798 insertions(+), 855 deletions(-) create mode 100644 src/sagemaker/image_uri_config/instance_gpu_info.json delete mode 100644 "src/sagemaker/instance_types_gpu_info_config/\taf-south-1.json" delete mode 100644 src/sagemaker/instance_types_gpu_info_config/ap-east-1.json delete mode 100644 src/sagemaker/instance_types_gpu_info_config/ap-northeast-1.json delete mode 100644 src/sagemaker/instance_types_gpu_info_config/ap-northeast-2.json delete mode 100644 src/sagemaker/instance_types_gpu_info_config/ap-northeast-3.json delete mode 100644 src/sagemaker/instance_types_gpu_info_config/ap-south-1.json delete mode 100644 src/sagemaker/instance_types_gpu_info_config/ap-southeast-1.json delete mode 100644 src/sagemaker/instance_types_gpu_info_config/ap-southeast-2.json delete mode 100644 src/sagemaker/instance_types_gpu_info_config/ap-southeast-3.json delete mode 100644 src/sagemaker/instance_types_gpu_info_config/ca-central-1.json delete mode 100644 src/sagemaker/instance_types_gpu_info_config/cn-north-1.json delete mode 100644 src/sagemaker/instance_types_gpu_info_config/cn-northwest-1.json delete mode 100644 src/sagemaker/instance_types_gpu_info_config/eu-central-1.json delete mode 100644 src/sagemaker/instance_types_gpu_info_config/eu-central-2.json delete mode 100644 src/sagemaker/instance_types_gpu_info_config/eu-north-1.json delete mode 100644 src/sagemaker/instance_types_gpu_info_config/eu-south-1.json delete mode 100644 src/sagemaker/instance_types_gpu_info_config/eu-south-2.json delete mode 100644 src/sagemaker/instance_types_gpu_info_config/eu-west-1.json delete mode 100644 src/sagemaker/instance_types_gpu_info_config/eu-west-2.json delete mode 100644 src/sagemaker/instance_types_gpu_info_config/eu-west-3.json delete mode 100644 src/sagemaker/instance_types_gpu_info_config/il-central-1.json delete mode 100644 src/sagemaker/instance_types_gpu_info_config/me-central-1.json delete mode 100644 src/sagemaker/instance_types_gpu_info_config/me-south-1.json delete mode 100644 src/sagemaker/instance_types_gpu_info_config/sa-east-1.json delete mode 100644 src/sagemaker/instance_types_gpu_info_config/us-east-1.json delete mode 100644 src/sagemaker/instance_types_gpu_info_config/us-east-2.json delete mode 100644 src/sagemaker/instance_types_gpu_info_config/us-gov-east-1.json delete mode 100644 src/sagemaker/instance_types_gpu_info_config/us-gov-west-1.json delete mode 100644 src/sagemaker/instance_types_gpu_info_config/us-west-1.json delete mode 100644 src/sagemaker/instance_types_gpu_info_config/us-west-2.json diff --git a/MANIFEST.in b/MANIFEST.in index a855a95c31..f8d3d426f6 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -1,7 +1,6 @@ recursive-include src/sagemaker *.py include src/sagemaker/image_uri_config/*.json -include src/sagemaker/instance_types_gpu_info_config/*.json include src/sagemaker/serve/requirements.txt recursive-include requirements * diff --git a/src/sagemaker/image_uri_config/instance_gpu_info.json b/src/sagemaker/image_uri_config/instance_gpu_info.json new file mode 100644 index 0000000000..9fc005bc47 --- /dev/null +++ b/src/sagemaker/image_uri_config/instance_gpu_info.json @@ -0,0 +1,782 @@ +{ + "af-south-1": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + }, + "ap-east-1": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + }, + "ap-northeast-1": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + }, + "ap-northeast-2": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + }, + "ap-northeast-3": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + }, + "ap-south-1": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + }, + "ap-southeast-1": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + }, + "ap-southeast-2": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + }, + "ap-southeast-3": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + }, + "ca-central-1": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + }, + "cn-north-1": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + }, + "cn-northwest-1": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + }, + "eu-central-1": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + }, + "eu-central-2": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + }, + "eu-north-1": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + }, + "eu-south-1": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + }, + "eu-south-2": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + }, + "eu-west-1": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + }, + "eu-west-2": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + }, + "eu-west-3": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + }, + "il-central-1": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + }, + "me-central-1": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + }, + "me-south-1": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + }, + "sa-east-1": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + }, + "us-east-1": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + }, + "us-east-2": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + }, + "us-gov-east-1": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + }, + "us-gov-west-1": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + }, + "us-west-1": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + }, + "us-west-2": { + "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, + "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, + "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, + "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, + "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, + "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, + "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, + "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, + "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, + "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, + "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, + "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} + } +} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info.py b/src/sagemaker/instance_types_gpu_info.py index 09494c011a..7658df4854 100644 --- a/src/sagemaker/instance_types_gpu_info.py +++ b/src/sagemaker/instance_types_gpu_info.py @@ -17,24 +17,26 @@ import os -def retrieve(region: str) -> dict[str, any]: +def retrieve(region: str) -> dict[str, dict[str, int]]: """Retrieves instance types GPU info of the given region. Args: region (str): The AWS region. Returns: - dict[str, any]: A dictionary that contains instance types as keys, and GPU info as values. + dict[str, dict[str, int]]: A dictionary that contains instance types as keys + and GPU info as values or empty dictionary if the + config for the given region is not found. Raises: - ValueError: If no config found for the given region. + ValueError: If no config found. """ config_path = os.path.join( - os.path.dirname(__file__), "instance_types_gpu_info_config", "{}.json".format(region) + os.path.dirname(__file__), "image_uri_config", "instance_gpu_info.json" ) try: with open(config_path) as f: instance_types_gpu_info_config = json.load(f) - return instance_types_gpu_info_config.get("registries") + return instance_types_gpu_info_config.get(region, {}) except FileNotFoundError: - raise ValueError("Could not find instance types gpu info config for {}".format(region)) + raise ValueError("Could not find instance types gpu info.") diff --git "a/src/sagemaker/instance_types_gpu_info_config/\taf-south-1.json" "b/src/sagemaker/instance_types_gpu_info_config/\taf-south-1.json" deleted file mode 100644 index 6bd809e21c..0000000000 --- "a/src/sagemaker/instance_types_gpu_info_config/\taf-south-1.json" +++ /dev/null @@ -1,28 +0,0 @@ -{ - "registries": { - "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, - "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, - "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, - "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, - "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, - "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, - "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} - } -} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/ap-east-1.json b/src/sagemaker/instance_types_gpu_info_config/ap-east-1.json deleted file mode 100644 index 6bd809e21c..0000000000 --- a/src/sagemaker/instance_types_gpu_info_config/ap-east-1.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "registries": { - "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, - "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, - "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, - "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, - "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, - "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, - "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} - } -} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/ap-northeast-1.json b/src/sagemaker/instance_types_gpu_info_config/ap-northeast-1.json deleted file mode 100644 index 6bd809e21c..0000000000 --- a/src/sagemaker/instance_types_gpu_info_config/ap-northeast-1.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "registries": { - "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, - "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, - "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, - "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, - "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, - "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, - "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} - } -} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/ap-northeast-2.json b/src/sagemaker/instance_types_gpu_info_config/ap-northeast-2.json deleted file mode 100644 index 6bd809e21c..0000000000 --- a/src/sagemaker/instance_types_gpu_info_config/ap-northeast-2.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "registries": { - "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, - "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, - "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, - "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, - "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, - "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, - "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} - } -} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/ap-northeast-3.json b/src/sagemaker/instance_types_gpu_info_config/ap-northeast-3.json deleted file mode 100644 index 6bd809e21c..0000000000 --- a/src/sagemaker/instance_types_gpu_info_config/ap-northeast-3.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "registries": { - "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, - "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, - "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, - "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, - "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, - "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, - "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} - } -} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/ap-south-1.json b/src/sagemaker/instance_types_gpu_info_config/ap-south-1.json deleted file mode 100644 index 6bd809e21c..0000000000 --- a/src/sagemaker/instance_types_gpu_info_config/ap-south-1.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "registries": { - "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, - "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, - "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, - "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, - "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, - "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, - "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} - } -} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/ap-southeast-1.json b/src/sagemaker/instance_types_gpu_info_config/ap-southeast-1.json deleted file mode 100644 index 6bd809e21c..0000000000 --- a/src/sagemaker/instance_types_gpu_info_config/ap-southeast-1.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "registries": { - "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, - "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, - "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, - "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, - "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, - "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, - "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} - } -} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/ap-southeast-2.json b/src/sagemaker/instance_types_gpu_info_config/ap-southeast-2.json deleted file mode 100644 index 6bd809e21c..0000000000 --- a/src/sagemaker/instance_types_gpu_info_config/ap-southeast-2.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "registries": { - "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, - "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, - "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, - "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, - "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, - "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, - "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} - } -} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/ap-southeast-3.json b/src/sagemaker/instance_types_gpu_info_config/ap-southeast-3.json deleted file mode 100644 index 6bd809e21c..0000000000 --- a/src/sagemaker/instance_types_gpu_info_config/ap-southeast-3.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "registries": { - "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, - "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, - "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, - "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, - "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, - "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, - "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} - } -} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/ca-central-1.json b/src/sagemaker/instance_types_gpu_info_config/ca-central-1.json deleted file mode 100644 index 6bd809e21c..0000000000 --- a/src/sagemaker/instance_types_gpu_info_config/ca-central-1.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "registries": { - "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, - "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, - "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, - "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, - "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, - "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, - "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} - } -} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/cn-north-1.json b/src/sagemaker/instance_types_gpu_info_config/cn-north-1.json deleted file mode 100644 index 6bd809e21c..0000000000 --- a/src/sagemaker/instance_types_gpu_info_config/cn-north-1.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "registries": { - "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, - "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, - "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, - "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, - "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, - "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, - "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} - } -} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/cn-northwest-1.json b/src/sagemaker/instance_types_gpu_info_config/cn-northwest-1.json deleted file mode 100644 index 6bd809e21c..0000000000 --- a/src/sagemaker/instance_types_gpu_info_config/cn-northwest-1.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "registries": { - "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, - "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, - "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, - "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, - "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, - "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, - "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} - } -} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/eu-central-1.json b/src/sagemaker/instance_types_gpu_info_config/eu-central-1.json deleted file mode 100644 index 6bd809e21c..0000000000 --- a/src/sagemaker/instance_types_gpu_info_config/eu-central-1.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "registries": { - "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, - "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, - "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, - "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, - "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, - "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, - "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} - } -} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/eu-central-2.json b/src/sagemaker/instance_types_gpu_info_config/eu-central-2.json deleted file mode 100644 index 6bd809e21c..0000000000 --- a/src/sagemaker/instance_types_gpu_info_config/eu-central-2.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "registries": { - "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, - "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, - "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, - "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, - "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, - "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, - "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} - } -} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/eu-north-1.json b/src/sagemaker/instance_types_gpu_info_config/eu-north-1.json deleted file mode 100644 index 6bd809e21c..0000000000 --- a/src/sagemaker/instance_types_gpu_info_config/eu-north-1.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "registries": { - "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, - "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, - "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, - "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, - "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, - "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, - "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} - } -} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/eu-south-1.json b/src/sagemaker/instance_types_gpu_info_config/eu-south-1.json deleted file mode 100644 index 6bd809e21c..0000000000 --- a/src/sagemaker/instance_types_gpu_info_config/eu-south-1.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "registries": { - "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, - "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, - "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, - "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, - "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, - "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, - "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} - } -} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/eu-south-2.json b/src/sagemaker/instance_types_gpu_info_config/eu-south-2.json deleted file mode 100644 index 6bd809e21c..0000000000 --- a/src/sagemaker/instance_types_gpu_info_config/eu-south-2.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "registries": { - "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, - "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, - "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, - "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, - "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, - "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, - "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} - } -} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/eu-west-1.json b/src/sagemaker/instance_types_gpu_info_config/eu-west-1.json deleted file mode 100644 index 6bd809e21c..0000000000 --- a/src/sagemaker/instance_types_gpu_info_config/eu-west-1.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "registries": { - "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, - "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, - "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, - "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, - "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, - "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, - "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} - } -} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/eu-west-2.json b/src/sagemaker/instance_types_gpu_info_config/eu-west-2.json deleted file mode 100644 index 6bd809e21c..0000000000 --- a/src/sagemaker/instance_types_gpu_info_config/eu-west-2.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "registries": { - "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, - "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, - "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, - "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, - "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, - "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, - "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} - } -} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/eu-west-3.json b/src/sagemaker/instance_types_gpu_info_config/eu-west-3.json deleted file mode 100644 index 6bd809e21c..0000000000 --- a/src/sagemaker/instance_types_gpu_info_config/eu-west-3.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "registries": { - "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, - "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, - "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, - "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, - "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, - "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, - "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} - } -} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/il-central-1.json b/src/sagemaker/instance_types_gpu_info_config/il-central-1.json deleted file mode 100644 index 6bd809e21c..0000000000 --- a/src/sagemaker/instance_types_gpu_info_config/il-central-1.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "registries": { - "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, - "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, - "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, - "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, - "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, - "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, - "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} - } -} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/me-central-1.json b/src/sagemaker/instance_types_gpu_info_config/me-central-1.json deleted file mode 100644 index 6bd809e21c..0000000000 --- a/src/sagemaker/instance_types_gpu_info_config/me-central-1.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "registries": { - "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, - "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, - "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, - "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, - "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, - "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, - "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} - } -} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/me-south-1.json b/src/sagemaker/instance_types_gpu_info_config/me-south-1.json deleted file mode 100644 index 6bd809e21c..0000000000 --- a/src/sagemaker/instance_types_gpu_info_config/me-south-1.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "registries": { - "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, - "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, - "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, - "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, - "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, - "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, - "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} - } -} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/sa-east-1.json b/src/sagemaker/instance_types_gpu_info_config/sa-east-1.json deleted file mode 100644 index 6bd809e21c..0000000000 --- a/src/sagemaker/instance_types_gpu_info_config/sa-east-1.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "registries": { - "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, - "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, - "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, - "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, - "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, - "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, - "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} - } -} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/us-east-1.json b/src/sagemaker/instance_types_gpu_info_config/us-east-1.json deleted file mode 100644 index 6bd809e21c..0000000000 --- a/src/sagemaker/instance_types_gpu_info_config/us-east-1.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "registries": { - "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, - "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, - "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, - "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, - "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, - "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, - "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} - } -} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/us-east-2.json b/src/sagemaker/instance_types_gpu_info_config/us-east-2.json deleted file mode 100644 index 6bd809e21c..0000000000 --- a/src/sagemaker/instance_types_gpu_info_config/us-east-2.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "registries": { - "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, - "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, - "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, - "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, - "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, - "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, - "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} - } -} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/us-gov-east-1.json b/src/sagemaker/instance_types_gpu_info_config/us-gov-east-1.json deleted file mode 100644 index 6bd809e21c..0000000000 --- a/src/sagemaker/instance_types_gpu_info_config/us-gov-east-1.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "registries": { - "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, - "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, - "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, - "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, - "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, - "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, - "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} - } -} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/us-gov-west-1.json b/src/sagemaker/instance_types_gpu_info_config/us-gov-west-1.json deleted file mode 100644 index 6bd809e21c..0000000000 --- a/src/sagemaker/instance_types_gpu_info_config/us-gov-west-1.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "registries": { - "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, - "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, - "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, - "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, - "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, - "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, - "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} - } -} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/us-west-1.json b/src/sagemaker/instance_types_gpu_info_config/us-west-1.json deleted file mode 100644 index 6bd809e21c..0000000000 --- a/src/sagemaker/instance_types_gpu_info_config/us-west-1.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "registries": { - "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, - "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, - "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, - "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, - "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, - "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, - "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} - } -} \ No newline at end of file diff --git a/src/sagemaker/instance_types_gpu_info_config/us-west-2.json b/src/sagemaker/instance_types_gpu_info_config/us-west-2.json deleted file mode 100644 index 6bd809e21c..0000000000 --- a/src/sagemaker/instance_types_gpu_info_config/us-west-2.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "registries": { - "ml.p5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p4d.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 327680}, - "ml.p4de.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 655360}, - "ml.p3.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.p3.8xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.p3.16xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 131072}, - "ml.p3dn.24xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 262144}, - "ml.p2.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 12288}, - "ml.p2.8xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 98304}, - "ml.p2.16xlarge": {"Count": 16, "TotalGpuMemoryInMiB": 196608}, - "ml.g4dn.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 16384}, - "ml.g4dn.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 65536}, - "ml.g5n.xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.2xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.4xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.8xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.16xlarge": {"Count": 1, "TotalGpuMemoryInMiB": 24576}, - "ml.g5.12xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.24xlarge": {"Count": 4, "TotalGpuMemoryInMiB": 98304}, - "ml.g5.48xlarge": {"Count": 8, "TotalGpuMemoryInMiB": 196608} - } -} \ No newline at end of file diff --git a/src/sagemaker/serve/utils/hardware_detector.py b/src/sagemaker/serve/utils/hardware_detector.py index 646f7dcdcc..ebbd48355e 100644 --- a/src/sagemaker/serve/utils/hardware_detector.py +++ b/src/sagemaker/serve/utils/hardware_detector.py @@ -18,7 +18,7 @@ from botocore.exceptions import ClientError from sagemaker import Session -from sagemaker.instance_types_gpu_info import retrieve +from sagemaker import instance_types_gpu_info logger = logging.getLogger(__name__) @@ -77,7 +77,7 @@ def _get_gpu_info_fallback(instance_type: str, region: str) -> tuple[int, int]: Raises: ValueError: If The given instance type does not exist. """ - instance_types_gpu_info_config = retrieve(region) + instance_types_gpu_info_config = instance_types_gpu_info.retrieve(region) fallback_instance_gpu_info = instance_types_gpu_info_config.get(instance_type) ec2_instance = _format_instance_type(instance_type) diff --git a/tests/unit/sagemaker/test_instance_types_gpu_info.py b/tests/unit/sagemaker/test_instance_types_gpu_info.py index d3420f833d..d91cb43e51 100644 --- a/tests/unit/sagemaker/test_instance_types_gpu_info.py +++ b/tests/unit/sagemaker/test_instance_types_gpu_info.py @@ -12,19 +12,19 @@ # language governing permissions and limitations under the License. from __future__ import absolute_import -import pytest - -from sagemaker.instance_types_gpu_info import retrieve +from sagemaker import instance_types_gpu_info REGION = "us-west-2" INVALID_REGION = "invalid-region" def test_retrieve_success(): - data = retrieve(REGION) + data = instance_types_gpu_info.retrieve(REGION) + assert len(data) > 0 def test_retrieve_throws(): - with pytest.raises(ValueError): - retrieve(INVALID_REGION) + data = instance_types_gpu_info.retrieve(INVALID_REGION) + + assert len(data) == 0 From 625ba7cb91282b7d1871227cc211bd936c5a3f26 Mon Sep 17 00:00:00 2001 From: Jonathan Makunga Date: Fri, 26 Jan 2024 19:11:20 -0800 Subject: [PATCH 13/14] Fix unit tests --- src/sagemaker/instance_types_gpu_info.py | 3 ++- src/sagemaker/serve/utils/hardware_detector.py | 5 +++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/sagemaker/instance_types_gpu_info.py b/src/sagemaker/instance_types_gpu_info.py index 7658df4854..41566c6d32 100644 --- a/src/sagemaker/instance_types_gpu_info.py +++ b/src/sagemaker/instance_types_gpu_info.py @@ -15,9 +15,10 @@ import json import os +from typing import Dict -def retrieve(region: str) -> dict[str, dict[str, int]]: +def retrieve(region: str) -> Dict[str, Dict[str, int]]: """Retrieves instance types GPU info of the given region. Args: diff --git a/src/sagemaker/serve/utils/hardware_detector.py b/src/sagemaker/serve/utils/hardware_detector.py index ebbd48355e..632149dc8f 100644 --- a/src/sagemaker/serve/utils/hardware_detector.py +++ b/src/sagemaker/serve/utils/hardware_detector.py @@ -14,6 +14,7 @@ from __future__ import absolute_import import logging +from typing import Tuple from botocore.exceptions import ClientError @@ -23,7 +24,7 @@ logger = logging.getLogger(__name__) -def _get_gpu_info(instance_type: str, session: Session) -> tuple[int, int]: +def _get_gpu_info(instance_type: str, session: Session) -> Tuple[int, int]: """Get GPU info for the provided instance Args: @@ -64,7 +65,7 @@ def _get_gpu_info(instance_type: str, session: Session) -> tuple[int, int]: raise ValueError(f"Provided instance_type is not GPU enabled: [{ec2_instance}]") -def _get_gpu_info_fallback(instance_type: str, region: str) -> tuple[int, int]: +def _get_gpu_info_fallback(instance_type: str, region: str) -> Tuple[int, int]: """Get GPU info for the provided from the config Args: From 8c75b1eb3f16119e51123e75cd629c885fe29e39 Mon Sep 17 00:00:00 2001 From: Jonathan Makunga Date: Mon, 29 Jan 2024 18:06:40 -0800 Subject: [PATCH 14/14] Fix unit test: 'Mock' object is not subscriptable --- .../serve/utils/test_hardware_detector.py | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/tests/unit/sagemaker/serve/utils/test_hardware_detector.py b/tests/unit/sagemaker/serve/utils/test_hardware_detector.py index 4c91a2699f..5ec493de72 100644 --- a/tests/unit/sagemaker/serve/utils/test_hardware_detector.py +++ b/tests/unit/sagemaker/serve/utils/test_hardware_detector.py @@ -23,8 +23,8 @@ EXPECTED_INSTANCE_GPU_INFO = (8, 196608) -def test_get_gpu_info_success(sagemaker_session, client): - client.describe_instance_types.return_value = { +def test_get_gpu_info_success(sagemaker_session, boto_session): + boto_session.client("ec2").describe_instance_types.return_value = { "InstanceTypes": [ { "GpuInfo": { @@ -44,19 +44,21 @@ def test_get_gpu_info_success(sagemaker_session, client): instance_gpu_info = hardware_detector._get_gpu_info(VALID_INSTANCE_TYPE, sagemaker_session) - client.describe_instance_types.assert_called_once_with(InstanceTypes=["g5.48xlarge"]) + boto_session.client("ec2").describe_instance_types.assert_called_once_with( + InstanceTypes=["g5.48xlarge"] + ) assert instance_gpu_info == EXPECTED_INSTANCE_GPU_INFO -def test_get_gpu_info_throws(sagemaker_session, client): - client.describe_instance_types.return_value = {"InstanceTypes": [{}]} +def test_get_gpu_info_throws(sagemaker_session, boto_session): + boto_session.client("ec2").describe_instance_types.return_value = {"InstanceTypes": [{}]} with pytest.raises(ValueError): hardware_detector._get_gpu_info(INVALID_INSTANCE_TYPE, sagemaker_session) -def test_get_gpu_info_describe_instance_types_throws(sagemaker_session, client): - client.describe_instance_types.side_effect = ClientError( +def test_get_gpu_info_describe_instance_types_throws(sagemaker_session, boto_session): + boto_session.client("ec2").describe_instance_types.side_effect = ClientError( { "Error": { "Code": "InvalidInstanceType",