-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathvmwidgets.json
More file actions
184 lines (184 loc) · 7.23 KB
/
Copy pathvmwidgets.json
File metadata and controls
184 lines (184 loc) · 7.23 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
{
"widgets": {
"CPU": [
{
"name": "N slots",
"tooltip": "Number of CPU slots required for the VM",
"long_desc": "This is the number of CPU executors one wants to get assigned to the VM. Slots can either be cores or threads. When choosing cores, all the threads of each assigned physical core (in case SMT/HT is enabled) will be usable by the VM.",
"widget_type": "slider",
"config": {
"min": 1,
"max": 256,
"default": 1,
"step_func": "log",
"step_size": 2
},
"output_type": "int",
"output_target": "slots"
},
{
"name": "Max overprovision",
"tooltip": "Maximum allowed CPU overprovisioning, aka VM pileup on shared codes",
"long_desc": "Through this option one can specify the VM needs to run on a certain number of CPU slots which can be time-shared with up to a number of other VMs equal to the selected value.",
"widget_type": "slider",
"config": {
"min": 1,
"max": 10,
"default": 4,
"step_func": "lin",
"step_size": 1
},
"output_type": "int",
"output_target": "overprovision"
},
{
"name": "Min frequency",
"tooltip": "Minimum CPU frequency required by the VM",
"long_desc": "This selector enables requiring a specific minimum operating frequency for the CPU slots assigned to the VM.",
"widget_type": "slider",
"config": {
"min": 0.5,
"max": 5.0,
"default": 0,
"step_func": "lin",
"step_size": 0.5,
"unit": "GHz"
},
"output_type": "float",
"output_target": "min_frequency"
},
{
"name": "Slot type",
"tooltip": "Selector to require threads or cores. 'Cores' means all threads belonging to a physical core will be attached for each requested core.",
"long_desc": "Through this selector one can decide how to interpret the CPU slots. For each 'core' slot all the threads belonging to a physical core will be attached to the VM, including the SMT/HT ones.",
"widget_type": "switch",
"config": {
"true_value": "Threads",
"false_value": "Cores",
"default": "true_value"
},
"output_type": "bool",
"output_target": "allowSMT"
},
{
"name": "Microarchitecture",
"tooltip": "Selector for one or more CPU architectures",
"long_desc": "This option allows one to decide what CPU architecture is required. Multiple architectures can be selected as alternative options.",
"widget_type": "checkboxes",
"config": {
"values": [
"X86_32",
"X86_64",
"ARM_7",
"ARM_8"
],
"default": "X86_64"
},
"output_type": "str",
"output_target": "archs"
},
{
"name": "Optional ISA extensions",
"tooltip": "Selector for one or more CPU instruction set extensions, such as AVX512 or SSE",
"long_desc": "This option forces the VM to be ran on a CPU sporting all the selected Instruction Set Extensions which might enable improved performances on specific workloads.",
"widget_type": "dropdown_multi",
"config": {
"values": [
"3DNow!",
"ABM",
"ADX",
"AES",
"AMX",
"AVX",
"AVX2",
"AVX-512",
"BMI1",
"BMI2",
"CLMUL",
"E3DNow!",
"EMMX",
"F16C",
"FMA3",
"FMA4",
"FPU",
"MKTME",
"MMX",
"MPX",
"PMEM",
"PREFETCH",
"RdRAND",
"SEV",
"SGX",
"SHA",
"SME",
"SMM",
"SMX",
"SSE",
"SSE2",
"SSE3",
"SSE4.1",
"SSE4.2",
"SSE4a",
"SSE5",
"SSSE3",
"TBM",
"TME",
"TSME",
"TSX",
"XOP"
]
},
"output_type": "str",
"output_target": "flags"
}
],
"RAM": [
{
"name": "RAM size",
"tooltip": "Amount of RAM required by the VM, expressed in gigabytes",
"long_desc": "",
"widget_type": "slider",
"config": {
"min": 0.25,
"max": 1024,
"default": 0.5,
"step_func": "log",
"step_size": 2,
"unit": "GB"
},
"output_type": "float",
"output_target": "ramsize"
},
{
"name": "Require ECC",
"tooltip": "Selector to force the VM to spawn on a ECC-equipped host",
"long_desc": "Error Correcting memory is a RAM feature which improves hardware reliability. While ECC registers won't be visible to the VM, this flag ensures the host machine will sport such feature.",
"widget_type": "switch",
"config": {
"true_value": "True",
"false_value": "False",
"default": "false_value"
},
"output_type": "bool",
"output_target": "reqECC"
}
],
"OS": [
{
"name": "OS family",
"tooltip": "Selector for the OS family the VM OS belongs to",
"long_desc": "",
"widget_type": "radio",
"config": {
"values": [
"Linux",
"Macos",
"Windows"
]
},
"output_type": "str",
"output_target": "misc->os_family"
}
]
}
}