From be7dd1ae521081ec8caa9934cf0bda87d1da2c36 Mon Sep 17 00:00:00 2001 From: Benjamin Pineau Date: Tue, 26 Jan 2021 11:18:29 +0100 Subject: [PATCH] aws: support arm64 instances Sets the `kubernetes.io/arch` (and legacy `beta.kubernetes.io/arch`) to the proper instance architecture. While at it, re-gen the instance types list (adding new instance types that were missing) --- .../cloudprovider/aws/aws_manager.go | 3 +- .../cloudprovider/aws/aws_manager_test.go | 2 + .../cloudprovider/aws/aws_util.go | 14 + .../cloudprovider/aws/aws_util_test.go | 25 + .../cloudprovider/aws/ec2_instance_types.go | 534 ++++++++++++++++++ .../aws/ec2_instance_types/gen.go | 2 + 6 files changed, 579 insertions(+), 1 deletion(-) diff --git a/cluster-autoscaler/cloudprovider/aws/aws_manager.go b/cluster-autoscaler/cloudprovider/aws/aws_manager.go index d9f71bec8281..1a14e832656f 100644 --- a/cluster-autoscaler/cloudprovider/aws/aws_manager.go +++ b/cluster-autoscaler/cloudprovider/aws/aws_manager.go @@ -390,7 +390,8 @@ func (m *AwsManager) buildNodeFromTemplate(asg *asg, template *asgTemplate) (*ap func buildGenericLabels(template *asgTemplate, nodeName string) map[string]string { result := make(map[string]string) // TODO: extract it somehow - result[kubeletapis.LabelArch] = cloudprovider.DefaultArch + result[kubeletapis.LabelArch] = template.InstanceType.Architecture + result[apiv1.LabelArchStable] = template.InstanceType.Architecture result[kubeletapis.LabelOS] = cloudprovider.DefaultOS result[apiv1.LabelInstanceType] = template.InstanceType.InstanceType diff --git a/cluster-autoscaler/cloudprovider/aws/aws_manager_test.go b/cluster-autoscaler/cloudprovider/aws/aws_manager_test.go index 86e5d0ff2c37..6293cbd84d35 100644 --- a/cluster-autoscaler/cloudprovider/aws/aws_manager_test.go +++ b/cluster-autoscaler/cloudprovider/aws/aws_manager_test.go @@ -77,6 +77,7 @@ func TestBuildGenericLabels(t *testing.T) { InstanceType: "c4.large", VCPU: 2, MemoryMb: 3840, + Architecture: cloudprovider.DefaultArch, }, Region: "us-east-1", }, "sillyname") @@ -84,6 +85,7 @@ func TestBuildGenericLabels(t *testing.T) { assert.Equal(t, "sillyname", labels[apiv1.LabelHostname]) assert.Equal(t, "c4.large", labels[apiv1.LabelInstanceType]) assert.Equal(t, cloudprovider.DefaultArch, labels[kubeletapis.LabelArch]) + assert.Equal(t, cloudprovider.DefaultArch, labels[apiv1.LabelArchStable]) assert.Equal(t, cloudprovider.DefaultOS, labels[kubeletapis.LabelOS]) } diff --git a/cluster-autoscaler/cloudprovider/aws/aws_util.go b/cluster-autoscaler/cloudprovider/aws/aws_util.go index 05600564fb6f..2c52dfe775d3 100644 --- a/cluster-autoscaler/cloudprovider/aws/aws_util.go +++ b/cluster-autoscaler/cloudprovider/aws/aws_util.go @@ -35,6 +35,7 @@ var ( ec2PricingServiceUrlTemplate = "https://pricing.us-east-1.amazonaws.com/offers/v1.0/aws/AmazonEC2/current/%s/index.json" ec2PricingServiceUrlTemplateCN = "https://pricing.cn-north-1.amazonaws.com.cn/offers/v1.0/cn/AmazonEC2/current/%s/index.json" staticListLastUpdateTime = "2020-12-07" + ec2Arm64Processors = []string{"AWS Graviton Processor", "AWS Graviton2 Processor"} ) type response struct { @@ -50,6 +51,7 @@ type productAttributes struct { VCPU string `json:"vcpu"` Memory string `json:"memory"` GPU string `json:"gpu"` + Architecture string `json:"physicalProcessor"` } // GenerateEC2InstanceTypes returns a map of ec2 resources @@ -110,6 +112,9 @@ func GenerateEC2InstanceTypes(region string) (map[string]*InstanceType, error) { if attr.GPU != "" { instanceTypes[attr.InstanceType].GPU = parseCPU(attr.GPU) } + if attr.Architecture != "" { + instanceTypes[attr.InstanceType].Architecture = parseArchitecture(attr.Architecture) + } } } } @@ -150,6 +155,15 @@ func parseCPU(cpu string) int64 { return i } +func parseArchitecture(archName string) string { + for _, processor := range ec2Arm64Processors { + if archName == processor { + return "arm64" + } + } + return "amd64" +} + // GetCurrentAwsRegion return region of current cluster without building awsManager func GetCurrentAwsRegion() (string, error) { region, present := os.LookupEnv("AWS_REGION") diff --git a/cluster-autoscaler/cloudprovider/aws/aws_util_test.go b/cluster-autoscaler/cloudprovider/aws/aws_util_test.go index 6027babd8900..55ef894a6197 100644 --- a/cluster-autoscaler/cloudprovider/aws/aws_util_test.go +++ b/cluster-autoscaler/cloudprovider/aws/aws_util_test.go @@ -77,6 +77,31 @@ func TestParseCPU(t *testing.T) { } } +func TestParseArchitecture(t *testing.T) { + tests := []struct { + input string + expect string + }{ + { + input: "Intel Xeon Platinum 8259 (Cascade Lake)", + expect: "amd64", + }, + { + input: "AWS Graviton2 Processor", + expect: "arm64", + }, + { + input: "anything default", + expect: "amd64", + }, + } + + for _, test := range tests { + got := parseArchitecture(test.input) + assert.Equal(t, test.expect, got) + } +} + func TestGetCurrentAwsRegion(t *testing.T) { region := "us-west-2" if oldRegion, found := os.LookupEnv("AWS_REGION"); found { diff --git a/cluster-autoscaler/cloudprovider/aws/ec2_instance_types.go b/cluster-autoscaler/cloudprovider/aws/ec2_instance_types.go index fa7df49b185c..855c4a47acbf 100644 --- a/cluster-autoscaler/cloudprovider/aws/ec2_instance_types.go +++ b/cluster-autoscaler/cloudprovider/aws/ec2_instance_types.go @@ -24,6 +24,7 @@ type InstanceType struct { VCPU int64 MemoryMb int64 GPU int64 + Architecture string } // InstanceTypes is a map of ec2 resources @@ -33,2567 +34,3100 @@ var InstanceTypes = map[string]*InstanceType{ VCPU: 16, MemoryMb: 0, GPU: 0, + Architecture: "arm64", }, "a1.2xlarge": { InstanceType: "a1.2xlarge", VCPU: 8, MemoryMb: 16384, GPU: 0, + Architecture: "arm64", }, "a1.4xlarge": { InstanceType: "a1.4xlarge", VCPU: 16, MemoryMb: 32768, GPU: 0, + Architecture: "arm64", }, "a1.large": { InstanceType: "a1.large", VCPU: 2, MemoryMb: 4096, GPU: 0, + Architecture: "arm64", }, "a1.medium": { InstanceType: "a1.medium", VCPU: 1, MemoryMb: 2048, GPU: 0, + Architecture: "arm64", }, "a1.metal": { InstanceType: "a1.metal", VCPU: 16, MemoryMb: 32768, GPU: 0, + Architecture: "arm64", }, "a1.xlarge": { InstanceType: "a1.xlarge", VCPU: 4, MemoryMb: 8192, GPU: 0, + Architecture: "arm64", }, "c1.medium": { InstanceType: "c1.medium", VCPU: 2, MemoryMb: 1740, GPU: 0, + Architecture: "amd64", }, "c1.xlarge": { InstanceType: "c1.xlarge", VCPU: 8, MemoryMb: 7168, GPU: 0, + Architecture: "amd64", }, "c3": { InstanceType: "c3", VCPU: 32, MemoryMb: 0, GPU: 0, + Architecture: "amd64", }, "c3.2xlarge": { InstanceType: "c3.2xlarge", VCPU: 8, MemoryMb: 15360, GPU: 0, + Architecture: "amd64", }, "c3.4xlarge": { InstanceType: "c3.4xlarge", VCPU: 16, MemoryMb: 30720, GPU: 0, + Architecture: "amd64", }, "c3.8xlarge": { InstanceType: "c3.8xlarge", VCPU: 32, MemoryMb: 61440, GPU: 0, + Architecture: "amd64", }, "c3.large": { InstanceType: "c3.large", VCPU: 2, MemoryMb: 3840, GPU: 0, + Architecture: "amd64", }, "c3.xlarge": { InstanceType: "c3.xlarge", VCPU: 4, MemoryMb: 7680, GPU: 0, + Architecture: "amd64", }, "c4": { InstanceType: "c4", VCPU: 36, MemoryMb: 0, GPU: 0, + Architecture: "amd64", }, "c4.2xlarge": { InstanceType: "c4.2xlarge", VCPU: 8, MemoryMb: 15360, GPU: 0, + Architecture: "amd64", }, "c4.4xlarge": { InstanceType: "c4.4xlarge", VCPU: 16, MemoryMb: 30720, GPU: 0, + Architecture: "amd64", }, "c4.8xlarge": { InstanceType: "c4.8xlarge", VCPU: 36, MemoryMb: 61440, GPU: 0, + Architecture: "amd64", }, "c4.large": { InstanceType: "c4.large", VCPU: 2, MemoryMb: 3840, GPU: 0, + Architecture: "amd64", }, "c4.xlarge": { InstanceType: "c4.xlarge", VCPU: 4, MemoryMb: 7680, GPU: 0, + Architecture: "amd64", }, "c5": { InstanceType: "c5", VCPU: 72, MemoryMb: 0, GPU: 0, + Architecture: "amd64", }, "c5.12xlarge": { InstanceType: "c5.12xlarge", VCPU: 48, MemoryMb: 98304, GPU: 0, + Architecture: "amd64", }, "c5.18xlarge": { InstanceType: "c5.18xlarge", VCPU: 72, MemoryMb: 147456, GPU: 0, + Architecture: "amd64", }, "c5.24xlarge": { InstanceType: "c5.24xlarge", VCPU: 96, MemoryMb: 196608, GPU: 0, + Architecture: "amd64", }, "c5.2xlarge": { InstanceType: "c5.2xlarge", VCPU: 8, MemoryMb: 16384, GPU: 0, + Architecture: "amd64", }, "c5.4xlarge": { InstanceType: "c5.4xlarge", VCPU: 16, MemoryMb: 32768, GPU: 0, + Architecture: "amd64", }, "c5.9xlarge": { InstanceType: "c5.9xlarge", VCPU: 36, MemoryMb: 73728, GPU: 0, + Architecture: "amd64", }, "c5.large": { InstanceType: "c5.large", VCPU: 2, MemoryMb: 4096, GPU: 0, + Architecture: "amd64", }, "c5.metal": { InstanceType: "c5.metal", VCPU: 96, MemoryMb: 196608, GPU: 0, + Architecture: "amd64", }, "c5.xlarge": { InstanceType: "c5.xlarge", VCPU: 4, MemoryMb: 8192, GPU: 0, + Architecture: "amd64", }, "c5a.12xlarge": { InstanceType: "c5a.12xlarge", VCPU: 48, MemoryMb: 98304, GPU: 0, + Architecture: "amd64", }, "c5a.16xlarge": { InstanceType: "c5a.16xlarge", VCPU: 64, MemoryMb: 131072, GPU: 0, + Architecture: "amd64", }, "c5a.24xlarge": { InstanceType: "c5a.24xlarge", VCPU: 96, MemoryMb: 196608, GPU: 0, + Architecture: "amd64", }, "c5a.2xlarge": { InstanceType: "c5a.2xlarge", VCPU: 8, MemoryMb: 16384, GPU: 0, + Architecture: "amd64", }, "c5a.4xlarge": { InstanceType: "c5a.4xlarge", VCPU: 16, MemoryMb: 32768, GPU: 0, + Architecture: "amd64", }, "c5a.8xlarge": { InstanceType: "c5a.8xlarge", VCPU: 32, MemoryMb: 65536, GPU: 0, + Architecture: "amd64", }, "c5a.large": { InstanceType: "c5a.large", VCPU: 2, MemoryMb: 4096, GPU: 0, + Architecture: "amd64", }, "c5a.xlarge": { InstanceType: "c5a.xlarge", VCPU: 4, MemoryMb: 8192, GPU: 0, + Architecture: "amd64", }, "c5ad.12xlarge": { InstanceType: "c5ad.12xlarge", VCPU: 48, MemoryMb: 98304, GPU: 0, + Architecture: "amd64", }, "c5ad.16xlarge": { InstanceType: "c5ad.16xlarge", VCPU: 64, MemoryMb: 131072, GPU: 0, + Architecture: "amd64", }, "c5ad.24xlarge": { InstanceType: "c5ad.24xlarge", VCPU: 96, MemoryMb: 196608, GPU: 0, + Architecture: "amd64", }, "c5ad.2xlarge": { InstanceType: "c5ad.2xlarge", VCPU: 8, MemoryMb: 16384, GPU: 0, + Architecture: "amd64", }, "c5ad.4xlarge": { InstanceType: "c5ad.4xlarge", VCPU: 16, MemoryMb: 32768, GPU: 0, + Architecture: "amd64", }, "c5ad.8xlarge": { InstanceType: "c5ad.8xlarge", VCPU: 32, MemoryMb: 65536, GPU: 0, + Architecture: "amd64", }, "c5ad.large": { InstanceType: "c5ad.large", VCPU: 2, MemoryMb: 4096, GPU: 0, + Architecture: "amd64", }, "c5ad.xlarge": { InstanceType: "c5ad.xlarge", VCPU: 4, MemoryMb: 8192, GPU: 0, + Architecture: "amd64", }, "c5d": { InstanceType: "c5d", VCPU: 72, MemoryMb: 0, GPU: 0, + Architecture: "amd64", }, "c5d.12xlarge": { InstanceType: "c5d.12xlarge", VCPU: 48, MemoryMb: 98304, GPU: 0, + Architecture: "amd64", }, "c5d.18xlarge": { InstanceType: "c5d.18xlarge", VCPU: 72, MemoryMb: 147456, GPU: 0, + Architecture: "amd64", }, "c5d.24xlarge": { InstanceType: "c5d.24xlarge", VCPU: 96, MemoryMb: 196608, GPU: 0, + Architecture: "amd64", }, "c5d.2xlarge": { InstanceType: "c5d.2xlarge", VCPU: 8, MemoryMb: 16384, GPU: 0, + Architecture: "amd64", }, "c5d.4xlarge": { InstanceType: "c5d.4xlarge", VCPU: 16, MemoryMb: 32768, GPU: 0, + Architecture: "amd64", }, "c5d.9xlarge": { InstanceType: "c5d.9xlarge", VCPU: 36, MemoryMb: 73728, GPU: 0, + Architecture: "amd64", }, "c5d.large": { InstanceType: "c5d.large", VCPU: 2, MemoryMb: 4096, GPU: 0, + Architecture: "amd64", }, "c5d.metal": { InstanceType: "c5d.metal", VCPU: 96, MemoryMb: 196608, GPU: 0, + Architecture: "amd64", }, "c5d.xlarge": { InstanceType: "c5d.xlarge", VCPU: 4, MemoryMb: 8192, GPU: 0, + Architecture: "amd64", }, "c5n": { InstanceType: "c5n", VCPU: 72, MemoryMb: 0, GPU: 0, + Architecture: "amd64", }, "c5n.18xlarge": { InstanceType: "c5n.18xlarge", VCPU: 72, MemoryMb: 196608, GPU: 0, + Architecture: "amd64", }, "c5n.2xlarge": { InstanceType: "c5n.2xlarge", VCPU: 8, MemoryMb: 21504, GPU: 0, + Architecture: "amd64", }, "c5n.4xlarge": { InstanceType: "c5n.4xlarge", VCPU: 16, MemoryMb: 43008, GPU: 0, + Architecture: "amd64", }, "c5n.9xlarge": { InstanceType: "c5n.9xlarge", VCPU: 36, MemoryMb: 98304, GPU: 0, + Architecture: "amd64", }, "c5n.large": { InstanceType: "c5n.large", VCPU: 2, MemoryMb: 5376, GPU: 0, + Architecture: "amd64", }, "c5n.metal": { InstanceType: "c5n.metal", VCPU: 72, MemoryMb: 196608, GPU: 0, + Architecture: "amd64", }, "c5n.xlarge": { InstanceType: "c5n.xlarge", VCPU: 4, MemoryMb: 10752, GPU: 0, + Architecture: "amd64", }, "c6g": { InstanceType: "c6g", VCPU: 64, MemoryMb: 0, GPU: 0, + Architecture: "arm64", }, "c6g.12xlarge": { InstanceType: "c6g.12xlarge", VCPU: 48, MemoryMb: 98304, GPU: 0, + Architecture: "arm64", }, "c6g.16xlarge": { InstanceType: "c6g.16xlarge", VCPU: 64, MemoryMb: 131072, GPU: 0, + Architecture: "arm64", }, "c6g.2xlarge": { InstanceType: "c6g.2xlarge", VCPU: 8, MemoryMb: 16384, GPU: 0, + Architecture: "arm64", }, "c6g.4xlarge": { InstanceType: "c6g.4xlarge", VCPU: 16, MemoryMb: 32768, GPU: 0, + Architecture: "arm64", }, "c6g.8xlarge": { InstanceType: "c6g.8xlarge", VCPU: 32, MemoryMb: 65536, GPU: 0, + Architecture: "arm64", }, "c6g.large": { InstanceType: "c6g.large", VCPU: 2, MemoryMb: 4096, GPU: 0, + Architecture: "arm64", }, "c6g.medium": { InstanceType: "c6g.medium", VCPU: 1, MemoryMb: 2048, GPU: 0, + Architecture: "arm64", }, "c6g.metal": { InstanceType: "c6g.metal", VCPU: 64, MemoryMb: 131072, GPU: 0, + Architecture: "arm64", }, "c6g.xlarge": { InstanceType: "c6g.xlarge", VCPU: 4, MemoryMb: 8192, GPU: 0, + Architecture: "arm64", }, "c6gd": { InstanceType: "c6gd", VCPU: 64, MemoryMb: 0, GPU: 0, + Architecture: "arm64", }, "c6gd.12xlarge": { InstanceType: "c6gd.12xlarge", VCPU: 48, MemoryMb: 98304, GPU: 0, + Architecture: "arm64", }, "c6gd.16xlarge": { InstanceType: "c6gd.16xlarge", VCPU: 64, MemoryMb: 131072, GPU: 0, + Architecture: "arm64", }, "c6gd.2xlarge": { InstanceType: "c6gd.2xlarge", VCPU: 8, MemoryMb: 16384, GPU: 0, + Architecture: "arm64", }, "c6gd.4xlarge": { InstanceType: "c6gd.4xlarge", VCPU: 16, MemoryMb: 32768, GPU: 0, + Architecture: "arm64", }, "c6gd.8xlarge": { InstanceType: "c6gd.8xlarge", VCPU: 32, MemoryMb: 65536, GPU: 0, + Architecture: "arm64", }, "c6gd.large": { InstanceType: "c6gd.large", VCPU: 2, MemoryMb: 4096, GPU: 0, + Architecture: "arm64", }, "c6gd.medium": { InstanceType: "c6gd.medium", VCPU: 1, MemoryMb: 2048, GPU: 0, + Architecture: "arm64", }, "c6gd.metal": { InstanceType: "c6gd.metal", VCPU: 64, MemoryMb: 131072, GPU: 0, + Architecture: "arm64", }, "c6gd.xlarge": { InstanceType: "c6gd.xlarge", VCPU: 4, MemoryMb: 8192, GPU: 0, + Architecture: "arm64", + }, + "c6gn": { + InstanceType: "c6gn", + VCPU: 64, + MemoryMb: 0, + GPU: 0, + Architecture: "arm64", + }, + "c6gn.12xlarge": { + InstanceType: "c6gn.12xlarge", + VCPU: 48, + MemoryMb: 98304, + GPU: 0, + Architecture: "arm64", + }, + "c6gn.16xlarge": { + InstanceType: "c6gn.16xlarge", + VCPU: 64, + MemoryMb: 131072, + GPU: 0, + Architecture: "arm64", + }, + "c6gn.2xlarge": { + InstanceType: "c6gn.2xlarge", + VCPU: 8, + MemoryMb: 16384, + GPU: 0, + Architecture: "arm64", + }, + "c6gn.4xlarge": { + InstanceType: "c6gn.4xlarge", + VCPU: 16, + MemoryMb: 32768, + GPU: 0, + Architecture: "arm64", + }, + "c6gn.8xlarge": { + InstanceType: "c6gn.8xlarge", + VCPU: 32, + MemoryMb: 65536, + GPU: 0, + Architecture: "arm64", + }, + "c6gn.large": { + InstanceType: "c6gn.large", + VCPU: 2, + MemoryMb: 4096, + GPU: 0, + Architecture: "arm64", + }, + "c6gn.medium": { + InstanceType: "c6gn.medium", + VCPU: 1, + MemoryMb: 2048, + GPU: 0, + Architecture: "arm64", + }, + "c6gn.metal": { + InstanceType: "c6gn.metal", + VCPU: 64, + MemoryMb: 131072, + GPU: 0, + Architecture: "arm64", + }, + "c6gn.xlarge": { + InstanceType: "c6gn.xlarge", + VCPU: 4, + MemoryMb: 8192, + GPU: 0, + Architecture: "arm64", }, "cc2.8xlarge": { InstanceType: "cc2.8xlarge", VCPU: 32, MemoryMb: 61952, GPU: 0, + Architecture: "amd64", }, "cr1.8xlarge": { InstanceType: "cr1.8xlarge", VCPU: 32, MemoryMb: 249856, GPU: 0, + Architecture: "amd64", }, "d2": { InstanceType: "d2", VCPU: 36, MemoryMb: 0, GPU: 0, + Architecture: "amd64", }, "d2.2xlarge": { InstanceType: "d2.2xlarge", VCPU: 8, MemoryMb: 62464, GPU: 0, + Architecture: "amd64", }, "d2.4xlarge": { InstanceType: "d2.4xlarge", VCPU: 16, MemoryMb: 124928, GPU: 0, + Architecture: "amd64", }, "d2.8xlarge": { InstanceType: "d2.8xlarge", VCPU: 36, MemoryMb: 249856, GPU: 0, + Architecture: "amd64", }, "d2.xlarge": { InstanceType: "d2.xlarge", VCPU: 4, MemoryMb: 31232, GPU: 0, + Architecture: "amd64", }, "d3.2xlarge": { InstanceType: "d3.2xlarge", VCPU: 8, MemoryMb: 65536, GPU: 0, + Architecture: "amd64", }, "d3.4xlarge": { InstanceType: "d3.4xlarge", VCPU: 16, MemoryMb: 131072, GPU: 0, + Architecture: "amd64", }, "d3.8xlarge": { InstanceType: "d3.8xlarge", VCPU: 32, MemoryMb: 262144, GPU: 0, + Architecture: "amd64", }, "d3.xlarge": { InstanceType: "d3.xlarge", VCPU: 4, MemoryMb: 32768, GPU: 0, + Architecture: "amd64", }, "d3en.12xlarge": { InstanceType: "d3en.12xlarge", VCPU: 48, MemoryMb: 196608, GPU: 0, + Architecture: "amd64", }, "d3en.2xlarge": { InstanceType: "d3en.2xlarge", VCPU: 8, MemoryMb: 32768, GPU: 0, + Architecture: "amd64", }, "d3en.4xlarge": { InstanceType: "d3en.4xlarge", VCPU: 16, MemoryMb: 65536, GPU: 0, + Architecture: "amd64", }, "d3en.6xlarge": { InstanceType: "d3en.6xlarge", VCPU: 24, MemoryMb: 98304, GPU: 0, + Architecture: "amd64", }, "d3en.8xlarge": { InstanceType: "d3en.8xlarge", VCPU: 32, MemoryMb: 131072, GPU: 0, + Architecture: "amd64", }, "d3en.xlarge": { InstanceType: "d3en.xlarge", VCPU: 4, MemoryMb: 16384, GPU: 0, + Architecture: "amd64", }, "f1": { InstanceType: "f1", VCPU: 64, MemoryMb: 0, GPU: 0, + Architecture: "amd64", }, "f1.16xlarge": { InstanceType: "f1.16xlarge", VCPU: 64, MemoryMb: 999424, GPU: 0, + Architecture: "amd64", }, "f1.2xlarge": { InstanceType: "f1.2xlarge", VCPU: 8, MemoryMb: 124928, GPU: 0, + Architecture: "amd64", }, "f1.4xlarge": { InstanceType: "f1.4xlarge", VCPU: 16, MemoryMb: 249856, GPU: 0, + Architecture: "amd64", }, "g2": { InstanceType: "g2", VCPU: 32, MemoryMb: 0, GPU: 4, + Architecture: "amd64", }, "g2.2xlarge": { InstanceType: "g2.2xlarge", VCPU: 8, MemoryMb: 15360, GPU: 1, + Architecture: "amd64", }, "g2.8xlarge": { InstanceType: "g2.8xlarge", VCPU: 32, MemoryMb: 61440, GPU: 4, + Architecture: "amd64", }, "g3": { InstanceType: "g3", VCPU: 64, MemoryMb: 0, GPU: 4, + Architecture: "amd64", }, "g3.16xlarge": { InstanceType: "g3.16xlarge", VCPU: 64, MemoryMb: 499712, GPU: 4, + Architecture: "amd64", }, "g3.4xlarge": { InstanceType: "g3.4xlarge", VCPU: 16, MemoryMb: 124928, GPU: 1, + Architecture: "amd64", }, "g3.8xlarge": { InstanceType: "g3.8xlarge", VCPU: 32, MemoryMb: 249856, GPU: 2, + Architecture: "amd64", }, "g3s.xlarge": { InstanceType: "g3s.xlarge", VCPU: 4, MemoryMb: 31232, GPU: 1, + Architecture: "amd64", + }, + "g4ad": { + InstanceType: "g4ad", + VCPU: 192, + MemoryMb: 0, + GPU: 2, + Architecture: "amd64", + }, + "g4ad.16xlarge": { + InstanceType: "g4ad.16xlarge", + VCPU: 64, + MemoryMb: 262144, + GPU: 4, + Architecture: "amd64", + }, + "g4ad.4xlarge": { + InstanceType: "g4ad.4xlarge", + VCPU: 16, + MemoryMb: 65536, + GPU: 1, + Architecture: "amd64", + }, + "g4ad.8xlarge": { + InstanceType: "g4ad.8xlarge", + VCPU: 32, + MemoryMb: 131072, + GPU: 2, + Architecture: "amd64", }, "g4dn": { InstanceType: "g4dn", VCPU: 96, MemoryMb: 0, GPU: 8, + Architecture: "amd64", }, "g4dn.12xlarge": { InstanceType: "g4dn.12xlarge", VCPU: 48, MemoryMb: 196608, GPU: 4, + Architecture: "amd64", }, "g4dn.16xlarge": { InstanceType: "g4dn.16xlarge", VCPU: 64, MemoryMb: 262144, GPU: 1, + Architecture: "amd64", }, "g4dn.2xlarge": { InstanceType: "g4dn.2xlarge", VCPU: 8, MemoryMb: 32768, GPU: 1, + Architecture: "amd64", }, "g4dn.4xlarge": { InstanceType: "g4dn.4xlarge", VCPU: 16, MemoryMb: 65536, GPU: 1, + Architecture: "amd64", }, "g4dn.8xlarge": { InstanceType: "g4dn.8xlarge", VCPU: 32, MemoryMb: 131072, GPU: 1, + Architecture: "amd64", }, "g4dn.metal": { InstanceType: "g4dn.metal", VCPU: 96, MemoryMb: 393216, GPU: 8, + Architecture: "amd64", }, "g4dn.xlarge": { InstanceType: "g4dn.xlarge", VCPU: 4, MemoryMb: 16384, GPU: 1, + Architecture: "amd64", }, "h1": { InstanceType: "h1", VCPU: 64, MemoryMb: 0, GPU: 0, + Architecture: "amd64", }, "h1.16xlarge": { InstanceType: "h1.16xlarge", VCPU: 64, MemoryMb: 262144, GPU: 0, + Architecture: "amd64", }, "h1.2xlarge": { InstanceType: "h1.2xlarge", VCPU: 8, MemoryMb: 32768, GPU: 0, + Architecture: "amd64", }, "h1.4xlarge": { InstanceType: "h1.4xlarge", VCPU: 16, MemoryMb: 65536, GPU: 0, + Architecture: "amd64", }, "h1.8xlarge": { InstanceType: "h1.8xlarge", VCPU: 32, MemoryMb: 131072, GPU: 0, + Architecture: "amd64", }, "hs1.8xlarge": { InstanceType: "hs1.8xlarge", VCPU: 16, MemoryMb: 119808, GPU: 0, + Architecture: "amd64", }, "i2": { InstanceType: "i2", VCPU: 32, MemoryMb: 0, GPU: 0, + Architecture: "amd64", }, "i2.2xlarge": { InstanceType: "i2.2xlarge", VCPU: 8, MemoryMb: 62464, GPU: 0, + Architecture: "amd64", }, "i2.4xlarge": { InstanceType: "i2.4xlarge", VCPU: 16, MemoryMb: 124928, GPU: 0, + Architecture: "amd64", }, "i2.8xlarge": { InstanceType: "i2.8xlarge", VCPU: 32, MemoryMb: 249856, GPU: 0, + Architecture: "amd64", }, "i2.xlarge": { InstanceType: "i2.xlarge", VCPU: 4, MemoryMb: 31232, GPU: 0, + Architecture: "amd64", }, "i3": { InstanceType: "i3", VCPU: 64, MemoryMb: 0, GPU: 0, + Architecture: "amd64", }, "i3.16xlarge": { InstanceType: "i3.16xlarge", VCPU: 64, MemoryMb: 499712, GPU: 0, + Architecture: "amd64", }, "i3.2xlarge": { InstanceType: "i3.2xlarge", VCPU: 8, MemoryMb: 62464, GPU: 0, + Architecture: "amd64", }, "i3.4xlarge": { InstanceType: "i3.4xlarge", VCPU: 16, MemoryMb: 124928, GPU: 0, + Architecture: "amd64", }, "i3.8xlarge": { InstanceType: "i3.8xlarge", VCPU: 32, MemoryMb: 249856, GPU: 0, + Architecture: "amd64", }, "i3.large": { InstanceType: "i3.large", VCPU: 2, MemoryMb: 15616, GPU: 0, + Architecture: "amd64", }, "i3.metal": { InstanceType: "i3.metal", VCPU: 64, MemoryMb: 524288, GPU: 0, + Architecture: "amd64", }, "i3.xlarge": { InstanceType: "i3.xlarge", VCPU: 4, MemoryMb: 31232, GPU: 0, + Architecture: "amd64", }, "i3en": { InstanceType: "i3en", VCPU: 96, MemoryMb: 0, GPU: 0, + Architecture: "amd64", }, "i3en.12xlarge": { InstanceType: "i3en.12xlarge", VCPU: 48, MemoryMb: 393216, GPU: 0, + Architecture: "amd64", }, "i3en.24xlarge": { InstanceType: "i3en.24xlarge", VCPU: 96, MemoryMb: 786432, GPU: 0, + Architecture: "amd64", }, "i3en.2xlarge": { InstanceType: "i3en.2xlarge", VCPU: 8, MemoryMb: 65536, GPU: 0, + Architecture: "amd64", }, "i3en.3xlarge": { InstanceType: "i3en.3xlarge", VCPU: 12, MemoryMb: 98304, GPU: 0, + Architecture: "amd64", }, "i3en.6xlarge": { InstanceType: "i3en.6xlarge", VCPU: 24, MemoryMb: 196608, GPU: 0, + Architecture: "amd64", }, "i3en.large": { InstanceType: "i3en.large", VCPU: 2, MemoryMb: 16384, GPU: 0, + Architecture: "amd64", }, "i3en.metal": { InstanceType: "i3en.metal", VCPU: 96, MemoryMb: 786432, GPU: 0, + Architecture: "amd64", }, "i3en.xlarge": { InstanceType: "i3en.xlarge", VCPU: 4, MemoryMb: 32768, GPU: 0, + Architecture: "amd64", }, "i3p.16xlarge": { InstanceType: "i3p.16xlarge", VCPU: 64, MemoryMb: 499712, GPU: 0, + Architecture: "amd64", }, "inf1": { InstanceType: "inf1", VCPU: 96, MemoryMb: 0, GPU: 0, + Architecture: "amd64", }, "inf1.24xlarge": { InstanceType: "inf1.24xlarge", VCPU: 96, MemoryMb: 196608, GPU: 0, + Architecture: "amd64", }, "inf1.2xlarge": { InstanceType: "inf1.2xlarge", VCPU: 8, MemoryMb: 16384, GPU: 0, + Architecture: "amd64", }, "inf1.6xlarge": { InstanceType: "inf1.6xlarge", VCPU: 24, MemoryMb: 49152, GPU: 0, + Architecture: "amd64", }, "inf1.xlarge": { InstanceType: "inf1.xlarge", VCPU: 4, MemoryMb: 8192, GPU: 0, + Architecture: "amd64", }, "m1.large": { InstanceType: "m1.large", VCPU: 2, MemoryMb: 7680, GPU: 0, + Architecture: "amd64", }, "m1.medium": { InstanceType: "m1.medium", VCPU: 1, MemoryMb: 3840, GPU: 0, + Architecture: "amd64", }, "m1.small": { InstanceType: "m1.small", VCPU: 1, MemoryMb: 1740, GPU: 0, + Architecture: "amd64", }, "m1.xlarge": { InstanceType: "m1.xlarge", VCPU: 4, MemoryMb: 15360, GPU: 0, + Architecture: "amd64", }, "m2.2xlarge": { InstanceType: "m2.2xlarge", VCPU: 4, MemoryMb: 35020, GPU: 0, + Architecture: "amd64", }, "m2.4xlarge": { InstanceType: "m2.4xlarge", VCPU: 8, MemoryMb: 70041, GPU: 0, + Architecture: "amd64", }, "m2.xlarge": { InstanceType: "m2.xlarge", VCPU: 2, MemoryMb: 17510, GPU: 0, + Architecture: "amd64", }, "m3": { InstanceType: "m3", VCPU: 8, MemoryMb: 0, GPU: 0, + Architecture: "amd64", }, "m3.2xlarge": { InstanceType: "m3.2xlarge", VCPU: 8, MemoryMb: 30720, GPU: 0, + Architecture: "amd64", }, "m3.large": { InstanceType: "m3.large", VCPU: 2, MemoryMb: 7680, GPU: 0, + Architecture: "amd64", }, "m3.medium": { InstanceType: "m3.medium", VCPU: 1, MemoryMb: 3840, GPU: 0, + Architecture: "amd64", }, "m3.xlarge": { InstanceType: "m3.xlarge", VCPU: 4, MemoryMb: 15360, GPU: 0, + Architecture: "amd64", }, "m4": { InstanceType: "m4", VCPU: 40, MemoryMb: 0, GPU: 0, + Architecture: "amd64", }, "m4.10xlarge": { InstanceType: "m4.10xlarge", VCPU: 40, MemoryMb: 163840, GPU: 0, + Architecture: "amd64", }, "m4.16xlarge": { InstanceType: "m4.16xlarge", VCPU: 64, MemoryMb: 262144, GPU: 0, + Architecture: "amd64", }, "m4.2xlarge": { InstanceType: "m4.2xlarge", VCPU: 8, MemoryMb: 32768, GPU: 0, + Architecture: "amd64", }, "m4.4xlarge": { InstanceType: "m4.4xlarge", VCPU: 16, MemoryMb: 65536, GPU: 0, + Architecture: "amd64", }, "m4.large": { InstanceType: "m4.large", VCPU: 2, MemoryMb: 8192, GPU: 0, + Architecture: "amd64", }, "m4.xlarge": { InstanceType: "m4.xlarge", VCPU: 4, MemoryMb: 16384, GPU: 0, + Architecture: "amd64", }, "m5": { InstanceType: "m5", VCPU: 96, MemoryMb: 0, GPU: 0, + Architecture: "amd64", }, "m5.12xlarge": { InstanceType: "m5.12xlarge", VCPU: 48, MemoryMb: 196608, GPU: 0, + Architecture: "amd64", }, "m5.16xlarge": { InstanceType: "m5.16xlarge", VCPU: 64, MemoryMb: 262144, GPU: 0, + Architecture: "amd64", }, "m5.24xlarge": { InstanceType: "m5.24xlarge", VCPU: 96, MemoryMb: 393216, GPU: 0, + Architecture: "amd64", }, "m5.2xlarge": { InstanceType: "m5.2xlarge", VCPU: 8, MemoryMb: 32768, GPU: 0, + Architecture: "amd64", }, "m5.4xlarge": { InstanceType: "m5.4xlarge", VCPU: 16, MemoryMb: 65536, GPU: 0, + Architecture: "amd64", }, "m5.8xlarge": { InstanceType: "m5.8xlarge", VCPU: 32, MemoryMb: 131072, GPU: 0, + Architecture: "amd64", }, "m5.large": { InstanceType: "m5.large", VCPU: 2, MemoryMb: 8192, GPU: 0, + Architecture: "amd64", }, "m5.metal": { InstanceType: "m5.metal", VCPU: 96, MemoryMb: 393216, GPU: 0, + Architecture: "amd64", }, "m5.xlarge": { InstanceType: "m5.xlarge", VCPU: 4, MemoryMb: 16384, GPU: 0, + Architecture: "amd64", }, "m5a.12xlarge": { InstanceType: "m5a.12xlarge", VCPU: 48, MemoryMb: 196608, GPU: 0, + Architecture: "amd64", }, "m5a.16xlarge": { InstanceType: "m5a.16xlarge", VCPU: 64, MemoryMb: 262144, GPU: 0, + Architecture: "amd64", }, "m5a.24xlarge": { InstanceType: "m5a.24xlarge", VCPU: 96, MemoryMb: 393216, GPU: 0, + Architecture: "amd64", }, "m5a.2xlarge": { InstanceType: "m5a.2xlarge", VCPU: 8, MemoryMb: 32768, GPU: 0, + Architecture: "amd64", }, "m5a.4xlarge": { InstanceType: "m5a.4xlarge", VCPU: 16, MemoryMb: 65536, GPU: 0, + Architecture: "amd64", }, "m5a.8xlarge": { InstanceType: "m5a.8xlarge", VCPU: 32, MemoryMb: 131072, GPU: 0, + Architecture: "amd64", }, "m5a.large": { InstanceType: "m5a.large", VCPU: 2, MemoryMb: 8192, GPU: 0, + Architecture: "amd64", }, "m5a.xlarge": { InstanceType: "m5a.xlarge", VCPU: 4, MemoryMb: 16384, GPU: 0, + Architecture: "amd64", }, "m5ad.12xlarge": { InstanceType: "m5ad.12xlarge", VCPU: 48, MemoryMb: 196608, GPU: 0, + Architecture: "amd64", }, "m5ad.16xlarge": { InstanceType: "m5ad.16xlarge", VCPU: 64, MemoryMb: 262144, GPU: 0, + Architecture: "amd64", }, "m5ad.24xlarge": { InstanceType: "m5ad.24xlarge", VCPU: 96, MemoryMb: 393216, GPU: 0, + Architecture: "amd64", }, "m5ad.2xlarge": { InstanceType: "m5ad.2xlarge", VCPU: 8, MemoryMb: 32768, GPU: 0, + Architecture: "amd64", }, "m5ad.4xlarge": { InstanceType: "m5ad.4xlarge", VCPU: 16, MemoryMb: 65536, GPU: 0, + Architecture: "amd64", }, "m5ad.8xlarge": { InstanceType: "m5ad.8xlarge", VCPU: 32, MemoryMb: 131072, GPU: 0, + Architecture: "amd64", }, "m5ad.large": { InstanceType: "m5ad.large", VCPU: 2, MemoryMb: 8192, GPU: 0, + Architecture: "amd64", }, "m5ad.xlarge": { InstanceType: "m5ad.xlarge", VCPU: 4, MemoryMb: 16384, GPU: 0, + Architecture: "amd64", }, "m5d": { InstanceType: "m5d", VCPU: 96, MemoryMb: 0, GPU: 0, + Architecture: "amd64", }, "m5d.12xlarge": { InstanceType: "m5d.12xlarge", VCPU: 48, MemoryMb: 196608, GPU: 0, + Architecture: "amd64", }, "m5d.16xlarge": { InstanceType: "m5d.16xlarge", VCPU: 64, MemoryMb: 262144, GPU: 0, + Architecture: "amd64", }, "m5d.24xlarge": { InstanceType: "m5d.24xlarge", VCPU: 96, MemoryMb: 393216, GPU: 0, + Architecture: "amd64", }, "m5d.2xlarge": { InstanceType: "m5d.2xlarge", VCPU: 8, MemoryMb: 32768, GPU: 0, + Architecture: "amd64", }, "m5d.4xlarge": { InstanceType: "m5d.4xlarge", VCPU: 16, MemoryMb: 65536, GPU: 0, + Architecture: "amd64", }, "m5d.8xlarge": { InstanceType: "m5d.8xlarge", VCPU: 32, MemoryMb: 131072, GPU: 0, + Architecture: "amd64", }, "m5d.large": { InstanceType: "m5d.large", VCPU: 2, MemoryMb: 8192, GPU: 0, + Architecture: "amd64", }, "m5d.metal": { InstanceType: "m5d.metal", VCPU: 96, MemoryMb: 393216, GPU: 0, + Architecture: "amd64", }, "m5d.xlarge": { InstanceType: "m5d.xlarge", VCPU: 4, MemoryMb: 16384, GPU: 0, + Architecture: "amd64", }, "m5dn": { InstanceType: "m5dn", VCPU: 96, MemoryMb: 0, GPU: 0, + Architecture: "amd64", }, "m5dn.12xlarge": { InstanceType: "m5dn.12xlarge", VCPU: 48, MemoryMb: 196608, GPU: 0, + Architecture: "amd64", }, "m5dn.16xlarge": { InstanceType: "m5dn.16xlarge", VCPU: 64, MemoryMb: 262144, GPU: 0, + Architecture: "amd64", }, "m5dn.24xlarge": { InstanceType: "m5dn.24xlarge", VCPU: 96, MemoryMb: 393216, GPU: 0, + Architecture: "amd64", }, "m5dn.2xlarge": { InstanceType: "m5dn.2xlarge", VCPU: 8, MemoryMb: 32768, GPU: 0, + Architecture: "amd64", }, "m5dn.4xlarge": { InstanceType: "m5dn.4xlarge", VCPU: 16, MemoryMb: 65536, GPU: 0, + Architecture: "amd64", }, "m5dn.8xlarge": { InstanceType: "m5dn.8xlarge", VCPU: 32, MemoryMb: 131072, GPU: 0, + Architecture: "amd64", }, "m5dn.large": { InstanceType: "m5dn.large", VCPU: 2, MemoryMb: 8192, GPU: 0, + Architecture: "amd64", }, "m5dn.metal": { InstanceType: "m5dn.metal", VCPU: 96, MemoryMb: 393216, GPU: 0, + Architecture: "amd64", }, "m5dn.xlarge": { InstanceType: "m5dn.xlarge", VCPU: 4, MemoryMb: 16384, GPU: 0, + Architecture: "amd64", }, "m5n": { InstanceType: "m5n", VCPU: 96, MemoryMb: 0, GPU: 0, + Architecture: "amd64", }, "m5n.12xlarge": { InstanceType: "m5n.12xlarge", VCPU: 48, MemoryMb: 196608, GPU: 0, + Architecture: "amd64", }, "m5n.16xlarge": { InstanceType: "m5n.16xlarge", VCPU: 64, MemoryMb: 262144, GPU: 0, + Architecture: "amd64", }, "m5n.24xlarge": { InstanceType: "m5n.24xlarge", VCPU: 96, MemoryMb: 393216, GPU: 0, + Architecture: "amd64", }, "m5n.2xlarge": { InstanceType: "m5n.2xlarge", VCPU: 8, MemoryMb: 32768, GPU: 0, + Architecture: "amd64", }, "m5n.4xlarge": { InstanceType: "m5n.4xlarge", VCPU: 16, MemoryMb: 65536, GPU: 0, + Architecture: "amd64", }, "m5n.8xlarge": { InstanceType: "m5n.8xlarge", VCPU: 32, MemoryMb: 131072, GPU: 0, + Architecture: "amd64", }, "m5n.large": { InstanceType: "m5n.large", VCPU: 2, MemoryMb: 8192, GPU: 0, + Architecture: "amd64", }, "m5n.metal": { InstanceType: "m5n.metal", VCPU: 96, MemoryMb: 393216, GPU: 0, + Architecture: "amd64", }, "m5n.xlarge": { InstanceType: "m5n.xlarge", VCPU: 4, MemoryMb: 16384, GPU: 0, + Architecture: "amd64", }, "m5zn": { InstanceType: "m5zn", VCPU: 48, MemoryMb: 0, GPU: 0, + Architecture: "amd64", }, "m5zn.12xlarge": { InstanceType: "m5zn.12xlarge", VCPU: 48, MemoryMb: 196608, GPU: 0, + Architecture: "amd64", }, "m5zn.2xlarge": { InstanceType: "m5zn.2xlarge", VCPU: 8, MemoryMb: 32768, GPU: 0, + Architecture: "amd64", }, "m5zn.3xlarge": { InstanceType: "m5zn.3xlarge", VCPU: 12, MemoryMb: 49152, GPU: 0, + Architecture: "amd64", }, "m5zn.6xlarge": { InstanceType: "m5zn.6xlarge", VCPU: 24, MemoryMb: 98304, GPU: 0, + Architecture: "amd64", }, "m5zn.large": { InstanceType: "m5zn.large", VCPU: 2, MemoryMb: 8192, GPU: 0, + Architecture: "amd64", }, "m5zn.metal": { InstanceType: "m5zn.metal", VCPU: 48, MemoryMb: 196608, GPU: 0, + Architecture: "amd64", }, "m5zn.xlarge": { InstanceType: "m5zn.xlarge", VCPU: 4, MemoryMb: 16384, GPU: 0, + Architecture: "amd64", }, "m6g": { InstanceType: "m6g", VCPU: 64, MemoryMb: 0, GPU: 0, + Architecture: "arm64", }, "m6g.12xlarge": { InstanceType: "m6g.12xlarge", VCPU: 48, MemoryMb: 196608, GPU: 0, + Architecture: "arm64", }, "m6g.16xlarge": { InstanceType: "m6g.16xlarge", VCPU: 64, MemoryMb: 262144, GPU: 0, + Architecture: "arm64", }, "m6g.2xlarge": { InstanceType: "m6g.2xlarge", VCPU: 8, MemoryMb: 32768, GPU: 0, + Architecture: "arm64", }, "m6g.4xlarge": { InstanceType: "m6g.4xlarge", VCPU: 16, MemoryMb: 65536, GPU: 0, + Architecture: "arm64", }, "m6g.8xlarge": { InstanceType: "m6g.8xlarge", VCPU: 32, MemoryMb: 131072, GPU: 0, + Architecture: "arm64", }, "m6g.large": { InstanceType: "m6g.large", VCPU: 2, MemoryMb: 8192, GPU: 0, + Architecture: "arm64", }, "m6g.medium": { InstanceType: "m6g.medium", VCPU: 1, MemoryMb: 4096, GPU: 0, + Architecture: "arm64", }, "m6g.metal": { InstanceType: "m6g.metal", VCPU: 64, MemoryMb: 262144, GPU: 0, + Architecture: "arm64", }, "m6g.xlarge": { InstanceType: "m6g.xlarge", VCPU: 4, MemoryMb: 16384, GPU: 0, + Architecture: "arm64", }, "m6gd": { InstanceType: "m6gd", VCPU: 64, MemoryMb: 0, GPU: 0, + Architecture: "arm64", }, "m6gd.12xlarge": { InstanceType: "m6gd.12xlarge", VCPU: 48, MemoryMb: 196608, GPU: 0, + Architecture: "arm64", }, "m6gd.16xlarge": { InstanceType: "m6gd.16xlarge", VCPU: 64, MemoryMb: 262144, GPU: 0, + Architecture: "arm64", }, "m6gd.2xlarge": { InstanceType: "m6gd.2xlarge", VCPU: 8, MemoryMb: 32768, GPU: 0, + Architecture: "arm64", }, "m6gd.4xlarge": { InstanceType: "m6gd.4xlarge", VCPU: 16, MemoryMb: 65536, GPU: 0, + Architecture: "arm64", }, "m6gd.8xlarge": { InstanceType: "m6gd.8xlarge", VCPU: 32, MemoryMb: 131072, GPU: 0, + Architecture: "arm64", }, "m6gd.large": { InstanceType: "m6gd.large", VCPU: 2, MemoryMb: 8192, GPU: 0, + Architecture: "arm64", }, "m6gd.medium": { InstanceType: "m6gd.medium", VCPU: 1, MemoryMb: 4096, GPU: 0, + Architecture: "arm64", }, "m6gd.metal": { InstanceType: "m6gd.metal", VCPU: 64, MemoryMb: 262144, GPU: 0, + Architecture: "arm64", }, "m6gd.xlarge": { InstanceType: "m6gd.xlarge", VCPU: 4, MemoryMb: 16384, GPU: 0, + Architecture: "arm64", }, "mac1": { InstanceType: "mac1", VCPU: 12, MemoryMb: 0, GPU: 0, + Architecture: "amd64", }, "mac1.metal": { InstanceType: "mac1.metal", VCPU: 12, MemoryMb: 32768, GPU: 0, + Architecture: "amd64", }, "p2": { InstanceType: "p2", VCPU: 64, MemoryMb: 0, GPU: 16, + Architecture: "amd64", }, "p2.16xlarge": { InstanceType: "p2.16xlarge", VCPU: 64, MemoryMb: 749568, GPU: 16, + Architecture: "amd64", }, "p2.8xlarge": { InstanceType: "p2.8xlarge", VCPU: 32, MemoryMb: 499712, GPU: 8, + Architecture: "amd64", }, "p2.xlarge": { InstanceType: "p2.xlarge", VCPU: 4, MemoryMb: 62464, GPU: 1, + Architecture: "amd64", }, "p3": { InstanceType: "p3", VCPU: 64, MemoryMb: 0, GPU: 8, + Architecture: "amd64", }, "p3.16xlarge": { InstanceType: "p3.16xlarge", VCPU: 64, MemoryMb: 499712, GPU: 8, + Architecture: "amd64", }, "p3.2xlarge": { InstanceType: "p3.2xlarge", VCPU: 8, MemoryMb: 62464, GPU: 1, + Architecture: "amd64", }, "p3.8xlarge": { InstanceType: "p3.8xlarge", VCPU: 32, MemoryMb: 249856, GPU: 4, + Architecture: "amd64", }, "p3dn": { InstanceType: "p3dn", VCPU: 96, MemoryMb: 0, GPU: 8, + Architecture: "amd64", }, "p3dn.24xlarge": { InstanceType: "p3dn.24xlarge", VCPU: 96, MemoryMb: 786432, GPU: 8, + Architecture: "amd64", + }, + "p4d": { + InstanceType: "p4d", + VCPU: 96, + MemoryMb: 0, + GPU: 8, + Architecture: "amd64", }, "p4d.24xlarge": { InstanceType: "p4d.24xlarge", VCPU: 96, MemoryMb: 1179648, GPU: 8, + Architecture: "amd64", }, "r3": { InstanceType: "r3", VCPU: 32, MemoryMb: 0, GPU: 0, + Architecture: "amd64", }, "r3.2xlarge": { InstanceType: "r3.2xlarge", VCPU: 8, MemoryMb: 62464, GPU: 0, + Architecture: "amd64", }, "r3.4xlarge": { InstanceType: "r3.4xlarge", VCPU: 16, MemoryMb: 124928, GPU: 0, + Architecture: "amd64", }, "r3.8xlarge": { InstanceType: "r3.8xlarge", VCPU: 32, MemoryMb: 249856, GPU: 0, + Architecture: "amd64", }, "r3.large": { InstanceType: "r3.large", VCPU: 2, MemoryMb: 15616, GPU: 0, + Architecture: "amd64", }, "r3.xlarge": { InstanceType: "r3.xlarge", VCPU: 4, MemoryMb: 31232, GPU: 0, + Architecture: "amd64", }, "r4": { InstanceType: "r4", VCPU: 64, MemoryMb: 0, GPU: 0, + Architecture: "amd64", }, "r4.16xlarge": { InstanceType: "r4.16xlarge", VCPU: 64, MemoryMb: 499712, GPU: 0, + Architecture: "amd64", }, "r4.2xlarge": { InstanceType: "r4.2xlarge", VCPU: 8, MemoryMb: 62464, GPU: 0, + Architecture: "amd64", }, "r4.4xlarge": { InstanceType: "r4.4xlarge", VCPU: 16, MemoryMb: 124928, GPU: 0, + Architecture: "amd64", }, "r4.8xlarge": { InstanceType: "r4.8xlarge", VCPU: 32, MemoryMb: 249856, GPU: 0, + Architecture: "amd64", }, "r4.large": { InstanceType: "r4.large", VCPU: 2, MemoryMb: 15616, GPU: 0, + Architecture: "amd64", }, "r4.xlarge": { InstanceType: "r4.xlarge", VCPU: 4, MemoryMb: 31232, GPU: 0, + Architecture: "amd64", }, "r5": { InstanceType: "r5", VCPU: 96, MemoryMb: 0, GPU: 0, + Architecture: "amd64", }, "r5.12xlarge": { InstanceType: "r5.12xlarge", VCPU: 48, MemoryMb: 393216, GPU: 0, + Architecture: "amd64", }, "r5.16xlarge": { InstanceType: "r5.16xlarge", VCPU: 64, MemoryMb: 524288, GPU: 0, + Architecture: "amd64", }, "r5.24xlarge": { InstanceType: "r5.24xlarge", VCPU: 96, MemoryMb: 786432, GPU: 0, + Architecture: "amd64", }, "r5.2xlarge": { InstanceType: "r5.2xlarge", VCPU: 8, MemoryMb: 65536, GPU: 0, + Architecture: "amd64", }, "r5.4xlarge": { InstanceType: "r5.4xlarge", VCPU: 16, MemoryMb: 131072, GPU: 0, + Architecture: "amd64", }, "r5.8xlarge": { InstanceType: "r5.8xlarge", VCPU: 32, MemoryMb: 262144, GPU: 0, + Architecture: "amd64", }, "r5.large": { InstanceType: "r5.large", VCPU: 2, MemoryMb: 16384, GPU: 0, + Architecture: "amd64", }, "r5.metal": { InstanceType: "r5.metal", VCPU: 96, MemoryMb: 786432, GPU: 0, + Architecture: "amd64", }, "r5.xlarge": { InstanceType: "r5.xlarge", VCPU: 4, MemoryMb: 32768, GPU: 0, + Architecture: "amd64", }, "r5a.12xlarge": { InstanceType: "r5a.12xlarge", VCPU: 48, MemoryMb: 393216, GPU: 0, + Architecture: "amd64", }, "r5a.16xlarge": { InstanceType: "r5a.16xlarge", VCPU: 64, MemoryMb: 524288, GPU: 0, + Architecture: "amd64", }, "r5a.24xlarge": { InstanceType: "r5a.24xlarge", VCPU: 96, MemoryMb: 786432, GPU: 0, + Architecture: "amd64", }, "r5a.2xlarge": { InstanceType: "r5a.2xlarge", VCPU: 8, MemoryMb: 65536, GPU: 0, + Architecture: "amd64", }, "r5a.4xlarge": { InstanceType: "r5a.4xlarge", VCPU: 16, MemoryMb: 131072, GPU: 0, + Architecture: "amd64", }, "r5a.8xlarge": { InstanceType: "r5a.8xlarge", VCPU: 32, MemoryMb: 262144, GPU: 0, + Architecture: "amd64", }, "r5a.large": { InstanceType: "r5a.large", VCPU: 2, MemoryMb: 16384, GPU: 0, + Architecture: "amd64", }, "r5a.xlarge": { InstanceType: "r5a.xlarge", VCPU: 4, MemoryMb: 32768, GPU: 0, + Architecture: "amd64", }, "r5ad.12xlarge": { InstanceType: "r5ad.12xlarge", VCPU: 48, MemoryMb: 393216, GPU: 0, + Architecture: "amd64", }, "r5ad.16xlarge": { InstanceType: "r5ad.16xlarge", VCPU: 64, MemoryMb: 524288, GPU: 0, + Architecture: "amd64", }, "r5ad.24xlarge": { InstanceType: "r5ad.24xlarge", VCPU: 96, MemoryMb: 786432, GPU: 0, + Architecture: "amd64", }, "r5ad.2xlarge": { InstanceType: "r5ad.2xlarge", VCPU: 8, MemoryMb: 65536, GPU: 0, + Architecture: "amd64", }, "r5ad.4xlarge": { InstanceType: "r5ad.4xlarge", VCPU: 16, MemoryMb: 131072, GPU: 0, + Architecture: "amd64", }, "r5ad.8xlarge": { InstanceType: "r5ad.8xlarge", VCPU: 32, MemoryMb: 262144, GPU: 0, + Architecture: "amd64", }, "r5ad.large": { InstanceType: "r5ad.large", VCPU: 2, MemoryMb: 16384, GPU: 0, + Architecture: "amd64", }, "r5ad.xlarge": { InstanceType: "r5ad.xlarge", VCPU: 4, MemoryMb: 32768, GPU: 0, + Architecture: "amd64", }, "r5b": { InstanceType: "r5b", VCPU: 96, MemoryMb: 0, GPU: 0, + Architecture: "amd64", }, "r5b.12xlarge": { InstanceType: "r5b.12xlarge", VCPU: 48, MemoryMb: 393216, GPU: 0, + Architecture: "amd64", }, "r5b.16xlarge": { InstanceType: "r5b.16xlarge", VCPU: 64, MemoryMb: 524288, GPU: 0, + Architecture: "amd64", }, "r5b.24xlarge": { InstanceType: "r5b.24xlarge", VCPU: 96, MemoryMb: 786432, GPU: 0, + Architecture: "amd64", }, "r5b.2xlarge": { InstanceType: "r5b.2xlarge", VCPU: 8, MemoryMb: 65536, GPU: 0, + Architecture: "amd64", }, "r5b.4xlarge": { InstanceType: "r5b.4xlarge", VCPU: 16, MemoryMb: 131072, GPU: 0, + Architecture: "amd64", }, "r5b.8xlarge": { InstanceType: "r5b.8xlarge", VCPU: 32, MemoryMb: 262144, GPU: 0, + Architecture: "amd64", }, "r5b.large": { InstanceType: "r5b.large", VCPU: 2, MemoryMb: 16384, GPU: 0, + Architecture: "amd64", }, "r5b.metal": { InstanceType: "r5b.metal", VCPU: 96, MemoryMb: 786432, GPU: 0, + Architecture: "amd64", }, "r5b.xlarge": { InstanceType: "r5b.xlarge", VCPU: 4, MemoryMb: 32768, GPU: 0, + Architecture: "amd64", }, "r5d": { InstanceType: "r5d", VCPU: 96, MemoryMb: 0, GPU: 0, + Architecture: "amd64", }, "r5d.12xlarge": { InstanceType: "r5d.12xlarge", VCPU: 48, MemoryMb: 393216, GPU: 0, + Architecture: "amd64", }, "r5d.16xlarge": { InstanceType: "r5d.16xlarge", VCPU: 64, MemoryMb: 524288, GPU: 0, + Architecture: "amd64", }, "r5d.24xlarge": { InstanceType: "r5d.24xlarge", VCPU: 96, MemoryMb: 786432, GPU: 0, + Architecture: "amd64", }, "r5d.2xlarge": { InstanceType: "r5d.2xlarge", VCPU: 8, MemoryMb: 65536, GPU: 0, + Architecture: "amd64", }, "r5d.4xlarge": { InstanceType: "r5d.4xlarge", VCPU: 16, MemoryMb: 131072, GPU: 0, + Architecture: "amd64", }, "r5d.8xlarge": { InstanceType: "r5d.8xlarge", VCPU: 32, MemoryMb: 262144, GPU: 0, + Architecture: "amd64", }, "r5d.large": { InstanceType: "r5d.large", VCPU: 2, MemoryMb: 16384, GPU: 0, + Architecture: "amd64", }, "r5d.metal": { InstanceType: "r5d.metal", VCPU: 96, MemoryMb: 786432, GPU: 0, + Architecture: "amd64", }, "r5d.xlarge": { InstanceType: "r5d.xlarge", VCPU: 4, MemoryMb: 32768, GPU: 0, + Architecture: "amd64", }, "r5dn": { InstanceType: "r5dn", VCPU: 96, MemoryMb: 0, GPU: 0, + Architecture: "amd64", }, "r5dn.12xlarge": { InstanceType: "r5dn.12xlarge", VCPU: 48, MemoryMb: 393216, GPU: 0, + Architecture: "amd64", }, "r5dn.16xlarge": { InstanceType: "r5dn.16xlarge", VCPU: 64, MemoryMb: 524288, GPU: 0, + Architecture: "amd64", }, "r5dn.24xlarge": { InstanceType: "r5dn.24xlarge", VCPU: 96, MemoryMb: 786432, GPU: 0, + Architecture: "amd64", }, "r5dn.2xlarge": { InstanceType: "r5dn.2xlarge", VCPU: 8, MemoryMb: 65536, GPU: 0, + Architecture: "amd64", }, "r5dn.4xlarge": { InstanceType: "r5dn.4xlarge", VCPU: 16, MemoryMb: 131072, GPU: 0, + Architecture: "amd64", }, "r5dn.8xlarge": { InstanceType: "r5dn.8xlarge", VCPU: 32, MemoryMb: 262144, GPU: 0, + Architecture: "amd64", }, "r5dn.large": { InstanceType: "r5dn.large", VCPU: 2, MemoryMb: 16384, GPU: 0, + Architecture: "amd64", }, "r5dn.metal": { InstanceType: "r5dn.metal", VCPU: 96, MemoryMb: 786432, GPU: 0, + Architecture: "amd64", }, "r5dn.xlarge": { InstanceType: "r5dn.xlarge", VCPU: 4, MemoryMb: 32768, GPU: 0, + Architecture: "amd64", }, "r5n": { InstanceType: "r5n", VCPU: 96, MemoryMb: 0, GPU: 0, + Architecture: "amd64", }, "r5n.12xlarge": { InstanceType: "r5n.12xlarge", VCPU: 48, MemoryMb: 393216, GPU: 0, + Architecture: "amd64", }, "r5n.16xlarge": { InstanceType: "r5n.16xlarge", VCPU: 64, MemoryMb: 524288, GPU: 0, + Architecture: "amd64", }, "r5n.24xlarge": { InstanceType: "r5n.24xlarge", VCPU: 96, MemoryMb: 786432, GPU: 0, + Architecture: "amd64", }, "r5n.2xlarge": { InstanceType: "r5n.2xlarge", VCPU: 8, MemoryMb: 65536, GPU: 0, + Architecture: "amd64", }, "r5n.4xlarge": { InstanceType: "r5n.4xlarge", VCPU: 16, MemoryMb: 131072, GPU: 0, + Architecture: "amd64", }, "r5n.8xlarge": { InstanceType: "r5n.8xlarge", VCPU: 32, MemoryMb: 262144, GPU: 0, + Architecture: "amd64", }, "r5n.large": { InstanceType: "r5n.large", VCPU: 2, MemoryMb: 16384, GPU: 0, + Architecture: "amd64", }, "r5n.metal": { InstanceType: "r5n.metal", VCPU: 96, MemoryMb: 786432, GPU: 0, + Architecture: "amd64", }, "r5n.xlarge": { InstanceType: "r5n.xlarge", VCPU: 4, MemoryMb: 32768, GPU: 0, + Architecture: "amd64", }, "r6g": { InstanceType: "r6g", VCPU: 64, MemoryMb: 0, GPU: 0, + Architecture: "arm64", }, "r6g.12xlarge": { InstanceType: "r6g.12xlarge", VCPU: 48, MemoryMb: 393216, GPU: 0, + Architecture: "arm64", }, "r6g.16xlarge": { InstanceType: "r6g.16xlarge", VCPU: 64, MemoryMb: 524288, GPU: 0, + Architecture: "arm64", }, "r6g.2xlarge": { InstanceType: "r6g.2xlarge", VCPU: 8, MemoryMb: 65536, GPU: 0, + Architecture: "arm64", }, "r6g.4xlarge": { InstanceType: "r6g.4xlarge", VCPU: 16, MemoryMb: 131072, GPU: 0, + Architecture: "arm64", }, "r6g.8xlarge": { InstanceType: "r6g.8xlarge", VCPU: 32, MemoryMb: 262144, GPU: 0, + Architecture: "arm64", }, "r6g.large": { InstanceType: "r6g.large", VCPU: 2, MemoryMb: 16384, GPU: 0, + Architecture: "arm64", }, "r6g.medium": { InstanceType: "r6g.medium", VCPU: 1, MemoryMb: 8192, GPU: 0, + Architecture: "arm64", }, "r6g.metal": { InstanceType: "r6g.metal", VCPU: 64, MemoryMb: 524288, GPU: 0, + Architecture: "arm64", }, "r6g.xlarge": { InstanceType: "r6g.xlarge", VCPU: 4, MemoryMb: 32768, GPU: 0, + Architecture: "arm64", }, "r6gd": { InstanceType: "r6gd", VCPU: 64, MemoryMb: 0, GPU: 0, + Architecture: "arm64", }, "r6gd.12xlarge": { InstanceType: "r6gd.12xlarge", VCPU: 48, MemoryMb: 393216, GPU: 0, + Architecture: "arm64", }, "r6gd.16xlarge": { InstanceType: "r6gd.16xlarge", VCPU: 64, MemoryMb: 524288, GPU: 0, + Architecture: "arm64", }, "r6gd.2xlarge": { InstanceType: "r6gd.2xlarge", VCPU: 8, MemoryMb: 65536, GPU: 0, + Architecture: "arm64", }, "r6gd.4xlarge": { InstanceType: "r6gd.4xlarge", VCPU: 16, MemoryMb: 131072, GPU: 0, + Architecture: "arm64", }, "r6gd.8xlarge": { InstanceType: "r6gd.8xlarge", VCPU: 32, MemoryMb: 262144, GPU: 0, + Architecture: "arm64", }, "r6gd.large": { InstanceType: "r6gd.large", VCPU: 2, MemoryMb: 16384, GPU: 0, + Architecture: "arm64", }, "r6gd.medium": { InstanceType: "r6gd.medium", VCPU: 1, MemoryMb: 8192, GPU: 0, + Architecture: "arm64", }, "r6gd.metal": { InstanceType: "r6gd.metal", VCPU: 64, MemoryMb: 524288, GPU: 0, + Architecture: "arm64", }, "r6gd.xlarge": { InstanceType: "r6gd.xlarge", VCPU: 4, MemoryMb: 32768, GPU: 0, + Architecture: "arm64", }, "t1.micro": { InstanceType: "t1.micro", VCPU: 1, MemoryMb: 627, GPU: 0, + Architecture: "amd64", }, "t2.2xlarge": { InstanceType: "t2.2xlarge", VCPU: 8, MemoryMb: 32768, GPU: 0, + Architecture: "amd64", }, "t2.large": { InstanceType: "t2.large", VCPU: 2, MemoryMb: 8192, GPU: 0, + Architecture: "amd64", }, "t2.medium": { InstanceType: "t2.medium", VCPU: 2, MemoryMb: 4096, GPU: 0, + Architecture: "amd64", }, "t2.micro": { InstanceType: "t2.micro", VCPU: 1, MemoryMb: 1024, GPU: 0, + Architecture: "amd64", }, "t2.nano": { InstanceType: "t2.nano", VCPU: 1, MemoryMb: 512, GPU: 0, + Architecture: "amd64", }, "t2.small": { InstanceType: "t2.small", VCPU: 1, MemoryMb: 2048, GPU: 0, + Architecture: "amd64", }, "t2.xlarge": { InstanceType: "t2.xlarge", VCPU: 4, MemoryMb: 16384, GPU: 0, + Architecture: "amd64", }, "t3.2xlarge": { InstanceType: "t3.2xlarge", VCPU: 8, MemoryMb: 32768, GPU: 0, + Architecture: "amd64", }, "t3.large": { InstanceType: "t3.large", VCPU: 2, MemoryMb: 8192, GPU: 0, + Architecture: "amd64", }, "t3.medium": { InstanceType: "t3.medium", VCPU: 2, MemoryMb: 4096, GPU: 0, + Architecture: "amd64", }, "t3.micro": { InstanceType: "t3.micro", VCPU: 2, MemoryMb: 1024, GPU: 0, + Architecture: "amd64", }, "t3.nano": { InstanceType: "t3.nano", VCPU: 2, MemoryMb: 512, GPU: 0, + Architecture: "amd64", }, "t3.small": { InstanceType: "t3.small", VCPU: 2, MemoryMb: 2048, GPU: 0, + Architecture: "amd64", }, "t3.xlarge": { InstanceType: "t3.xlarge", VCPU: 4, MemoryMb: 16384, GPU: 0, + Architecture: "amd64", }, "t3a.2xlarge": { InstanceType: "t3a.2xlarge", VCPU: 8, MemoryMb: 32768, GPU: 0, + Architecture: "amd64", }, "t3a.large": { InstanceType: "t3a.large", VCPU: 2, MemoryMb: 8192, GPU: 0, + Architecture: "amd64", }, "t3a.medium": { InstanceType: "t3a.medium", VCPU: 2, MemoryMb: 4096, GPU: 0, + Architecture: "amd64", }, "t3a.micro": { InstanceType: "t3a.micro", VCPU: 2, MemoryMb: 1024, GPU: 0, + Architecture: "amd64", }, "t3a.nano": { InstanceType: "t3a.nano", VCPU: 2, MemoryMb: 512, GPU: 0, + Architecture: "amd64", }, "t3a.small": { InstanceType: "t3a.small", VCPU: 2, MemoryMb: 2048, GPU: 0, + Architecture: "amd64", }, "t3a.xlarge": { InstanceType: "t3a.xlarge", VCPU: 4, MemoryMb: 16384, GPU: 0, + Architecture: "amd64", }, "t4g.2xlarge": { InstanceType: "t4g.2xlarge", VCPU: 8, MemoryMb: 32768, GPU: 0, + Architecture: "arm64", }, "t4g.large": { InstanceType: "t4g.large", VCPU: 2, MemoryMb: 8192, GPU: 0, + Architecture: "arm64", }, "t4g.medium": { InstanceType: "t4g.medium", VCPU: 2, MemoryMb: 4096, GPU: 0, + Architecture: "arm64", }, "t4g.micro": { InstanceType: "t4g.micro", VCPU: 2, MemoryMb: 1024, GPU: 0, + Architecture: "arm64", }, "t4g.nano": { InstanceType: "t4g.nano", VCPU: 2, MemoryMb: 512, GPU: 0, + Architecture: "arm64", }, "t4g.small": { InstanceType: "t4g.small", VCPU: 2, MemoryMb: 2048, GPU: 0, + Architecture: "arm64", }, "t4g.xlarge": { InstanceType: "t4g.xlarge", VCPU: 4, MemoryMb: 16384, GPU: 0, + Architecture: "arm64", }, "u-12tb1": { InstanceType: "u-12tb1", VCPU: 448, MemoryMb: 0, GPU: 0, + Architecture: "amd64", }, "u-12tb1.metal": { InstanceType: "u-12tb1.metal", VCPU: 448, MemoryMb: 12582912, GPU: 0, + Architecture: "amd64", }, "u-18tb1": { InstanceType: "u-18tb1", VCPU: 448, MemoryMb: 0, GPU: 0, + Architecture: "amd64", }, "u-18tb1.metal": { InstanceType: "u-18tb1.metal", VCPU: 448, MemoryMb: 18874368, GPU: 0, + Architecture: "amd64", }, "u-24tb1": { InstanceType: "u-24tb1", VCPU: 448, MemoryMb: 0, GPU: 0, + Architecture: "amd64", }, "u-24tb1.metal": { InstanceType: "u-24tb1.metal", VCPU: 448, MemoryMb: 25165824, GPU: 0, + Architecture: "amd64", }, "u-6tb1": { InstanceType: "u-6tb1", VCPU: 448, MemoryMb: 0, GPU: 0, + Architecture: "amd64", }, "u-6tb1.metal": { InstanceType: "u-6tb1.metal", VCPU: 448, MemoryMb: 6291456, GPU: 0, + Architecture: "amd64", }, "u-9tb1": { InstanceType: "u-9tb1", VCPU: 448, MemoryMb: 0, GPU: 0, + Architecture: "amd64", }, "u-9tb1.metal": { InstanceType: "u-9tb1.metal", VCPU: 448, MemoryMb: 9437184, GPU: 0, + Architecture: "amd64", }, "x1": { InstanceType: "x1", VCPU: 128, MemoryMb: 0, GPU: 0, + Architecture: "amd64", }, "x1.16xlarge": { InstanceType: "x1.16xlarge", VCPU: 64, MemoryMb: 999424, GPU: 0, + Architecture: "amd64", }, "x1.32xlarge": { InstanceType: "x1.32xlarge", VCPU: 128, MemoryMb: 1998848, GPU: 0, + Architecture: "amd64", }, "x1e": { InstanceType: "x1e", VCPU: 128, MemoryMb: 0, GPU: 0, + Architecture: "amd64", }, "x1e.16xlarge": { InstanceType: "x1e.16xlarge", VCPU: 64, MemoryMb: 1998848, GPU: 0, + Architecture: "amd64", }, "x1e.2xlarge": { InstanceType: "x1e.2xlarge", VCPU: 8, MemoryMb: 249856, GPU: 0, + Architecture: "amd64", }, "x1e.32xlarge": { InstanceType: "x1e.32xlarge", VCPU: 128, MemoryMb: 3997696, GPU: 0, + Architecture: "amd64", }, "x1e.4xlarge": { InstanceType: "x1e.4xlarge", VCPU: 16, MemoryMb: 499712, GPU: 0, + Architecture: "amd64", }, "x1e.8xlarge": { InstanceType: "x1e.8xlarge", VCPU: 32, MemoryMb: 999424, GPU: 0, + Architecture: "amd64", }, "x1e.xlarge": { InstanceType: "x1e.xlarge", VCPU: 4, MemoryMb: 124928, GPU: 0, + Architecture: "amd64", }, "z1d": { InstanceType: "z1d", VCPU: 48, MemoryMb: 0, GPU: 0, + Architecture: "amd64", }, "z1d.12xlarge": { InstanceType: "z1d.12xlarge", VCPU: 48, MemoryMb: 393216, GPU: 0, + Architecture: "amd64", }, "z1d.2xlarge": { InstanceType: "z1d.2xlarge", VCPU: 8, MemoryMb: 65536, GPU: 0, + Architecture: "amd64", }, "z1d.3xlarge": { InstanceType: "z1d.3xlarge", VCPU: 12, MemoryMb: 98304, GPU: 0, + Architecture: "amd64", }, "z1d.6xlarge": { InstanceType: "z1d.6xlarge", VCPU: 24, MemoryMb: 196608, GPU: 0, + Architecture: "amd64", }, "z1d.large": { InstanceType: "z1d.large", VCPU: 2, MemoryMb: 16384, GPU: 0, + Architecture: "amd64", }, "z1d.metal": { InstanceType: "z1d.metal", VCPU: 48, MemoryMb: 393216, GPU: 0, + Architecture: "amd64", }, "z1d.xlarge": { InstanceType: "z1d.xlarge", VCPU: 4, MemoryMb: 32768, GPU: 0, + Architecture: "amd64", }, } diff --git a/cluster-autoscaler/cloudprovider/aws/ec2_instance_types/gen.go b/cluster-autoscaler/cloudprovider/aws/ec2_instance_types/gen.go index 0b2839980941..290cc0f0ddce 100644 --- a/cluster-autoscaler/cloudprovider/aws/ec2_instance_types/gen.go +++ b/cluster-autoscaler/cloudprovider/aws/ec2_instance_types/gen.go @@ -51,6 +51,7 @@ type InstanceType struct { VCPU int64 MemoryMb int64 GPU int64 + Architecture string } // InstanceTypes is a map of ec2 resources @@ -61,6 +62,7 @@ var InstanceTypes = map[string]*InstanceType{ VCPU: {{ .VCPU }}, MemoryMb: {{ .MemoryMb }}, GPU: {{ .GPU }}, + Architecture: "{{ .Architecture }}", }, {{- end }} }