service-capacity-modeling 0.3.71__tar.gz → 0.3.73__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of service-capacity-modeling might be problematic. Click here for more details.
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/PKG-INFO +1 -1
- service_capacity_modeling-0.3.73/service_capacity_modeling/hardware/profiles/shapes/aws/auto_i7i.json +220 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/models/org/netflix/elasticsearch.py +8 -3
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/tools/auto_shape.py +10 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/tools/instance_families.py +7 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling.egg-info/PKG-INFO +1 -1
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling.egg-info/SOURCES.txt +1 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/LICENSE +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/README.md +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/__init__.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/capacity_planner.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/hardware/__init__.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/hardware/profiles/__init__.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/hardware/profiles/pricing/aws/3yr-reserved_ec2.json +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/hardware/profiles/pricing/aws/3yr-reserved_zz-overrides.json +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/hardware/profiles/profiles.txt +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_c5.json +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_c5a.json +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_c5d.json +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_c5n.json +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_c6a.json +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_c6i.json +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_c6id.json +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_c7a.json +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_c7i.json +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_c8i.json +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_m4.json +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_m5.json +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_m5n.json +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_m6a.json +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_m6i.json +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_m6id.json +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_m6idn.json +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_m6in.json +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_m7a.json +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_m7i.json +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_m8i.json +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_r4.json +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_r5.json +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_r5n.json +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_r6a.json +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_r6i.json +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_r6id.json +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_r6idn.json +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_r6in.json +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_r7a.json +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_r7i.json +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/hardware/profiles/shapes/aws/auto_r8i.json +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/hardware/profiles/shapes/aws/manual_drives.json +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/hardware/profiles/shapes/aws/manual_instances.json +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/hardware/profiles/shapes/aws/manual_services.json +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/interface.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/models/__init__.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/models/common.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/models/headroom_strategy.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/models/org/__init__.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/models/org/netflix/__init__.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/models/org/netflix/aurora.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/models/org/netflix/cassandra.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/models/org/netflix/counter.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/models/org/netflix/crdb.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/models/org/netflix/ddb.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/models/org/netflix/entity.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/models/org/netflix/evcache.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/models/org/netflix/graphkv.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/models/org/netflix/iso_date_math.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/models/org/netflix/kafka.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/models/org/netflix/key_value.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/models/org/netflix/postgres.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/models/org/netflix/rds.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/models/org/netflix/stateless_java.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/models/org/netflix/time_series.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/models/org/netflix/time_series_config.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/models/org/netflix/wal.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/models/org/netflix/zookeeper.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/models/utils.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/stats.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/tools/__init__.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/tools/fetch_pricing.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling/tools/generate_missing.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling.egg-info/dependency_links.txt +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling.egg-info/entry_points.txt +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling.egg-info/requires.txt +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/service_capacity_modeling.egg-info/top_level.txt +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/setup.cfg +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/setup.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/tests/test_arguments.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/tests/test_buffers.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/tests/test_common.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/tests/test_desire_merge.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/tests/test_generate_scenarios.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/tests/test_hardware.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/tests/test_hardware_shapes.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/tests/test_headroom_strategy.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/tests/test_io2.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/tests/test_model_dump.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/tests/test_reproducible.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/tests/test_simulation.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/tests/test_utils.py +0 -0
- {service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/tests/test_working_set.py +0 -0
|
@@ -0,0 +1,220 @@
|
|
|
1
|
+
{
|
|
2
|
+
"instances": {
|
|
3
|
+
"i7i.large": {
|
|
4
|
+
"name": "i7i.large",
|
|
5
|
+
"cpu": 2,
|
|
6
|
+
"cpu_cores": 1,
|
|
7
|
+
"cpu_ghz": 2.4,
|
|
8
|
+
"cpu_ipc_scale": 1.33,
|
|
9
|
+
"ram_gib": 15.26,
|
|
10
|
+
"net_mbps": 1171.0,
|
|
11
|
+
"drive": {
|
|
12
|
+
"name": "ephem",
|
|
13
|
+
"size_gib": 436,
|
|
14
|
+
"read_io_per_s": 75000,
|
|
15
|
+
"write_io_per_s": 41250,
|
|
16
|
+
"single_tenant": false,
|
|
17
|
+
"read_io_latency_ms": {
|
|
18
|
+
"low": 0.071,
|
|
19
|
+
"mid": 0.079,
|
|
20
|
+
"high": 0.258,
|
|
21
|
+
"confidence": 0.9,
|
|
22
|
+
"minimum_value": 0.026,
|
|
23
|
+
"maximum_value": 2.153
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
"i7i.xlarge": {
|
|
28
|
+
"name": "i7i.xlarge",
|
|
29
|
+
"cpu": 4,
|
|
30
|
+
"cpu_cores": 2,
|
|
31
|
+
"cpu_ghz": 2.4,
|
|
32
|
+
"cpu_ipc_scale": 1.33,
|
|
33
|
+
"ram_gib": 30.52,
|
|
34
|
+
"net_mbps": 2343.0,
|
|
35
|
+
"drive": {
|
|
36
|
+
"name": "ephem",
|
|
37
|
+
"size_gib": 873,
|
|
38
|
+
"read_io_per_s": 150000,
|
|
39
|
+
"write_io_per_s": 82500,
|
|
40
|
+
"single_tenant": false,
|
|
41
|
+
"read_io_latency_ms": {
|
|
42
|
+
"low": 0.071,
|
|
43
|
+
"mid": 0.079,
|
|
44
|
+
"high": 0.258,
|
|
45
|
+
"confidence": 0.9,
|
|
46
|
+
"minimum_value": 0.026,
|
|
47
|
+
"maximum_value": 2.153
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
},
|
|
51
|
+
"i7i.2xlarge": {
|
|
52
|
+
"name": "i7i.2xlarge",
|
|
53
|
+
"cpu": 8,
|
|
54
|
+
"cpu_cores": 4,
|
|
55
|
+
"cpu_ghz": 2.4,
|
|
56
|
+
"cpu_ipc_scale": 1.33,
|
|
57
|
+
"ram_gib": 61.04,
|
|
58
|
+
"net_mbps": 4687.0,
|
|
59
|
+
"drive": {
|
|
60
|
+
"name": "ephem",
|
|
61
|
+
"size_gib": 1746,
|
|
62
|
+
"read_io_per_s": 300000,
|
|
63
|
+
"write_io_per_s": 165000,
|
|
64
|
+
"single_tenant": false,
|
|
65
|
+
"read_io_latency_ms": {
|
|
66
|
+
"low": 0.071,
|
|
67
|
+
"mid": 0.079,
|
|
68
|
+
"high": 0.258,
|
|
69
|
+
"confidence": 0.9,
|
|
70
|
+
"minimum_value": 0.026,
|
|
71
|
+
"maximum_value": 2.153
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
},
|
|
75
|
+
"i7i.4xlarge": {
|
|
76
|
+
"name": "i7i.4xlarge",
|
|
77
|
+
"cpu": 16,
|
|
78
|
+
"cpu_cores": 8,
|
|
79
|
+
"cpu_ghz": 2.4,
|
|
80
|
+
"cpu_ipc_scale": 1.33,
|
|
81
|
+
"ram_gib": 122.07,
|
|
82
|
+
"net_mbps": 9375.0,
|
|
83
|
+
"drive": {
|
|
84
|
+
"name": "ephem",
|
|
85
|
+
"size_gib": 3492,
|
|
86
|
+
"read_io_per_s": 600000,
|
|
87
|
+
"write_io_per_s": 330000,
|
|
88
|
+
"single_tenant": true,
|
|
89
|
+
"read_io_latency_ms": {
|
|
90
|
+
"low": 0.071,
|
|
91
|
+
"mid": 0.079,
|
|
92
|
+
"high": 0.258,
|
|
93
|
+
"confidence": 0.9,
|
|
94
|
+
"minimum_value": 0.026,
|
|
95
|
+
"maximum_value": 2.153
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
},
|
|
99
|
+
"i7i.8xlarge": {
|
|
100
|
+
"name": "i7i.8xlarge",
|
|
101
|
+
"cpu": 32,
|
|
102
|
+
"cpu_cores": 16,
|
|
103
|
+
"cpu_ghz": 2.4,
|
|
104
|
+
"cpu_ipc_scale": 1.33,
|
|
105
|
+
"ram_gib": 244.14,
|
|
106
|
+
"net_mbps": 15000.0,
|
|
107
|
+
"drive": {
|
|
108
|
+
"name": "ephem",
|
|
109
|
+
"size_gib": 6985,
|
|
110
|
+
"read_io_per_s": 1200000,
|
|
111
|
+
"write_io_per_s": 660000,
|
|
112
|
+
"single_tenant": true,
|
|
113
|
+
"read_io_latency_ms": {
|
|
114
|
+
"low": 0.071,
|
|
115
|
+
"mid": 0.079,
|
|
116
|
+
"high": 0.258,
|
|
117
|
+
"confidence": 0.9,
|
|
118
|
+
"minimum_value": 0.026,
|
|
119
|
+
"maximum_value": 2.153
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
},
|
|
123
|
+
"i7i.12xlarge": {
|
|
124
|
+
"name": "i7i.12xlarge",
|
|
125
|
+
"cpu": 48,
|
|
126
|
+
"cpu_cores": 24,
|
|
127
|
+
"cpu_ghz": 2.4,
|
|
128
|
+
"cpu_ipc_scale": 1.33,
|
|
129
|
+
"ram_gib": 366.21,
|
|
130
|
+
"net_mbps": 22500.0,
|
|
131
|
+
"drive": {
|
|
132
|
+
"name": "ephem",
|
|
133
|
+
"size_gib": 10477,
|
|
134
|
+
"read_io_per_s": 1800000,
|
|
135
|
+
"write_io_per_s": 990000,
|
|
136
|
+
"single_tenant": true,
|
|
137
|
+
"read_io_latency_ms": {
|
|
138
|
+
"low": 0.071,
|
|
139
|
+
"mid": 0.079,
|
|
140
|
+
"high": 0.258,
|
|
141
|
+
"confidence": 0.9,
|
|
142
|
+
"minimum_value": 0.026,
|
|
143
|
+
"maximum_value": 2.153
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
},
|
|
147
|
+
"i7i.16xlarge": {
|
|
148
|
+
"name": "i7i.16xlarge",
|
|
149
|
+
"cpu": 64,
|
|
150
|
+
"cpu_cores": 32,
|
|
151
|
+
"cpu_ghz": 2.4,
|
|
152
|
+
"cpu_ipc_scale": 1.33,
|
|
153
|
+
"ram_gib": 488.28,
|
|
154
|
+
"net_mbps": 30000.0,
|
|
155
|
+
"drive": {
|
|
156
|
+
"name": "ephem",
|
|
157
|
+
"size_gib": 13970,
|
|
158
|
+
"read_io_per_s": 2400000,
|
|
159
|
+
"write_io_per_s": 1320000,
|
|
160
|
+
"single_tenant": true,
|
|
161
|
+
"read_io_latency_ms": {
|
|
162
|
+
"low": 0.071,
|
|
163
|
+
"mid": 0.079,
|
|
164
|
+
"high": 0.258,
|
|
165
|
+
"confidence": 0.9,
|
|
166
|
+
"minimum_value": 0.026,
|
|
167
|
+
"maximum_value": 2.153
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
},
|
|
171
|
+
"i7i.24xlarge": {
|
|
172
|
+
"name": "i7i.24xlarge",
|
|
173
|
+
"cpu": 96,
|
|
174
|
+
"cpu_cores": 48,
|
|
175
|
+
"cpu_ghz": 2.4,
|
|
176
|
+
"cpu_ipc_scale": 1.33,
|
|
177
|
+
"ram_gib": 732.42,
|
|
178
|
+
"net_mbps": 45000.0,
|
|
179
|
+
"drive": {
|
|
180
|
+
"name": "ephem",
|
|
181
|
+
"size_gib": 20955,
|
|
182
|
+
"read_io_per_s": 3600000,
|
|
183
|
+
"write_io_per_s": 1980000,
|
|
184
|
+
"single_tenant": true,
|
|
185
|
+
"read_io_latency_ms": {
|
|
186
|
+
"low": 0.071,
|
|
187
|
+
"mid": 0.079,
|
|
188
|
+
"high": 0.258,
|
|
189
|
+
"confidence": 0.9,
|
|
190
|
+
"minimum_value": 0.026,
|
|
191
|
+
"maximum_value": 2.153
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
},
|
|
195
|
+
"i7i.48xlarge": {
|
|
196
|
+
"name": "i7i.48xlarge",
|
|
197
|
+
"cpu": 192,
|
|
198
|
+
"cpu_cores": 96,
|
|
199
|
+
"cpu_ghz": 2.4,
|
|
200
|
+
"cpu_ipc_scale": 1.33,
|
|
201
|
+
"ram_gib": 1464.84,
|
|
202
|
+
"net_mbps": 90000.0,
|
|
203
|
+
"drive": {
|
|
204
|
+
"name": "ephem",
|
|
205
|
+
"size_gib": 41910,
|
|
206
|
+
"read_io_per_s": 7200000,
|
|
207
|
+
"write_io_per_s": 3960000,
|
|
208
|
+
"single_tenant": true,
|
|
209
|
+
"read_io_latency_ms": {
|
|
210
|
+
"low": 0.071,
|
|
211
|
+
"mid": 0.079,
|
|
212
|
+
"high": 0.258,
|
|
213
|
+
"confidence": 0.9,
|
|
214
|
+
"minimum_value": 0.026,
|
|
215
|
+
"maximum_value": 2.153
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
}
|
|
@@ -82,6 +82,11 @@ def _estimate_elasticsearch_requirement( # noqa: E501 pylint: disable=too-many-
|
|
|
82
82
|
The input desires should be the **regional** desire, and this function will
|
|
83
83
|
return the zonal capacity requirement
|
|
84
84
|
"""
|
|
85
|
+
# NOTE: ElasticSearch is only using buffers for disk but CPU and disk
|
|
86
|
+
# have hard coded values. In a follow-up change these values (1.5 and 2)
|
|
87
|
+
# should be converted to buffers as well to be idiomatic with the other
|
|
88
|
+
# stateful models (e.g. cassandra / EVCache, kafka)
|
|
89
|
+
|
|
85
90
|
# Keep half of the cores free for background work (merging mostly)
|
|
86
91
|
needed_cores = normalize_cores(
|
|
87
92
|
core_count=math.ceil(sqrt_staffed_cores(desires) * 1.5),
|
|
@@ -191,9 +196,9 @@ class NflxElasticsearchDataCapacityModel(CapacityModel):
|
|
|
191
196
|
def default_desires(
|
|
192
197
|
user_desires, extra_model_arguments: Dict[str, Any]
|
|
193
198
|
) -> CapacityDesires:
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
199
|
+
desires = CapacityModel.default_desires(user_desires, extra_model_arguments)
|
|
200
|
+
desires.buffers = NflxElasticsearchDataCapacityModel.default_buffers()
|
|
201
|
+
return desires
|
|
197
202
|
|
|
198
203
|
@staticmethod
|
|
199
204
|
def capacity_plan(
|
|
@@ -23,6 +23,14 @@ from service_capacity_modeling.interface import normalized_aws_size
|
|
|
23
23
|
|
|
24
24
|
# Default latency curves from FIO testing per generation
|
|
25
25
|
latency_curve_ms: Dict[str, FixedInterval] = {
|
|
26
|
+
"7th-gen-ephemeral": FixedInterval(
|
|
27
|
+
low=0.071,
|
|
28
|
+
mid=0.079,
|
|
29
|
+
high=0.258,
|
|
30
|
+
confidence=0.9,
|
|
31
|
+
minimum_value=0.026,
|
|
32
|
+
maximum_value=2.153,
|
|
33
|
+
),
|
|
26
34
|
"6th-gen-ssd": FixedInterval(
|
|
27
35
|
low=0.1,
|
|
28
36
|
mid=0.125,
|
|
@@ -60,10 +68,12 @@ aws_xlarge_iops = {
|
|
|
60
68
|
"c6id": (67_083, 33_542),
|
|
61
69
|
"c7gd": (67_083, 33_542),
|
|
62
70
|
# Storage has more
|
|
71
|
+
# https://docs.aws.amazon.com/ec2/latest/instancetypes/so.html#so_instance-store
|
|
63
72
|
"i3": (206_250, 70_000),
|
|
64
73
|
"i3en": (85_000, 65_000),
|
|
65
74
|
"i4g": (62_500, 50_000),
|
|
66
75
|
"i4i": (100_000, 55_000),
|
|
76
|
+
"i7i": (150_000, 82_500),
|
|
67
77
|
"i7ie": (108_333, 86_666),
|
|
68
78
|
"i8g": (150_000, 82_500),
|
|
69
79
|
}
|
|
@@ -101,6 +101,13 @@ INSTANCE_TYPES = {
|
|
|
101
101
|
# 'io_latency_curve': '5th-gen-ssd',
|
|
102
102
|
# 'cpu_ipc_scale': None
|
|
103
103
|
# },
|
|
104
|
+
"i7i": {
|
|
105
|
+
"xl_iops": "150,000/82,500",
|
|
106
|
+
"io_latency_curve": "7th-gen-ephemeral",
|
|
107
|
+
"cpu_ipc_scale": EMERALD_RAPIDS_IPC,
|
|
108
|
+
"cpu_turbo_single_ghz": 4.0,
|
|
109
|
+
"cpu_turbo_all_ghz": 3.2,
|
|
110
|
+
},
|
|
104
111
|
"m4": {
|
|
105
112
|
"xl_iops": None,
|
|
106
113
|
"io_latency_curve": None,
|
|
@@ -26,6 +26,7 @@ service_capacity_modeling/hardware/profiles/shapes/aws/auto_c6id.json
|
|
|
26
26
|
service_capacity_modeling/hardware/profiles/shapes/aws/auto_c7a.json
|
|
27
27
|
service_capacity_modeling/hardware/profiles/shapes/aws/auto_c7i.json
|
|
28
28
|
service_capacity_modeling/hardware/profiles/shapes/aws/auto_c8i.json
|
|
29
|
+
service_capacity_modeling/hardware/profiles/shapes/aws/auto_i7i.json
|
|
29
30
|
service_capacity_modeling/hardware/profiles/shapes/aws/auto_m4.json
|
|
30
31
|
service_capacity_modeling/hardware/profiles/shapes/aws/auto_m5.json
|
|
31
32
|
service_capacity_modeling/hardware/profiles/shapes/aws/auto_m5n.json
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/tests/test_arguments.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/tests/test_desire_merge.py
RENAMED
|
File without changes
|
|
File without changes
|
{service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/tests/test_hardware.py
RENAMED
|
File without changes
|
{service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/tests/test_hardware_shapes.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/tests/test_model_dump.py
RENAMED
|
File without changes
|
{service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/tests/test_reproducible.py
RENAMED
|
File without changes
|
{service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/tests/test_simulation.py
RENAMED
|
File without changes
|
|
File without changes
|
{service_capacity_modeling-0.3.71 → service_capacity_modeling-0.3.73}/tests/test_working_set.py
RENAMED
|
File without changes
|