@cloud-carbon-footprint/aws
Version:
The core logic to get cloud usage data and estimate energy and carbon emissions from Amazon Web Services.
2,066 lines (2,058 loc) • 127 kB
text/typescript
/*
* © 2021 Thoughtworks, Inc.
*/
import {
COMPUTE_PROCESSOR_TYPES,
cascadeLakeSkylake,
broadwellHaswell,
} from '@cloud-carbon-footprint/core'
export const RDS_INSTANCE_TYPES: { [instanceType: string]: number } = {
'db.m5.24xlarge': 96,
'db.m5.16xlarge': 64,
'db.m5.12xlarge': 48,
'db.m5.8xlarge': 32,
'db.m5.4xlarge': 16,
'db.m5.2xlarge': 8,
'db.m5.xlarge': 4,
'db.m5.large': 2,
'db.m4.16xlarge': 64,
'db.m4.10xlarge': 40,
'db.m4.4xlarge': 16,
'db.m4.2xlarge': 8,
'db.m4.xlarge': 4,
'db.m4.large': 2,
'db.m3.2xlarge': 8,
'db.m3.xlarge': 4,
'db.m3.large': 2,
'db.m3.medium': 1,
'db.m1.xlarge': 4,
'db.m1.large': 2,
'db.m1.medium': 1,
'db.m1.small': 1,
'db.z1d.12xlarge': 48,
'db.z1d.6xlarge': 24,
'db.z1d.3xlarge': 12,
'db.z1d.2xlarge': 8,
'db.z1d.xlarge': 4,
'db.z1d.large': 2,
'db.x1e.32xlarge': 128,
'db.x1e.16xlarge': 64,
'db.x1e.8xlarge': 32,
'db.x1e.4xlarge': 16,
'db.x1e.2xlarge': 8,
'db.x1e.xlarge': 4,
'db.x1.32xlarge': 128,
'db.x1.16xlarge': 64,
'db.r5.24xlarge': 96,
'db.r5.16xlarge': 64,
'db.r5.12xlarge': 48,
'db.r5.8xlarge': 32,
'db.r5.4xlarge': 16,
'db.r5.2xlarge': 8,
'db.r5.xlarge': 4,
'db.r5.large': 2,
'db.r4.16xlarge': 64,
'db.r4.8xlarge': 32,
'db.r4.4xlarge': 16,
'db.r4.2xlarge': 8,
'db.r4.xlarge': 4,
'db.r4.large': 2,
'db.r3.8xlarge': 32,
'db.r3.4xlarge': 16,
'db.r3.2xlarge': 8,
'db.r3.xlarge': 4,
'db.r3.large': 2,
'db.m2.4xlarge': 8,
'db.m2.2xlarge': 4,
'db.m2.xlarge': 2,
'db.t3.2xlarge': 8,
'db.t3.xlarge': 4,
'db.t3.large': 2,
'db.t3.medium': 2,
'db.t3.small': 2,
'db.t3.micro': 2,
'db.t2.2xlarge': 8,
'db.t2.xlarge': 4,
'db.t2.large': 2,
'db.t2.medium': 2,
'db.t2.small': 1,
'db.t2.micro': 1,
'db.m6g.large': 2,
'db.m6g.xlarge': 4,
'db.m6g.2xlarge': 8,
'db.m6g.4xlarge': 16,
'db.m6g.8xlarge': 32,
'db.m6g.12xlarge': 48,
'db.m6g.16xlarge': 64,
'db.r6g.large': 2,
'db.r6g.xlarge': 4,
'db.r6g.2xlarge': 8,
'db.r6g.4xlarge': 16,
'db.r6g.12xlarge': 48,
'db.r6g.16xlarge': 64,
'db.c6gd.12xlarge': 48,
'db.c6gd.16xlarge': 64,
'db.c6gd.2xlarge': 8,
'db.c6gd.4xlarge': 16,
'db.c6gd.8xlarge': 32,
'db.c6gd.large': 2,
'db.c6gd.medium': 1,
'db.c6gd.xlarge': 4,
'db.m5d.12xlarge': 48,
'db.m5d.16xlarge': 64,
'db.m5d.24xlarge': 96,
'db.m5d.2xlarge': 8,
'db.m5d.4xlarge': 16,
'db.m5d.8xlarge': 32,
'db.m5d.large': 2,
'db.m5d.xlarge': 4,
'db.m6gd.12xlarge': 48,
'db.m6gd.16xlarge': 64,
'db.m6gd.2xlarge': 8,
'db.m6gd.4xlarge': 16,
'db.m6gd.8xlarge': 32,
'db.m6gd.large': 2,
'db.m6gd.xlarge': 4,
'db.m6i.12xlarge': 48,
'db.m6i.16xlarge': 64,
'db.m6i.24xlarge': 96,
'db.m6i.2xlarge': 8,
'db.m6i.32xlarge': 128,
'db.m6i.4xlarge': 16,
'db.m6i.8xlarge': 32,
'db.m6i.large': 2,
'db.m6i.metal': 128,
'db.m6i.xlarge': 4,
'db.m6id.12xlarge': 48,
'db.m6id.16xlarge': 64,
'db.m6id.24xlarge': 96,
'db.m6id.2xlarge': 8,
'db.m6id.32xlarge': 128,
'db.m6id.4xlarge': 16,
'db.m6id.8xlarge': 32,
'db.m6id.large': 2,
'db.m6id.metal': 128,
'db.m6id.xlarge': 4,
'db.m6idn.12xlarge': 48,
'db.m6idn.16xlarge': 64,
'db.m6idn.24xlarge': 96,
'db.m6idn.2xlarge': 8,
'db.m6idn.32xlarge': 128,
'db.m6idn.4xlarge': 16,
'db.m6idn.8xlarge': 32,
'db.m6idn.large': 2,
'db.m6idn.xlarge': 4,
'db.m6in.12xlarge': 48,
'db.m6in.16xlarge': 64,
'db.m6in.24xlarge': 96,
'db.m6in.2xlarge': 8,
'db.m6in.32xlarge': 128,
'db.m6in.4xlarge': 16,
'db.m6in.8xlarge': 32,
'db.m6in.large': 2,
'db.m6in.metal': 128,
'db.m6in.xlarge': 4,
'db.m7g.12xlarge': 48,
'db.m7g.16xlarge': 64,
'db.m7g.2xlarge': 8,
'db.m7g.4xlarge': 16,
'db.m7g.8xlarge': 32,
'db.m7g.large': 2,
'db.m7g.xlarge': 4,
'db.m7i.12xlarge': 48,
'db.m7i.16xlarge': 64,
'db.m7i.24xlarge': 96,
'db.m7i.2xlarge': 8,
'db.m7i.48xlarge': 192,
'db.m7i.4xlarge': 16,
'db.m7i.8xlarge': 32,
'db.m7i.large': 2,
'db.m7i.metal-24xl': 96,
'db.m7i.metal-48xl': 192,
'db.m7i.xlarge': 4,
'db.m8g.12xlarge': 48,
'db.m8g.16xlarge': 64,
'db.m8g.24xlarge': 96,
'db.m8g.2xlarge': 8,
'db.m8g.48xlarge': 192,
'db.m8g.4xlarge': 16,
'db.m8g.8xlarge': 32,
'db.m8g.large': 2,
'db.m8g.xlarge': 4,
'db.m8gd.12xlarge': 48,
'db.m8gd.16xlarge': 64,
'db.m8gd.24xlarge': 96,
'db.m8gd.2xlarge': 8,
'db.m8gd.48xlarge': 192,
'db.m8gd.4xlarge': 16,
'db.m8gd.8xlarge': 32,
'db.m8gd.large': 2,
'db.m8gd.xlarge': 4,
'db.r5b.12xlarge': 48,
'db.r5b.16xlarge': 64,
'db.r5b.24xlarge': 96,
'db.r5b.2xlarge': 8,
'db.r5b.4xlarge': 16,
'db.r5b.8xlarge': 32,
'db.r5b.large': 2,
'db.r5b.xlarge': 4,
'db.r5d.12xlarge': 48,
'db.r5d.16xlarge': 64,
'db.r5d.24xlarge': 96,
'db.r5d.2xlarge': 8,
'db.r5d.4xlarge': 16,
'db.r5d.8xlarge': 32,
'db.r5d.large': 2,
'db.r5d.xlarge': 4,
'db.r6g.8xlarge': 32,
'db.r6gd.12xlarge': 48,
'db.r6gd.16xlarge': 64,
'db.r6gd.2xlarge': 8,
'db.r6gd.4xlarge': 16,
'db.r6gd.8xlarge': 32,
'db.r6gd.large': 2,
'db.r6gd.xlarge': 4,
'db.r6i.12xlarge': 48,
'db.r6i.16xlarge': 64,
'db.r6i.24xlarge': 96,
'db.r6i.2xlarge': 8,
'db.r6i.32xlarge': 128,
'db.r6i.4xlarge': 16,
'db.r6i.8xlarge': 32,
'db.r6i.large': 2,
'db.r6i.metal': 128,
'db.r6i.xlarge': 4,
'db.r6id.12xlarge': 48,
'db.r6id.16xlarge': 64,
'db.r6id.24xlarge': 96,
'db.r6id.2xlarge': 8,
'db.r6id.32xlarge': 128,
'db.r6id.4xlarge': 16,
'db.r6id.8xlarge': 32,
'db.r6id.large': 2,
'db.r6id.metal': 128,
'db.r6id.xlarge': 4,
'db.r6idn.12xlarge': 48,
'db.r6idn.16xlarge': 64,
'db.r6idn.24xlarge': 96,
'db.r6idn.2xlarge': 8,
'db.r6idn.32xlarge': 128,
'db.r6idn.4xlarge': 16,
'db.r6idn.8xlarge': 32,
'db.r6idn.large': 2,
'db.r6idn.xlarge': 4,
'db.r6in.12xlarge': 48,
'db.r6in.16xlarge': 64,
'db.r6in.24xlarge': 96,
'db.r6in.2xlarge': 8,
'db.r6in.32xlarge': 128,
'db.r6in.4xlarge': 16,
'db.r6in.8xlarge': 32,
'db.r6in.large': 2,
'db.r6in.metal': 128,
'db.r6in.xlarge': 4,
'db.r7g.12xlarge': 48,
'db.r7g.16xlarge': 64,
'db.r7g.2xlarge': 8,
'db.r7g.4xlarge': 16,
'db.r7g.8xlarge': 32,
'db.r7g.large': 2,
'db.r7g.xlarge': 4,
'db.r7i.12xlarge': 48,
'db.r7i.16xlarge': 64,
'db.r7i.24xlarge': 96,
'db.r7i.2xlarge': 8,
'db.r7i.48xlarge': 192,
'db.r7i.4xlarge': 16,
'db.r7i.8xlarge': 32,
'db.r7i.large': 2,
'db.r7i.metal-24xl': 96,
'db.r7i.metal-48xl': 192,
'db.r7i.xlarge': 4,
'db.r8g.12xlarge': 48,
'db.r8g.16xlarge': 64,
'db.r8g.24xlarge': 96,
'db.r8g.2xlarge': 8,
'db.r8g.48xlarge': 192,
'db.r8g.4xlarge': 16,
'db.r8g.8xlarge': 32,
'db.r8g.large': 2,
'db.r8g.xlarge': 4,
'db.r8gd.12xlarge': 48,
'db.r8gd.16xlarge': 64,
'db.r8gd.24xlarge': 96,
'db.r8gd.2xlarge': 8,
'db.r8gd.48xlarge': 192,
'db.r8gd.4xlarge': 16,
'db.r8gd.8xlarge': 32,
'db.r8gd.large': 2,
'db.r8gd.xlarge': 4,
'db.t4g.2xlarge': 8,
'db.t4g.large': 2,
'db.t4g.medium': 2,
'db.t4g.micro': 2,
'db.t4g.small': 2,
'db.t4g.xlarge': 4,
'db.x2g.12xlarge': 48,
'db.x2g.16xlarge': 64,
'db.x2g.2xlarge': 8,
'db.x2g.4xlarge': 16,
'db.x2g.8xlarge': 32,
'db.x2g.large': 2,
'db.x2g.xlarge': 4,
'db.x2idn.16xlarge': 64,
'db.x2idn.24xlarge': 96,
'db.x2idn.32xlarge': 128,
'db.x2idn.metal': 128,
'db.x2iedn.16xlarge': 64,
'db.x2iedn.24xlarge': 96,
'db.x2iedn.2xlarge': 8,
'db.x2iedn.32xlarge': 128,
'db.x2iedn.4xlarge': 16,
'db.x2iedn.8xlarge': 32,
'db.x2iedn.metal': 128,
'db.x2iedn.xlarge': 4,
'db.x2iezn.12xlarge': 48,
'db.x2iezn.2xlarge': 8,
'db.x2iezn.4xlarge': 16,
'db.x2iezn.6xlarge': 24,
'db.x2iezn.8xlarge': 32,
'db.x2iezn.metal': 48,
}
export const CACHE_NODE_TYPES: { [nodeType: string]: number } = {
'cache.t2.micro': 1,
'cache.t2.small': 1,
'cache.t2.medium': 2,
'cache.t3.micro': 2,
'cache.t3.small': 2,
'cache.t3.medium': 2,
'cache.m4.large': 2,
'cache.m4.xlarge': 4,
'cache.m4.2xlarge': 8,
'cache.m4.4xlarge': 16,
'cache.m4.10xlarge': 40,
'cache.m5.large': 2,
'cache.m5.xlarge': 4,
'cache.m5.2xlarge': 8,
'cache.m5.4xlarge': 16,
'cache.m5.12xlarge': 48,
'cache.m5.24xlarge': 96,
'cache.r4.large': 2,
'cache.r4.xlarge': 4,
'cache.r4.2xlarge': 8,
'cache.r4.4xlarge': 16,
'cache.r4.8xlarge': 32,
'cache.r4.16xlarge': 64,
'cache.r5.large': 2,
'cache.r5.xlarge': 4,
'cache.r5.2xlarge': 8,
'cache.r5.4xlarge': 16,
'cache.r5.12xlarge': 48,
'cache.r5.24xlarge': 96,
'cache.m3.medium': 1,
'cache.m6g.large': 2,
'cache.m6g.xlarge': 4,
'cache.m6g.2xlarge': 8,
'cache.m6g.4xlarge': 16,
'cache.m6g.8xlarge': 32,
'cache.m6g.12xlarge': 48,
'cache.m6g.16xlarge': 64,
'cache.r3.2xlarge': 8,
'cache.r6g.large': 2,
'cache.r6g.xlarge': 4,
'cache.r6g.2xlarge': 8,
'cache.r6g.4xlarge': 16,
'cache.r6g.8xlarge': 32,
'cache.r6g.12xlarge': 48,
'cache.r6g.16xlarge': 64,
'cache.c7gn.12xlarge': 48,
'cache.c7gn.16xlarge': 64,
'cache.c7gn.2xlarge': 8,
'cache.c7gn.4xlarge': 16,
'cache.c7gn.8xlarge': 32,
'cache.c7gn.large': 2,
'cache.c7gn.xlarge': 4,
'cache.m7g.12xlarge': 48,
'cache.m7g.16xlarge': 64,
'cache.m7g.2xlarge': 8,
'cache.m7g.4xlarge': 16,
'cache.m7g.8xlarge': 32,
'cache.m7g.large': 2,
'cache.m7g.xlarge': 4,
'cache.r6gd.12xlarge': 48,
'cache.r6gd.16xlarge': 64,
'cache.r6gd.2xlarge': 8,
'cache.r6gd.4xlarge': 16,
'cache.r6gd.8xlarge': 32,
'cache.r6gd.xlarge': 4,
'cache.r7g.12xlarge': 48,
'cache.r7g.16xlarge': 64,
'cache.r7g.2xlarge': 8,
'cache.r7g.4xlarge': 16,
'cache.r7g.8xlarge': 32,
'cache.r7g.large': 2,
'cache.r7g.xlarge': 4,
'cache.t4g.medium': 2,
'cache.t4g.micro': 2,
'cache.t4g.small': 2,
}
export const MSK_INSTANCE_TYPES: { [instanceType: string]: number } = {
'Kafka.t3.small': 2,
'Kafka.m5.large': 2,
'Kafka.m5.xlarge': 4,
'Kafka.m5.2xlarge': 8,
'Kafka.m5.4xlarge': 16,
'Kafka.m5.8xlarge': 32,
'Kafka.m5.12xlarge': 48,
'Kafka.m5.16xlarge': 64,
'Kafka.m5.24xlarge': 96,
'Kafka.m7g.12xlarge': 48,
'Kafka.m7g.16xlarge': 64,
'Kafka.m7g.2xlarge': 8,
'Kafka.m7g.4xlarge': 16,
'Kafka.m7g.8xlarge': 32,
'Kafka.m7g.large': 2,
'Kafka.m7g.xlarge': 4,
'express.m7g.12xlarge': 48,
'express.m7g.16xlarge': 64,
'express.m7g.2xlarge': 8,
'express.m7g.4xlarge': 16,
'express.m7g.8xlarge': 32,
'express.m7g.large': 2,
'express.m7g.xlarge': 4,
}
export const REDSHIFT_INSTANCE_TYPES: {
[instanceFamily: string]: { [instanceSize: string]: number[] } // [vcpus, memory]
} = {
dc2: {
large: [2, 15],
'8xlarge': [32, 244],
},
ra3: {
large: [2, 16],
xlplus: [4, 32],
'4xlarge': [12, 96],
'16xlarge': [48, 384],
},
dc1: {
large: [2, 15],
'8xlarge': [32, 244],
},
ds2: {
xlarge: [4, 31],
'8xlarge': [36, 244],
},
}
export const EC2_INSTANCE_TYPES: {
[instanceFamily: string]: { [instanceSize: string]: number[] } // [vcpus, memory, scope3 emissions ]
} = {
a1: {
medium: [1, 2, 0.45],
large: [2, 4, 0.45],
xlarge: [4, 8, 0.45],
'2xlarge': [8, 16, 0.45],
'4xlarge': [16, 32, 0.45],
metal: [16, 32, 0.45],
},
c1: {
medium: [2, 1.7, 0.68],
xlarge: [8, 7, 0.68],
},
c3: {
large: [2, 3.75, 0.7],
xlarge: [4, 7.5, 0.7],
'2xlarge': [8, 15, 0.7],
'4xlarge': [16, 30, 0.7],
'8xlarge': [32, 60, 0.7],
},
c4: {
large: [2, 3.75, 0.67],
xlarge: [4, 7.5, 0.67],
'2xlarge': [8, 15, 0.67],
'4xlarge': [16, 30, 0.67],
'8xlarge': [36, 60, 0.67],
},
c5: {
large: [2, 4, 0.81],
xlarge: [4, 8, 0.81],
'2xlarge': [8, 16, 0.81],
'4xlarge': [16, 32, 0.81],
'9xlarge': [36, 72, 0.81],
'12xlarge': [48, 96, 0.82],
'18xlarge': [72, 144, 0.82],
'24xlarge': [96, 192, 0.82],
metal: [96, 192, 0.82],
},
c5a: {
large: [2, 4, 0.81],
xlarge: [4, 8, 0.81],
'2xlarge': [8, 16, 0.81],
'4xlarge': [16, 32, 0.81],
'8xlarge': [32, 64, 0.81],
'12xlarge': [48, 96, 0.81],
'16xlarge': [64, 128, 0.81],
'24xlarge': [96, 192, 0.81],
},
c5ad: {
large: [2, 4, 1],
xlarge: [4, 8, 1],
'2xlarge': [8, 16, 1],
'4xlarge': [16, 32, 1],
'8xlarge': [32, 64, 1],
'12xlarge': [48, 96, 1],
'16xlarge': [64, 128, 1],
'24xlarge': [96, 192, 1],
},
c5d: {
large: [2, 4, 0.89],
xlarge: [4, 8, 0.89],
'2xlarge': [8, 16, 0.89],
'4xlarge': [16, 32, 0.89],
'9xlarge': [36, 72, 0.89],
'12xlarge': [48, 96, 1],
'18xlarge': [72, 144, 1],
'24xlarge': [96, 192, 1],
metal: [96, 192, 1],
},
c5n: {
large: [2, 5, 0.81],
xlarge: [4, 10, 0.81],
'2xlarge': [8, 21, 0.81],
'4xlarge': [16, 42, 0.81],
'9xlarge': [36, 96, 0.81],
'18xlarge': [72, 192, 0.81],
metal: [72, 192, 0.81],
},
c6g: {
medium: [1, 2, 0.65],
large: [2, 4, 0.65],
xlarge: [4, 8, 0.65],
'2xlarge': [8, 16, 0.65],
'4xlarge': [16, 32, 0.65],
'8xlarge': [32, 64, 0.65],
'12xlarge': [48, 96, 0.65],
'16xlarge': [64, 128, 0.65],
metal: [64, 128, 0.65],
},
c6gd: {
medium: [1, 2, 0.8],
large: [2, 4, 0.8],
xlarge: [4, 8, 0.8],
'2xlarge': [8, 16, 0.8],
'4xlarge': [16, 32, 0.8],
'8xlarge': [32, 64, 0.8],
'12xlarge': [48, 96, 0.8],
'16xlarge': [64, 128, 0.8],
metal: [64, 128, 0.8],
},
c6gn: {
medium: [1, 2, 0.65],
large: [2, 4, 0.65],
xlarge: [4, 8, 0.65],
'2xlarge': [8, 16, 0.65],
'4xlarge': [16, 32, 0.65],
'8xlarge': [32, 64, 0.65],
'12xlarge': [48, 96, 0.65],
'16xlarge': [64, 128, 0.65],
},
c6i: {
large: [2, 4, 0.9],
xlarge: [4, 8, 0.9],
'2xlarge': [8, 16, 0.9],
'4xlarge': [16, 32, 0.9],
'8xlarge': [32, 64, 0.9],
'12xlarge': [48, 96, 0.9],
'16xlarge': [64, 128, 0.9],
'24xlarge': [96, 192, 0.9],
'32xlarge': [128, 256, 0.9],
metal: [128, 256, 0.9],
},
c6a: {
large: [2, 4, 1.2],
xlarge: [4, 8, 1.2],
'2xlarge': [8, 16, 1.2],
'4xlarge': [16, 32, 1.2],
'8xlarge': [32, 64, 1.2],
'12xlarge': [48, 96, 1.2],
'16xlarge': [64, 128, 1.2],
'24xlarge': [96, 192, 1.2],
'32xlarge': [128, 256, 1.2],
'48xlarge': [192, 384, 1.2],
metal: [192, 384, 1.2],
},
hpc6a: {
'48xlarge': [96, 384, 0],
},
i2: {
xlarge: [4, 30.5, 1.5],
'2xlarge': [8, 61, 1.5],
'4xlarge': [16, 122, 1.5],
'8xlarge': [32, 244, 1.5],
},
m1: {
small: [1, 1.7, 1],
medium: [1, 3.7, 1],
large: [2, 7.5, 1],
xlarge: [4, 15, 1],
},
m2: {
xlarge: [2, 17.1, 1.2],
'2xlarge': [4, 34.2, 1.2],
'4xlarge': [8, 68.4, 1.2],
},
m3: {
medium: [1, 3.75, 1],
large: [2, 7.5, 1],
xlarge: [4, 15, 1],
'2xlarge': [8, 30, 1],
},
m4: {
large: [2, 8, 0.9],
xlarge: [4, 16, 0.9],
'2xlarge': [8, 32, 0.9],
'4xlarge': [16, 64, 0.9],
'10xlarge': [40, 160, 0.9],
'16xlarge': [64, 256, 0.9],
},
mac1: {
metal: [12, 32, 0.44],
},
m5: {
large: [2, 8, 1.2],
xlarge: [4, 16, 1.2],
'2xlarge': [8, 32, 1.2],
'4xlarge': [16, 64, 1.2],
'8xlarge': [32, 128, 1.2],
'12xlarge': [48, 192, 1.2],
'16xlarge': [64, 256, 1.2],
'24xlarge': [96, 384, 1.2],
metal: [96, 384, 1.2],
},
m5a: {
large: [2, 8, 1.2],
xlarge: [4, 16, 1.2],
'2xlarge': [8, 32, 1.2],
'4xlarge': [16, 64, 1.2],
'8xlarge': [32, 128, 1.2],
'12xlarge': [48, 192, 1.2],
'16xlarge': [64, 256, 1.2],
'24xlarge': [96, 384, 1.2],
},
m5ad: {
large: [2, 8, 1.3],
xlarge: [4, 16, 1.3],
'2xlarge': [8, 32, 1.3],
'4xlarge': [16, 64, 1.3],
'8xlarge': [32, 128, 1.3],
'12xlarge': [48, 192, 1.3],
'16xlarge': [64, 256, 1.3],
'24xlarge': [96, 384, 1.3],
},
m5d: {
large: [2, 8, 1.3],
xlarge: [4, 16, 1.3],
'2xlarge': [8, 32, 1.3],
'4xlarge': [16, 64, 1.3],
'8xlarge': [32, 128, 1.3],
'12xlarge': [48, 192, 1.3],
'16xlarge': [64, 256, 1.3],
'24xlarge': [96, 384, 1.3],
metal: [96, 384, 1.3],
},
m5dn: {
large: [2, 8, 1.3],
xlarge: [4, 16, 1.3],
'2xlarge': [8, 32, 1.3],
'4xlarge': [16, 64, 1.3],
'8xlarge': [32, 128, 1.3],
'12xlarge': [48, 192, 1.3],
'16xlarge': [64, 256, 1.3],
'24xlarge': [96, 384, 1.3],
metal: [96, 384, 1.3],
},
m5n: {
large: [2, 8, 1.2],
xlarge: [4, 16, 1.2],
'2xlarge': [8, 32, 1.2],
'4xlarge': [16, 64, 1.2],
'8xlarge': [32, 128, 1.2],
'12xlarge': [48, 192, 1.2],
'16xlarge': [64, 256, 1.2],
'24xlarge': [96, 384, 1.2],
metal: [96, 384, 1.2],
},
m5zn: {
large: [2, 8, 0.8],
xlarge: [4, 16, 0.8],
'2xlarge': [8, 32, 0.8],
'3xlarge': [12, 48, 0.8],
'6xlarge': [24, 96, 0.8],
'12xlarge': [48, 192, 0.8],
metal: [48, 192, 0.8],
},
m6g: {
medium: [1, 4, 0.88],
large: [2, 8, 0.88],
xlarge: [4, 16, 0.88],
'2xlarge': [8, 32, 0.88],
'4xlarge': [16, 64, 0.88],
'8xlarge': [32, 128, 0.88],
'12xlarge': [48, 192, 0.88],
'16xlarge': [64, 256, 0.88],
metal: [64, 256, 0.88],
},
m6gd: {
medium: [1, 4, 1],
large: [2, 8, 1],
xlarge: [4, 16, 1],
'2xlarge': [8, 32, 1],
'4xlarge': [16, 64, 1],
'8xlarge': [32, 128, 1],
'12xlarge': [48, 192, 1],
'16xlarge': [64, 256, 1],
metal: [64, 256, 1],
},
m6i: {
large: [2, 8, 1.4],
xlarge: [4, 16, 1.4],
'2xlarge': [8, 32, 1.4],
'4xlarge': [16, 64, 1.4],
'8xlarge': [32, 128, 1.4],
'12xlarge': [48, 192, 1.4],
'16xlarge': [64, 256, 1.4],
'24xlarge': [96, 384, 1.4],
'32xlarge': [128, 512, 1.4],
metal: [128, 512, 1.4],
},
m6a: {
large: [2, 8, 1.9],
xlarge: [4, 16, 1.9],
'2xlarge': [8, 32, 1.9],
'4xlarge': [16, 64, 1.9],
'8xlarge': [32, 128, 1.9],
'12xlarge': [48, 192, 1.9],
'16xlarge': [64, 256, 1.9],
'24xlarge': [96, 384, 1.9],
'32xlarge': [128, 512, 1.9],
'48xlarge': [192, 768, 1.9],
metal: [192, 768, 1.9],
},
p2: {
xlarge: [4, 61, 4.4930204],
'8xlarge': [32, 488, 4.4930204],
'16xlarge': [64, 732, 4.4930204],
},
p3: {
'2xlarge': [8, 61, 3.5429488],
'8xlarge': [32, 244, 3.5429488],
'16xlarge': [64, 488, 3.5429488],
},
p3dn: {
'24xlarge': [96, 768, 3.5429488],
},
p4d: {
'24xlarge': [96, 1152, 3],
},
r3: {
large: [2, 15, 1.19],
xlarge: [4, 30.5, 1.19],
'2xlarge': [8, 61, 1.19],
'4xlarge': [16, 122, 1.19],
'8xlarge': [32, 244, 1.19],
},
r4: {
large: [2, 15.25, 1.6],
xlarge: [4, 30.5, 1.6],
'2xlarge': [8, 61, 1.6],
'4xlarge': [16, 122, 1.6],
'8xlarge': [32, 244, 1.6],
'16xlarge': [64, 488, 1.6],
},
r5: {
large: [2, 16, 1.9],
xlarge: [4, 32, 1.9],
'2xlarge': [8, 64, 1.9],
'4xlarge': [16, 128, 1.9],
'8xlarge': [32, 256, 1.9],
'12xlarge': [48, 384, 1.9],
'16xlarge': [64, 512, 1.9],
'24xlarge': [96, 768, 1.9],
metal: [96, 768, 1.9],
},
r5a: {
large: [2, 16, 1.9],
xlarge: [4, 32, 1.9],
'2xlarge': [8, 64, 1.9],
'4xlarge': [16, 128, 1.9],
'8xlarge': [32, 256, 1.9],
'12xlarge': [48, 384, 1.9],
'16xlarge': [64, 512, 1.9],
'24xlarge': [96, 768, 1.9],
},
r5ad: {
large: [2, 16, 2.1],
xlarge: [4, 32, 2.1],
'2xlarge': [8, 64, 2.1],
'4xlarge': [16, 128, 2.1],
'8xlarge': [32, 256, 2.1],
'12xlarge': [48, 384, 2.1],
'16xlarge': [64, 512, 2.1],
'24xlarge': [96, 768, 2.1],
},
r5b: {
large: [2, 16, 1.9],
xlarge: [4, 32, 1.9],
'2xlarge': [8, 64, 1.9],
'4xlarge': [16, 128, 1.9],
'8xlarge': [32, 256, 1.9],
'12xlarge': [48, 384, 1.9],
'16xlarge': [64, 512, 1.9],
'24xlarge': [96, 768, 1.9],
metal: [96, 768, 1.9],
},
r5d: {
large: [2, 16, 2.1],
xlarge: [4, 32, 2.1],
'2xlarge': [8, 64, 2.1],
'4xlarge': [16, 128, 2.1],
'8xlarge': [32, 256, 2.1],
'12xlarge': [48, 384, 2.1],
'16xlarge': [64, 512, 2.1],
'24xlarge': [96, 768, 2.1],
metal: [96, 768, 2.1],
},
r5dn: {
large: [2, 16, 2.1],
xlarge: [4, 32, 2.1],
'2xlarge': [8, 64, 2.1],
'4xlarge': [16, 128, 2.1],
'8xlarge': [32, 256, 2.1],
'12xlarge': [48, 384, 2.1],
'16xlarge': [64, 512, 2.1],
'24xlarge': [96, 768, 2.1],
metal: [96, 768, 2.1],
},
r5n: {
large: [2, 16, 1.9],
xlarge: [4, 32, 1.9],
'2xlarge': [8, 64, 1.9],
'4xlarge': [16, 128, 1.9],
'8xlarge': [32, 256, 1.9],
'12xlarge': [48, 384, 1.9],
'16xlarge': [64, 512, 1.9],
'24xlarge': [96, 768, 1.9],
metal: [96, 768, 1.9],
},
r6g: {
medium: [1, 8, 1.4],
large: [2, 16, 1.4],
xlarge: [4, 32, 1.4],
'2xlarge': [8, 64, 1.4],
'4xlarge': [16, 128, 1.4],
'8xlarge': [32, 256, 1.4],
'12xlarge': [48, 384, 1.4],
'16xlarge': [64, 512, 1.4],
metal: [64, 512, 1.4],
},
r6gd: {
medium: [1, 8, 1.5],
large: [2, 16, 1.5],
xlarge: [4, 32, 1.5],
'2xlarge': [8, 64, 1.5],
'4xlarge': [16, 128, 1.5],
'8xlarge': [32, 256, 1.5],
'12xlarge': [48, 384, 1.5],
'16xlarge': [64, 512, 1.5],
metal: [64, 512, 1.5],
},
r6i: {
large: [2, 16, 2.4],
xlarge: [4, 32, 2.4],
'2xlarge': [8, 64, 2.4],
'4xlarge': [16, 128, 2.4],
'8xlarge': [32, 256, 2.4],
'12xlarge': [48, 384, 2.4],
'16xlarge': [64, 512, 2.4],
'24xlarge': [96, 768, 2.4],
'32xlarge': [128, 1024, 2.4],
metal: [128, 1024, 2.4],
},
t1: {
micro: [1, 0.61, 0.75],
},
t2: {
nano: [1, 0, 1.1],
micro: [1, 1, 1.1],
small: [1, 2, 1.1],
medium: [2, 4, 1.1],
large: [2, 8, 1.1],
xlarge: [4, 16, 1.1],
'2xlarge': [8, 32, 1.1],
},
t3: {
nano: [2, 0, 1.2],
micro: [2, 1, 1.2],
small: [2, 2, 1.2],
medium: [2, 4, 1.2],
large: [2, 8, 1.2],
xlarge: [4, 16, 1.2],
'2xlarge': [8, 32, 1.2],
},
t3a: {
nano: [2, 0, 1.2],
micro: [2, 1, 1.2],
small: [2, 2, 1.2],
medium: [2, 4, 1.2],
large: [2, 8, 1.2],
xlarge: [4, 16, 1.2],
'2xlarge': [8, 32, 1.2],
},
t4g: {
nano: [2, 0, 0.88],
micro: [2, 1, 0.88],
small: [2, 2, 0.88],
medium: [2, 4, 0.88],
large: [2, 8, 0.88],
xlarge: [4, 16, 0.88],
'2xlarge': [8, 32, 0.88],
},
x1: {
'16xlarge': [64, 976, 4.4],
'32xlarge': [128, 1952, 4.4],
},
x1e: {
xlarge: [4, 122, 8],
'2xlarge': [8, 244, 8],
'4xlarge': [16, 488, 8],
'8xlarge': [32, 976, 8],
'16xlarge': [64, 1952, 8],
'32xlarge': [128, 3904, 8],
},
x2gd: {
medium: [1, 16, 2.4],
large: [2, 32, 2.4],
xlarge: [4, 64, 2.4],
'2xlarge': [8, 128, 2.4],
'4xlarge': [16, 256, 2.4],
'8xlarge': [32, 512, 2.4],
'12xlarge': [48, 768, 2.4],
'16xlarge': [64, 1024, 2.4],
metal: [64, 1024, 2.4],
},
x2idn: {
'16xlarge': [64, 1024, 4.5],
'24xlarge': [96, 1536, 4.5],
'32xlarge': [128, 2048, 4.5],
metal: [128, 2048, 4.5],
},
x2iedn: {
xlarge: [4, 128, 8],
'2xlarge': [8, 256, 8],
'4xlarge': [16, 512, 8],
'8xlarge': [32, 1024, 8],
'16xlarge': [64, 2048, 8],
'24xlarge': [96, 3072, 8],
'32xlarge': [128, 4096, 8],
metal: [128, 4096, 8],
},
x2iezn: {
'2xlarge': [8, 256, 3.4],
'4xlarge': [16, 512, 3.4],
'6xlarge': [24, 768, 3.4],
'8xlarge': [32, 1024, 3.4],
'12xlarge': [48, 1536, 3.4],
metal: [48, 1536, 3.4],
},
z1d: {
large: [2, 16, 1.2],
xlarge: [4, 32, 1.2],
'2xlarge': [8, 64, 1.2],
'3xlarge': [12, 96, 1.2],
'6xlarge': [24, 192, 1.2],
'12xlarge': [48, 384, 1.2],
metal: [48, 384, 1.2],
},
d2: {
xlarge: [4, 30, 1.9],
'2xlarge': [8, 61, 1.9],
'4xlarge': [16, 122, 1.9],
'8xlarge': [36, 244, 1.9],
},
d3: {
xlarge: [4, 32, 1.66],
'2xlarge': [8, 64, 1.66],
'4xlarge': [16, 128, 1.66],
'8xlarge': [32, 256, 1.66],
},
d3en: {
xlarge: [4, 16, 1.54],
'2xlarge': [8, 32, 1.54],
'4xlarge': [16, 64, 1.54],
'6xlarge': [24, 96, 1.54],
'8xlarge': [32, 128, 1.54],
'12xlarge': [48, 192, 1.54],
},
dl1: {
'24xlarge': [96, 768, 2.1],
},
f1: {
'2xlarge': [8, 122, 2.5],
'4xlarge': [16, 244, 2.5],
'16xlarge': [64, 976, 2.5],
},
g2: {
'2xlarge': [8, 15, 1.9610236],
'8xlarge': [32, 60, 1.9610236],
},
g3: {
'4xlarge': [16, 122, 2.3546168],
'8xlarge': [32, 244, 2.3546168],
'16xlarge': [64, 488, 2.3546168],
},
g3s: {
xlarge: [4, 30, 2.3546168],
},
g4ad: {
xlarge: [4, 16, 1.2],
'2xlarge': [8, 32, 1.2],
'4xlarge': [16, 64, 1.2],
'8xlarge': [32, 128, 1.2],
'16xlarge': [64, 256, 1.2],
},
g4dn: {
xlarge: [4, 16, 1.2],
'2xlarge': [8, 32, 1.2],
'4xlarge': [16, 64, 1.2],
'8xlarge': [32, 128, 1.2],
'12xlarge': [48, 192, 1.2],
'16xlarge': [64, 256, 1.2],
metal: [96, 384, 1.2],
},
g5: {
xlarge: [4, 16, 2.2],
'2xlarge': [8, 32, 2.2],
'4xlarge': [16, 64, 2.2],
'8xlarge': [32, 128, 2.2],
'12xlarge': [48, 192, 2.2],
'16xlarge': [64, 256, 2.2],
'24xlarge': [96, 384, 2.2],
'48xlarge': [192, 768, 2.2],
},
g5g: {
xlarge: [4, 8, 0.63],
'2xlarge': [8, 16, 0.63],
'4xlarge': [16, 32, 0.63],
'8xlarge': [32, 64, 0.63],
'16xlarge': [64, 128, 0.63],
metal: [64, 128, 0.63],
},
h1: {
'2xlarge': [8, 32, 1.15],
'4xlarge': [16, 64, 1.15],
'8xlarge': [32, 128, 1.15],
'16xlarge': [64, 256, 1.15],
},
i3: {
large: [2, 15, 2.1],
xlarge: [4, 30, 2.1],
'2xlarge': [8, 61, 2.1],
'4xlarge': [16, 122, 2.1],
'8xlarge': [32, 244, 2.1],
'16xlarge': [64, 488, 2.1],
metal: [72, 512, 2.1],
},
i3en: {
large: [2, 16, 4.3],
xlarge: [4, 32, 4.3],
'2xlarge': [8, 64, 4.3],
'3xlarge': [12, 96, 4.3],
'6xlarge': [24, 192, 4.3],
'12xlarge': [48, 384, 4.3],
'24xlarge': [96, 768, 4.3],
metal: [96, 768, 4.3],
},
inf1: {
xlarge: [4, 8, 0.79],
'2xlarge': [8, 16, 0.79],
'6xlarge': [24, 48, 0.79],
'24xlarge': [96, 192, 0.79],
},
im4gn: {
large: [2, 8, 2.1],
xlarge: [4, 16, 2.1],
'2xlarge': [8, 32, 2.1],
'4xlarge': [16, 64, 2.1],
'8xlarge': [32, 128, 2.1],
'16xlarge': [64, 256, 2.1],
},
is4gen: {
medium: [1, 6, 3.6],
large: [2, 12, 3.6],
xlarge: [4, 24, 3.6],
'2xlarge': [8, 48, 3.6],
'4xlarge': [16, 96, 3.6],
'8xlarge': [32, 192, 3.6],
},
i4i: {
large: [2, 16, 3.6],
xlarge: [4, 32, 3.6],
'2xlarge': [8, 64, 3.6],
'4xlarge': [16, 128, 3.6],
'8xlarge': [32, 256, 3.6],
'12xlarge': [48, 384, 3.6],
'16xlarge': [64, 512, 3.6],
'24xlarge': [96, 768, 3.6],
'32xlarge': [128, 1024, 3.6],
metal: [128, 1024, 3.6],
},
vt1: {
'3xlarge': [12, 24, 0.79],
'6xlarge': [24, 48, 0.79],
'24xlarge': [96, 192, 0.79],
},
m6id: {
large: [2, 8, 1.7],
xlarge: [4, 16, 1.7],
'2xlarge': [8, 32, 1.7],
'4xlarge': [16, 64, 1.7],
'8xlarge': [32, 128, 1.7],
'12xlarge': [48, 192, 1.7],
'16xlarge': [64, 256, 1.7],
'24xlarge': [96, 384, 1.7],
'32xlarge': [128, 512, 1.7],
metal: [128, 512, 1.7],
},
m6idn: {
large: [2, 8, 1.7],
xlarge: [4, 16, 1.7],
'2xlarge': [8, 32, 1.7],
'4xlarge': [16, 64, 1.7],
'8xlarge': [32, 128, 1.7],
'12xlarge': [48, 192, 1.7],
'16xlarge': [64, 256, 1.7],
'24xlarge': [96, 384, 1.7],
'32xlarge': [128, 512, 1.7],
metal: [128, 512, 1.7],
},
m6in: {
large: [2, 8, 1.4],
xlarge: [4, 16, 1.4],
'2xlarge': [8, 32, 1.4],
'4xlarge': [16, 64, 1.4],
'8xlarge': [32, 128, 1.4],
'12xlarge': [48, 192, 1.4],
'16xlarge': [64, 256, 1.4],
'24xlarge': [96, 384, 1.4],
'32xlarge': [128, 512, 1.4],
metal: [128, 512, 1.4],
},
m7a: {
medium: [1, 4, 1.9],
large: [2, 8, 1.9],
xlarge: [4, 16, 1.9],
'2xlarge': [8, 32, 1.9],
'4xlarge': [16, 64, 1.9],
'8xlarge': [32, 128, 1.9],
'12xlarge': [48, 192, 1.9],
'16xlarge': [64, 256, 1.9],
'24xlarge': [96, 384, 1.9],
'32xlarge': [128, 512, 1.9],
'48xlarge': [192, 768, 1.9],
'metal-48xl': [192, 768, 1.9],
},
m7g: {
medium: [1, 4, 0.88],
large: [2, 8, 0.88],
xlarge: [4, 16, 0.88],
'2xlarge': [8, 32, 0.88],
'4xlarge': [16, 64, 0.88],
'8xlarge': [32, 128, 0.88],
'12xlarge': [48, 192, 0.88],
'16xlarge': [64, 256, 0.88],
metal: [64, 256, 0.88],
},
m7gd: {
medium: [1, 4, 0.86],
large: [2, 8, 0.86],
xlarge: [4, 16, 0.86],
'2xlarge': [8, 32, 0.86],
'4xlarge': [16, 64, 0.86],
'8xlarge': [32, 128, 0.86],
'12xlarge': [48, 192, 0.86],
'16xlarge': [64, 256, 0.86],
metal: [64, 256, 0.86],
},
m7i: {
large: [2, 8, 1.9],
xlarge: [4, 16, 1.9],
'2xlarge': [8, 32, 1.9],
'4xlarge': [16, 64, 1.9],
'8xlarge': [32, 128, 1.9],
'12xlarge': [48, 192, 1.9],
'16xlarge': [64, 256, 1.9],
'24xlarge': [96, 384, 1.9],
'metal-24xl': [96, 384, 1.9],
'48xlarge': [192, 768, 1.9],
'metal-48xl': [192, 768, 1.9],
},
'm7i-flex': {
large: [2, 8, 1.9],
xlarge: [4, 16, 1.9],
'2xlarge': [8, 32, 1.9],
'4xlarge': [16, 64, 1.9],
'8xlarge': [32, 128, 1.9],
'12xlarge': [48, 192, 1.9],
'16xlarge': [64, 256, 1.9],
},
m8a: {
medium: [1, 4, 0],
large: [2, 8, 0],
xlarge: [4, 16, 0],
'2xlarge': [8, 32, 0],
'4xlarge': [16, 64, 0],
'8xlarge': [32, 128, 0],
'12xlarge': [48, 192, 0],
'16xlarge': [64, 256, 0],
'24xlarge': [96, 384, 0],
'metal-24xl': [96, 384, 0],
'48xlarge': [192, 768, 0],
'metal-48xl': [192, 768, 0],
},
m8azn: {
medium: [1, 4, 0],
large: [2, 8, 0],
xlarge: [4, 16, 0],
'3xlarge': [12, 48, 0],
'6xlarge': [24, 96, 0],
'12xlarge': [48, 192, 0],
'metal-12xl': [48, 192, 0],
'24xlarge': [96, 384, 0],
'metal-24xl': [96, 384, 0],
},
m8g: {
medium: [1, 4, 1.1],
large: [2, 8, 1.1],
xlarge: [4, 16, 1.1],
'2xlarge': [8, 32, 1.1],
'4xlarge': [16, 64, 1.1],
'8xlarge': [32, 128, 1.1],
'12xlarge': [48, 192, 1.1],
'16xlarge': [64, 256, 1.1],
'24xlarge': [96, 384, 1.1],
'metal-24xl': [96, 384, 1.1],
'48xlarge': [192, 768, 1.1],
'metal-48xl': [192, 768, 1.1],
},
m8gb: {
medium: [1, 4, 0],
large: [2, 8, 0],
xlarge: [4, 16, 0],
'2xlarge': [8, 32, 0],
'4xlarge': [16, 64, 0],
'8xlarge': [32, 128, 0],
'12xlarge': [48, 192, 0],
'16xlarge': [64, 256, 0],
'24xlarge': [96, 384, 0],
'metal-24xl': [96, 384, 0],
'48xlarge': [192, 768, 0],
'metal-48xl': [192, 768, 0],
},
m8gd: {
medium: [1, 4, 0],
large: [2, 8, 0],
xlarge: [4, 16, 0],
'2xlarge': [8, 32, 0],
'4xlarge': [16, 64, 0],
'8xlarge': [32, 128, 0],
'12xlarge': [48, 192, 0],
'16xlarge': [64, 256, 0],
'24xlarge': [96, 384, 0],
'metal-24xl': [96, 384, 0],
'48xlarge': [192, 768, 0],
'metal-48xl': [192, 768, 0],
},
m8gn: {
medium: [1, 4, 0],
large: [2, 8, 0],
xlarge: [4, 16, 0],
'2xlarge': [8, 32, 0],
'4xlarge': [16, 64, 0],
'8xlarge': [32, 128, 0],
'12xlarge': [48, 192, 0],
'16xlarge': [64, 256, 0],
'24xlarge': [96, 384, 0],
'metal-24xl': [96, 384, 0],
'48xlarge': [192, 768, 0],
'metal-48xl': [192, 768, 0],
},
m8i: {
large: [2, 8, 0],
xlarge: [4, 16, 0],
'2xlarge': [8, 32, 0],
'4xlarge': [16, 64, 0],
'8xlarge': [32, 128, 0],
'12xlarge': [48, 192, 0],
'16xlarge': [64, 256, 0],
'24xlarge': [96, 384, 0],
'32xlarge': [128, 512, 0],
'48xlarge': [192, 768, 0],
'metal-48xl': [192, 768, 0],
'96xlarge': [384, 1536, 0],
'metal-96xl': [384, 1536, 0],
},
m8id: {
large: [2, 8, 0],
xlarge: [4, 16, 0],
'2xlarge': [8, 32, 0],
'4xlarge': [16, 64, 0],
'8xlarge': [32, 128, 0],
'12xlarge': [48, 192, 0],
'16xlarge': [64, 256, 0],
'24xlarge': [96, 384, 0],
'32xlarge': [128, 512, 0],
'48xlarge': [192, 768, 0],
'metal-48xl': [192, 768, 0],
'96xlarge': [384, 1536, 0],
'metal-96xl': [384, 1536, 0],
},
'm8i-flex': {
large: [2, 8, 0],
xlarge: [4, 16, 0],
'2xlarge': [8, 32, 0],
'4xlarge': [16, 64, 0],
'8xlarge': [32, 128, 0],
'12xlarge': [48, 192, 0],
'16xlarge': [64, 256, 0],
},
mac2: {
metal: [8, 16, 0.41],
},
'mac2-m1ultra': {
metal: [20, 128, 0],
},
'mac2-m2': {
metal: [8, 24, 0],
},
'mac2-m2pro': {
metal: [12, 32, 0],
},
'mac-m4': {
metal: [10, 24, 0],
},
'mac-m4pro': {
metal: [14, 48, 0],
},
c6id: {
large: [2, 4, 1.2],
xlarge: [4, 8, 1.2],
'2xlarge': [8, 16, 1.2],
'4xlarge': [16, 32, 1.2],
'8xlarge': [32, 64, 1.2],
'12xlarge': [48, 96, 1.2],
'16xlarge': [64, 128, 1.2],
'24xlarge': [96, 192, 1.2],
'32xlarge': [128, 256, 1.2],
metal: [128, 256, 1.2],
},
c6in: {
large: [2, 4, 0.9],
xlarge: [4, 8, 0.9],
'2xlarge': [8, 16, 0.9],
'4xlarge': [16, 32, 0.9],
'8xlarge': [32, 64, 0.9],
'12xlarge': [48, 96, 0.9],
'16xlarge': [64, 128, 0.9],
'24xlarge': [96, 192, 0.9],
'32xlarge': [128, 256, 0.9],
metal: [128, 256, 0.9],
},
c7a: {
medium: [1, 2, 1.2],
large: [2, 4, 1.2],
xlarge: [4, 8, 1.2],
'2xlarge': [8, 16, 1.2],
'4xlarge': [16, 32, 1.2],
'8xlarge': [32, 64, 1.2],
'12xlarge': [48, 96, 1.2],
'16xlarge': [64, 128, 1.2],
'24xlarge': [96, 192, 1.2],
'32xlarge': [128, 256, 1.2],
'48xlarge': [192, 384, 1.2],
'metal-48xl': [192, 384, 1.2],
},
c7g: {
medium: [1, 2, 0.63],
large: [2, 4, 0.63],
xlarge: [4, 8, 0.63],
'2xlarge': [8, 16, 0.63],
'4xlarge': [16, 32, 0.63],
'8xlarge': [32, 64, 0.63],
'12xlarge': [48, 96, 0.63],
'16xlarge': [64, 128, 0.63],
metal: [64, 128, 0.63],
},
c7gd: {
medium: [1, 2, 0.8],
large: [2, 4, 0.8],
xlarge: [4, 8, 0.8],
'2xlarge': [8, 16, 0.8],
'4xlarge': [16, 32, 0.8],
'8xlarge': [32, 64, 0.8],
'12xlarge': [48, 96, 0.8],
'16xlarge': [64, 128, 0.8],
metal: [64, 128, 0.8],
},
c7gn: {
medium: [1, 2, 0.63],
large: [2, 4, 0.63],
xlarge: [4, 8, 0.63],
'2xlarge': [8, 16, 0.63],
'4xlarge': [16, 32, 0.63],
'8xlarge': [32, 64, 0.63],
'12xlarge': [48, 96, 0.63],
'16xlarge': [64, 128, 0.63],
metal: [64, 128, 0.63],
},
c7i: {
large: [2, 4, 1.4],
xlarge: [4, 8, 1.4],
'2xlarge': [8, 16, 1.4],
'4xlarge': [16, 32, 1.4],
'8xlarge': [32, 64, 1.4],
'12xlarge': [48, 96, 1.4],
'16xlarge': [64, 128, 1.4],
'24xlarge': [96, 192, 1.4],
'metal-24xl': [96, 192, 1.4],
'48xlarge': [192, 384, 1.4],
'metal-48xl': [192, 384, 1.4],
},
'c7i-flex': {
large: [2, 4, 0],
xlarge: [4, 8, 0],
'2xlarge': [8, 16, 0],
'4xlarge': [16, 32, 0],
'8xlarge': [32, 64, 0],
'12xlarge': [48, 96, 0],
'16xlarge': [64, 128, 0],
},
c8a: {
medium: [1, 2, 0],
large: [2, 4, 0],
xlarge: [4, 8, 0],
'2xlarge': [8, 16, 0],
'4xlarge': [16, 32, 0],
'8xlarge': [32, 64, 0],
'12xlarge': [48, 96, 0],
'16xlarge': [64, 128, 0],
'24xlarge': [96, 192, 0],
'metal-24xl': [96, 192, 0],
'48xlarge': [192, 384, 0],
'metal-48xl': [192, 384, 0],
},
c8g: {
medium: [1, 2, 0.79],
large: [2, 4, 0.79],
xlarge: [4, 8, 0.79],
'2xlarge': [8, 16, 0.79],
'4xlarge': [16, 32, 0.79],
'8xlarge': [32, 64, 0.79],
'12xlarge': [48, 96, 0.79],
'16xlarge': [64, 128, 0.79],
'24xlarge': [96, 192, 0.79],
'metal-24xl': [96, 192, 0.79],
'48xlarge': [192, 384, 0.79],
'metal-48xl': [192, 384, 0.79],
},
c8gb: {
medium: [1, 2, 0],
large: [2, 4, 0],
xlarge: [4, 8, 0],
'2xlarge': [8, 16, 0],
'4xlarge': [16, 32, 0],
'8xlarge': [32, 64, 0],
'12xlarge': [48, 96, 0],
'16xlarge': [64, 128, 0],
'24xlarge': [96, 192, 0],
'metal-24xl': [96, 192, 0],
'48xlarge': [192, 384, 0],
'metal-48xl': [192, 384, 0],
},
c8gd: {
medium: [1, 2, 0],
large: [2, 4, 0],
xlarge: [4, 8, 0],
'2xlarge': [8, 16, 0],
'4xlarge': [16, 32, 0],
'8xlarge': [32, 64, 0],
'12xlarge': [48, 96, 0],
'16xlarge': [64, 128, 0],
'24xlarge': [96, 192, 0],
'metal-24xl': [96, 192, 0],
'48xlarge': [192, 384, 0],
'metal-48xl': [192, 384, 0],
},
c8gn: {
medium: [1, 2, 0],
large: [2, 4, 0],
xlarge: [4, 8, 0],
'2xlarge': [8, 16, 0],
'4xlarge': [16, 32, 0],
'8xlarge': [32, 64, 0],
'12xlarge': [48, 96, 0],
'16xlarge': [64, 128, 0],
'24xlarge': [96, 192, 0],
'metal-24xl': [96, 192, 0],
'48xlarge': [192, 384, 0],
'metal-48xl': [192, 384, 0],
},
c8i: {
large: [2, 4, 0],
xlarge: [4, 8, 0],
'2xlarge': [8, 16, 0],
'4xlarge': [16, 32, 0],
'8xlarge': [32, 64, 0],
'12xlarge': [48, 96, 0],
'16xlarge': [64, 128, 0],
'24xlarge': [96, 192, 0],
'32xlarge': [128, 256, 0],
'48xlarge': [192, 384, 0],
'metal-48xl': [192, 384, 0],
'96xlarge': [384, 768, 0],
'metal-96xl': [384, 768, 0],
},
c8id: {
large: [2, 4, 0],
xlarge: [4, 8, 0],
'2xlarge': [8, 16, 0],
'4xlarge': [16, 32, 0],
'8xlarge': [32, 64, 0],
'12xlarge': [48, 96, 0],
'16xlarge': [64, 128, 0],
'24xlarge': [96, 192, 0],
'32xlarge': [128, 256, 0],
'48xlarge': [192, 384, 0],
'metal-48xl': [192, 384, 0],
'96xlarge': [384, 768, 0],
'metal-96xl': [384, 768, 0],
},
'c8i-flex': {
large: [2, 4, 0],
xlarge: [4, 8, 0],
'2xlarge': [8, 16, 0],
'4xlarge': [16, 32, 0],
'8xlarge': [32, 64, 0],
'12xlarge': [48, 96, 0],
'16xlarge': [64, 128, 0],
},
r6a: {
large: [2, 16, 3.4],
xlarge: [4, 32, 3.4],
'2xlarge': [8, 64, 3.4],
'4xlarge': [16, 128, 3.4],
'8xlarge': [32, 256, 3.4],
'12xlarge': [48, 384, 3.4],
'16xlarge': [64, 512, 3.4],
'24xlarge': [96, 768, 3.4],
'32xlarge': [128, 1024, 3.4],
'48xlarge': [192, 1536, 3.4],
metal: [192, 1536, 3.4],
},
r6id: {
large: [2, 16, 2.7],
xlarge: [4, 32, 2.7],
'2xlarge': [8, 64, 2.7],
'4xlarge': [16, 128, 2.7],
'8xlarge': [32, 256, 2.7],
'12xlarge': [48, 384, 2.7],
'16xlarge': [64, 512, 2.7],
'24xlarge': [96, 768, 2.7],
'32xlarge': [128, 1024, 2.7],
metal: [128, 1024, 2.7],
},
r6idn: {
large: [2, 16, 2.7],
xlarge: [4, 32, 2.7],
'2xlarge': [8, 64, 2.7],
'4xlarge': [16, 128, 2.7],
'8xlarge': [32, 256, 2.7],
'12xlarge': [48, 384, 2.7],
'16xlarge': [64, 512, 2.7],
'24xlarge': [96, 768, 2.7],
'32xlarge': [128, 1024, 2.7],
metal: [128, 1024, 2.7],
},
r6in: {
large: [2, 16, 2.4],
xlarge: [4, 32, 2.4],
'2xlarge': [8, 64, 2.4],
'4xlarge': [16, 128, 2.4],
'8xlarge': [32, 256, 2.4],
'12xlarge': [48, 384, 2.4],
'16xlarge': [64, 512, 2.4],
'24xlarge': [96, 768, 2.4],
'32xlarge': [128, 1024, 2.4],
metal: [128, 1024, 2.4],
},
r7a: {
medium: [1, 8, 3.4],
large: [2, 16, 3.4],
xlarge: [4, 32, 3.4],
'2xlarge': [8, 64, 3.4],
'4xlarge': [16, 128, 3.4],
'8xlarge': [32, 256, 3.4],
'12xlarge': [48, 384, 3.4],
'16xlarge': [64, 512, 3.4],
'24xlarge': [96, 768, 3.4],
'32xlarge': [128, 1024, 3.4],
'48xlarge': [192, 1536, 3.4],
'metal-48xl': [192, 1536, 3.4],
},
r7g: {
medium: [1, 8, 1.4],
large: [2, 16, 1.4],
xlarge: [4, 32, 1.4],
'2xlarge': [8, 64, 1.4],
'4xlarge': [16, 128, 1.4],
'8xlarge': [32, 256, 1.4],
'12xlarge': [48, 384, 1.4],
'16xlarge': [64, 512, 1.4],
metal: [64, 512, 1.4],
},
r7gd: {
medium: [1, 8, 1.5],
large: [2, 16, 1.5],
xlarge: [4, 32, 1.5],
'2xlarge': [8, 64, 1.5],
'4xlarge': [16, 128, 1.5],
'8xlarge': [32, 256, 1.5],
'12xlarge': [48, 384, 1.5],
'16xlarge': [64, 512, 1.5],
metal: [64, 512, 1.5],
},
r7i: {
large: [2, 16, 0],
xlarge: [4, 32, 0],
'2xlarge': [8, 64, 0],
'4xlarge': [16, 128, 0],
'8xlarge': [32, 256, 0],
'12xlarge': [48, 384, 0],
'16xlarge': [64, 512, 0],
'24xlarge': [96, 768, 0],
'metal-24xl': [96, 768, 0],
'48xlarge': [192, 1536, 0],
'metal-48xl': [192, 1536, 0],
},
r7iz: {
large: [2, 16, 2.4],
xlarge: [4, 32, 2.4],
'2xlarge': [8, 64, 2.4],
'4xlarge': [16, 128, 2.4],
'8xlarge': [32, 256, 2.4],
'12xlarge': [48, 384, 2.4],
'16xlarge': [64, 512, 2.4],
'metal-16xl': [64, 512, 2.4],
'32xlarge': [128, 1024, 2.4],
'metal-32xl': [128, 1024, 2.4],
},
r8a: {
medium: [1, 8, 0],
large: [2, 16, 0],
xlarge: [4, 32, 0],
'2xlarge': [8, 64, 0],
'4xlarge': [16, 128, 0],
'8xlarge': [32, 256, 0],
'12xlarge': [48, 384, 0],
'16xlarge': [64, 512, 0],
'24xlarge': [96, 768, 0],
'metal-24xl': [96, 768, 0],
'48xlarge': [192, 1536, 0],
'metal-48xl': [192, 1536, 0],
},
r8g: {
medium: [1, 8, 1.8],
large: [2, 16, 1.8],
xlarge: [4, 32, 1.8],
'2xlarge': [8, 64, 1.8],
'4xlarge': [16, 128, 1.8],
'8xlarge': [32, 256, 1.8],
'12xlarge': [48, 384, 1.8],
'16xlarge': [64, 512, 1.8],
'24xlarge': [96, 768, 1.8],
'metal-24xl': [96, 768, 1.8],
'48xlarge': [192, 1536, 1.8],
'metal-48xl': [192, 1536, 1.8],
},
r8gb: {
medium: [1, 8, 0],
large: [2, 16, 0],
xlarge: [4, 32, 0],
'2xlarge': [8, 64, 0],
'4xlarge': [16, 128, 0],
'8xlarge': [32, 256, 0],
'12xlarge': [48, 384, 0],
'16xlarge': [64, 512, 0],
'24xlarge': [96, 768, 0],
'metal-24xl': [96, 768, 0],
'48xlarge': [192, 1536, 0],
'metal-48xl': [192, 1536, 0],
},
r8gd: {
medium: [1, 8, 0],
large: [2, 16, 0],
xlarge: [4, 32, 0],
'2xlarge': [8, 64, 0],
'4xlarge': [16, 128, 0],
'8xlarge': [32, 256, 0],
'12xlarge': [48, 384, 0],
'16xlarge': [64, 512, 0],
'24xlarge': [96, 768, 0],
'metal-24xl': [96, 768, 0],
'48xlarge': [192, 1536, 0],
'metal-48xl': [192, 1536, 0],
},
r8gn: {
medium: [1, 8, 0],
large: [2, 16, 0],
xlarge: [4, 32, 0],
'2xlarge': [8, 64, 0],
'4xlarge': [16, 128, 0],
'8xlarge': [32, 256, 0],
'12xlarge': [48, 384, 0],
'16xlarge': [64, 512, 0],
'24xlarge': [96, 768, 0],
'metal-24xl': [96, 768, 0],
'48xlarge': [192, 1536, 0],
'metal-48xl': [192, 1536, 0],
},
r8i: {
large: [2, 16, 0],
xlarge: [4, 32, 0],
'2xlarge': [8, 64, 0],
'4xlarge': [16, 128, 0],
'8xlarge': [32, 256, 0],
'12xlarge': [48, 384, 0],
'16xlarge': [64, 512, 0],
'24xlarge': [96, 768, 0],
'32xlarge': [128, 1024, 0],
'48xlarge': [192, 1536, 0],
'metal-48xl': [192, 1536, 0],
'96xlarge': [384, 3072, 0],
'metal-96xl': [384, 3072, 0],
},
r8id: {
large: [2, 16, 0],
xlarge: [4, 32, 0],
'2xlarge': [8, 64, 0],
'4xlarge': [16, 128, 0],
'8xlarge': [32, 256, 0],
'12xlarge': [48, 384, 0],
'16xlarge': [64, 512, 0],
'24xlarge': [96, 768, 0],
'32xlarge': [128, 1024, 0],
'48xlarge': [192, 1536, 0],
'metal-48xl': [192, 1536, 0],
'96xlarge': [384, 3072, 0],
'metal-96xl': [384, 3072, 0],
},
'r8i-flex': {
large: [2, 16, 0],
xlarge: [4, 32, 0],
'2xlarge': [8, 64, 0],
'4xlarge': [16, 128, 0],
'8xlarge': [32, 256, 0],
'12xlarge': [48, 384, 0],
'16xlarge': [64, 512, 0],
},
x8g: {
medium: [1, 16, 3.2],
large: [2, 32, 3.2],
xlarge: [4, 64, 3.2],
'2xlarge': [8, 128, 3.2],
'4xlarge': [16, 256, 3.2],
'8xlarge': [32, 512, 3.2],
'12xlarge': [48, 768, 3.2],
'16xlarge': [64, 1024, 3.2],
'24xlarge': [96, 1536, 3.2],
'metal-24xl': [96, 1536, 3.2],
'48xlarge': [192, 3072, 3.2],
'metal-48xl': [192, 3072, 3.2],
},
x8aedz: {
large: [2, 64, 0],
xlarge: [4, 128, 0],
'3xlarge': [12, 384, 0],
'6xlarge': [24, 768, 0],
'12xlarge': [48, 1536, 0],
'metal-12xl': [48, 1536, 0],
'24xlarge': [96, 3072, 0],
'metal-24xl': [96, 3072, 0],
},
x8i: {
large: [2, 32, 0],
xlarge: [4, 64, 0],
'2xlarge': [8, 128, 0],
'4xlarge': [16, 256, 0],
'8xlarge': [32, 512, 0],
'12xlarge': [48, 768, 0],
'16xlarge': [64, 1024, 0],
'24xlarge': [96, 1536, 0],
'32xlarge': [128, 2048, 0],
'48xlarge': [192, 3072, 0],
'metal-48xl': [192, 3072, 0],
'64xlarge': [256, 4096, 0],
'96xlarge': [384, 6144, 0],
'metal-96xl': [384, 6144, 0],
},
i4g: {
large: [2, 16, 2],
xlarge: [4, 32, 2],
'2xlarge': [8, 64, 2],
'4xlarge': [16, 128, 2],
'8xlarge': [32, 256, 2],
'16xlarge': [64, 512, 2],
},
i7i: {
large: [2, 16, 0],
xlarge: [4, 32, 0],
'2xlarge': [8, 64, 0],
'4xlarge': [16, 128, 0],
'8xlarge': [32, 256, 0],
'12xlarge': [48, 384, 0],
'16xlarge': [64, 512, 0],
'24xlarge': [96, 768, 0],
'metal-24xl': [96, 768, 0],
'48xlarge': [192, 1536, 0],
'metal-48xl': [192, 1536, 0],
},
i7ie: {
large: [2, 16, 0],
xlarge: [4, 32, 0],
'2xlarge': [8, 64, 0],
'3xlarge': [12, 96, 0],
'6xlarge': [24, 192, 0],
'12xlarge': [48, 384, 0],
'18xlarge': [72, 576, 0],
'24xlarge': [96, 768, 0],
'metal-24xl': [96, 768, 0],
'48xlarge': [192, 1536, 0],
'metal-48xl': [192, 1536, 0],
},
i8g: {
large: [2, 16, 2.7],
xlarge: [4, 32, 2.7],
'2xlarge': [8, 64, 2.7],
'4xlarge': [16, 128, 2.7],
'8xlarge': [32, 256, 2.7],
'12xlarge': [48, 384, 2.7],
'16xlarge': [64, 512, 2.7],
'24xlarge': [96, 768, 2.7],
'metal-24xl': [96, 768, 2.7],
'48xlarge': [192, 1536, 2.7],
'metal-48xl': [192, 1536, 2.7],
},
i8ge: {
large: [2, 16, 0],
xlarge: [4, 32, 0],
'2xlarge': [8, 64, 0],
'3xlarge': [12, 96, 0],
'6xlarge': [24, 192, 0],
'12xlarge': [48, 384, 0],
'18xlarge': [72, 576, 0],
'24xlarge': [96, 768, 0],
'metal-24xl': [96, 768, 0],
'48xlarge': [192, 1536, 0],
'metal-48xl': [192, 1536, 0],
},
dl2q: {
'24xlarge': [96, 768, 0],
},
f2: {
'6xlarge': [24, 256, 0],
'12xlarge': [48, 512, 0],
'48xlarge': [192, 2048, 0],
},
g6: {
xlarge: [4, 16, 2.3],
'2xlarge': [8, 32, 2.3],
'4xlarge': [16, 64, 2.3],
'8xlarge': [32, 128, 2.3],
'12xlarge': [48, 192, 2.3],
'16xlarge': [64, 256, 2.3],
'24xlarge': [96, 384, 2.3],
'48xlarge': [192, 768, 2.3],
},
g6e: {
xlarge: [4, 32, 3.5],
'2xlarge': [8, 64, 3.5],
'4xlarge': [16, 128, 3.5],
'8xlarge': [32, 256, 3.5],
'12xlarge': [48, 384, 3.5],
'16xlarge': [64, 512, 3.5],
'24xlarge': [96, 768, 3.5],
'48xlarge': [192, 1536, 3.5],
},
g6f: {
large: [2, 8, 0],
xlarge: [4, 16, 0],
'2xlarge': [8, 32, 0],
'4xlarge': [16, 64, 0],
},
gr6: {
'4xlarge': [16, 128, 0.9],
'8xlarge': [32, 256, 0.9],
},
gr6f: {
'4xlarge': [16, 128, 0],
},
g7e: {
'2xlarge': [8, 64, 0],
'4xlarge': [16, 128, 0],
'8xlarge': [32, 256, 0],
'12xlarge': [48, 512, 0],
'24xlarge': [96, 1024, 0],
'48xlarge': [192, 2048, 0],
},
inf2: {
xlarge: [4, 16, 1.9],
'8xlarge': [32, 128, 1.9],
'24xlarge': [96, 384, 1.9],
'48xlarge': [192, 768, 1.9],
},
p4de: {
'24xlarge': [96, 1152, 3],
},
p5: {
'4xlarge': [16, 256, 5.7],
'48xlarge': [192, 2048, 5.7],
},
p5e: {
'48xlarge': [192, 2048, 0],
},
p5en: {
'48xlarge': [192, 2048, 0],
},
'p6-b200': {
'48xlarge': [192, 2048, 0],
},
'p6-b300': {
'48xlarge': [192, 4096, 0],
},
'p6e-gb200': {
'36xlarge': [144, 960, 0],
},
trn1: {
'2xlarge': [8, 32, 1.7],
'32xlarge': [128, 512, 1.7],
},
trn1n: {
'32xlarge': [128, 512, 1.7],
},
trn2: {
'3xlarge': [12, 128, 0],
'48xlarge': [192, 2048, 0],
},
trn2u: {
'48xlarge': [192, 2048, 0],
},
hpc6id: {
'32xlarge': [64, 1024, 0],
},
hpc7a: {
'12xlarge': [24, 768, 0],
'24xlarge': [48, 768, 0],
'48xlarge': [96, 768, 0],
'96xlarge': [192, 768, 0],
},
hpc7g: {
'4xlarge': [16, 128, 0.63],
'8xlarge': [32, 128, 0.63],
'16xlarge': [64, 128, 0.63],
},
hpc8a: {
'96xlarge': [192, 768, 0],
},
}
export const INSTANCE_FAMILY_TO_INSTANCE_TYPE_MAPPING: {
[instanceFamily: string]: { [instanceSize: string]: number[] } // [vcpus, memory, scope3 emissions ]
} = {
'u-3tb1': {
'56xlarge': [224, 3072, 45],
},
'u-6tb1': {
'56xlarge': [224, 6144, 45],
'112xlarge': [448, 6144, 45],
metal: [448, 6144, 45],
},
'u-9tb1': {
'112xlarge': [448, 9216, 45],
metal: [448, 9216, 45],
},
'u-12tb1': {
'112xlarge': [448, 12288, 45],
metal: [448, 12288, 45],
},
'u-18tb1': {
'112xlarge': [448, 18432, 45],
metal: [448, 18432, 45],
},
'u-24tb1': {
'112xlarge': [448, 24576, 45],
metal: [448, 24576, 45],
},
'u7i-6tb': {
'112xlarge': [448, 6144, 0],
},
'u7i-8tb': {
'112xlarge': [448, 8192, 0],
},
'u7i-12tb': {
'224xlarge': [896, 12288, 0],
},
'u7in-16tb': {
'224xlarge': [896, 16384, 0],
},
'u7in-24tb': {
'224xlarge': [896, 24576, 0],
},
'u7in-32tb': {
'224xlarge': [896, 32768, 0],
},
'u7inh-32tb': {
'480xlarge': [1920, 32768, 0],
},
}
export const BURSTABLE_INSTANCE_BASELINE_UTILIZATION: {
[instanceType: string]: number
} = {
't2.nano': 5,
't2.micro': 10,
't2.small': 20,
't2.medium': 20,
't2.large': 30,
't2.xlarge': 22.5,
't2.2xlarge': 17,
't3.nano': 5,
't3.micro': 10,
't3.small': 20,
't3.medium': 20,
't3.large': 30,
't3.xlarge': 40,
't3.2xlarge': 40,
't3a.nano': 5,
't3a.micro': 10,
't3a.small': 20,
't3a.medium': 20,
't3a.large': 30,
't3a.xlarge': 40,
't3a.2xlarge': 40,
't4g.nano': 5,
't4g.micro': 10,
't4g.small': 20,
't4g.medium': 20,
't4g.large': 30,
't4g.xlarge': 40,
't4g.2xlarge': 40,
}
export const INSTANCE_TYPE_COMPUTE_PROCESSOR_MAPPING: {
[instanceType: string]: string[]
} =