Skip to content

Commit f628af0

Browse files
committed
Add EPYC 3rd Gen CO2 data
1 parent 7cd5b19 commit f628af0

File tree

3 files changed

+77
-4
lines changed

3 files changed

+77
-4
lines changed

resotodata/__main__.py

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -327,7 +327,26 @@ def get_ccfdataset() -> dict:
327327
["./node_modules/.bin/ts-node", "export.ts"], cwd=tmpdir, check=True, capture_output=True, text=True
328328
)
329329

330-
return json.loads(result.stdout)
330+
ccfdataset = json.loads(result.stdout)
331+
332+
# Add missing AMD EPYC 3rd Gen data to AWS
333+
aws_cloud_constants = ccfdataset.get("aws", {}).get("AWS_CLOUD_CONSTANTS", {})
334+
azure_cloud_constants = ccfdataset.get("azure", {}).get("AZURE_CLOUD_CONSTANTS", {})
335+
if (
336+
not "AMD EPYC 3rd Gen" in aws_cloud_constants["MIN_WATTS_BY_COMPUTE_PROCESSOR"]
337+
and "AMD EPYC 3rd Gen" in azure_cloud_constants["MIN_WATTS_BY_COMPUTE_PROCESSOR"]
338+
):
339+
aws_cloud_constants["MIN_WATTS_BY_COMPUTE_PROCESSOR"]["AMD EPYC 3rd Gen"] = azure_cloud_constants[
340+
"MIN_WATTS_BY_COMPUTE_PROCESSOR"
341+
]["AMD EPYC 3rd Gen"]
342+
aws_cloud_constants["MAX_WATTS_BY_COMPUTE_PROCESSOR"]["AMD EPYC 3rd Gen"] = azure_cloud_constants[
343+
"MAX_WATTS_BY_COMPUTE_PROCESSOR"
344+
]["AMD EPYC 3rd Gen"]
345+
aws_cloud_constants["MEMORY_BY_COMPUTE_PROCESSOR"]["AMD EPYC 3rd Gen"] = azure_cloud_constants[
346+
"MEMORY_BY_COMPUTE_PROCESSOR"
347+
]["AMD EPYC 3rd Gen"]
348+
349+
return ccfdataset
331350

332351

333352
def get_aws_instances() -> dict:

resotodata/cloud.py

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,3 +3,54 @@
33

44
regions = LazyLoadedDict("regions.json")
55
instances = LazyLoadedDict("instances.json")
6+
7+
instances2ccfmap = {
8+
"aws": {
9+
"cpu": {
10+
"AMD EPYC 7571": "AMD EPYC 1st Gen",
11+
"AMD EPYC 7R13 Processor": "AMD EPYC 3rd Gen",
12+
"AMD EPYC 7R32": "AMD EPYC 2nd Gen",
13+
"AWS Graviton Processor": None,
14+
"AWS Graviton2 Processor": "AWS Graviton2",
15+
"AWS Graviton3 Processor": None,
16+
"Apple M1 chip with 8-core CPU, 8-core GPU, and 16-core Neural Engine": "",
17+
"High Frequency Intel Xeon E7-8880 v3 (Haswell)": "Haswell",
18+
"Intel Core i7-8700B CPU": "Coffee Lake",
19+
"Intel Skylake E5 2686 v5": "Skylake",
20+
"Intel Xeon 8375C (Ice Lake)": None,
21+
"Intel Xeon E5-2650": "Sandy Bridge",
22+
"Intel Xeon E5-2666 v3 (Haswell)": "Haswell",
23+
"Intel Xeon E5-2670": "Sandy Bridge",
24+
"Intel Xeon E5-2670 (Sandy Bridge)": "Sandy Bridge",
25+
"Intel Xeon E5-2670 v2 (Ivy Bridge)": "Ivy Bridge",
26+
"Intel Xeon E5-2670 v2 (Ivy Bridge/Sandy Bridge)": "Ivy Bridge",
27+
"Intel Xeon E5-2676 v3 (Haswell)": "Haswell",
28+
"Intel Xeon E5-2680 v2 (Ivy Bridge)": "Ivy Bridge",
29+
"Intel Xeon E5-2686 v4 (Broadwell)": "Broadwell",
30+
"Intel Xeon Family": None,
31+
"Intel Xeon Platinum 8124M": "Skylake",
32+
"Intel Xeon Platinum 8151": "Skylake",
33+
"Intel Xeon Platinum 8175": "Skylake",
34+
"Intel Xeon Platinum 8175 (Skylake)": "Skylake",
35+
"Intel Xeon Platinum 8252": "Cascade Lake",
36+
"Intel Xeon Platinum 8259 (Cascade Lake)": "Cascade Lake",
37+
"Intel Xeon Platinum 8259CL": "Cascade Lake",
38+
"Intel Xeon Platinum 8275CL (Cascade Lake)": "Cascade Lake",
39+
"Intel Xeon Platinum 8275L": "Cascade Lake",
40+
"Intel Xeon Platinum 8280L (Cascade Lake)": "Cascade Lake",
41+
"Intel Xeon Scalable (Icelake)": None,
42+
"Intel Xeon Scalable (Skylake)": "Skylake",
43+
},
44+
"gpu": {
45+
"AMD Radeon Pro V520": "AMD Radeon Pro V520",
46+
"NVIDIA A100": "Nvidia Tesla A100",
47+
"NVIDIA A10G": "Nvidia A10G",
48+
"NVIDIA GRID K520": "Nvidia K520",
49+
"NVIDIA T4 Tensor Core": "Nvidia T4",
50+
"NVIDIA T4G Tensor Core": "Nvidia T4",
51+
"NVIDIA Tesla K80": "Nvidia Tesla K80",
52+
"NVIDIA Tesla M60": "Nvidia Tesla M60",
53+
"NVIDIA Tesla V100": "Nvidia Tesla V100",
54+
},
55+
}
56+
}

resotodata/data/ccfdataset.json

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,8 @@
1414
"Ivy Bridge": 9.67,
1515
"AMD EPYC 1st Gen": 89.6,
1616
"AMD EPYC 2nd Gen": 129.78,
17-
"AWS Graviton2": 129.78
17+
"AWS Graviton2": 129.78,
18+
"AMD EPYC 3rd Gen": 128
1819
},
1920
"MIN_WATTS_AVG": 0.74,
2021
"MIN_WATTS_BY_COMPUTE_PROCESSOR": {
@@ -37,7 +38,8 @@
3738
"Nvidia Tesla A100": 46,
3839
"Nvidia Tesla P4": 9,
3940
"Nvidia Tesla P100": 36,
40-
"AMD Radeon Pro V520": 26
41+
"AMD Radeon Pro V520": 26,
42+
"AMD EPYC 3rd Gen": 0.45
4143
},
4244
"MAX_WATTS_AVG": 3.5,
4345
"MAX_WATTS_BY_COMPUTE_PROCESSOR": {
@@ -60,7 +62,8 @@
6062
"Nvidia Tesla A100": 407,
6163
"Nvidia Tesla P4": 76.5,
6264
"Nvidia Tesla P100": 306,
63-
"AMD Radeon Pro V520": 229
65+
"AMD Radeon Pro V520": 229,
66+
"AMD EPYC 3rd Gen": 2.02
6467
},
6568
"NETWORKING_COEFFICIENT": 0.001,
6669
"MEMORY_COEFFICIENT": 0.000392,

0 commit comments

Comments
 (0)