Class: Google::Apis::ComputeAlpha::AdvancedMachineFeatures
- Inherits:
-
Object
- Object
- Google::Apis::ComputeAlpha::AdvancedMachineFeatures
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/compute_alpha/classes.rb,
lib/google/apis/compute_alpha/representations.rb,
lib/google/apis/compute_alpha/representations.rb
Overview
Specifies options for controlling advanced machine features. Options that would traditionally be configured in a BIOS belong here. Features that require operating system support may have corresponding entries in the GuestOsFeatures of an Image (e.g., whether or not the OS in the Image supports nested virtualization being enabled or disabled).
Instance Attribute Summary collapse
-
#enable_nested_virtualization ⇒ Boolean
(also: #enable_nested_virtualization?)
Whether to enable nested virtualization or not (default is false).
-
#enable_uefi_networking ⇒ Boolean
(also: #enable_uefi_networking?)
Whether to enable UEFI networking for instance creation.
-
#enable_watchdog_timer ⇒ Boolean
(also: #enable_watchdog_timer?)
Whether to enable the watchdog timer.
-
#numa_node_count ⇒ Fixnum
The number of vNUMA nodes.
-
#performance_monitoring_unit ⇒ String
Type of Performance Monitoring Unit requested on instance.
-
#threads_per_core ⇒ Fixnum
The number of threads per physical core.
-
#visible_core_count ⇒ Fixnum
The number of physical cores to expose to an instance.
Instance Method Summary collapse
-
#initialize(**args) ⇒ AdvancedMachineFeatures
constructor
A new instance of AdvancedMachineFeatures.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ AdvancedMachineFeatures
Returns a new instance of AdvancedMachineFeatures.
1205 1206 1207 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 1205 def initialize(**args) update!(**args) end |
Instance Attribute Details
#enable_nested_virtualization ⇒ Boolean Also known as: enable_nested_virtualization?
Whether to enable nested virtualization or not (default is false).
Corresponds to the JSON property enableNestedVirtualization
1165 1166 1167 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 1165 def enable_nested_virtualization @enable_nested_virtualization end |
#enable_uefi_networking ⇒ Boolean Also known as: enable_uefi_networking?
Whether to enable UEFI networking for instance creation.
Corresponds to the JSON property enableUefiNetworking
1171 1172 1173 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 1171 def enable_uefi_networking @enable_uefi_networking end |
#enable_watchdog_timer ⇒ Boolean Also known as: enable_watchdog_timer?
Whether to enable the watchdog timer.
Corresponds to the JSON property enableWatchdogTimer
1177 1178 1179 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 1177 def enable_watchdog_timer @enable_watchdog_timer end |
#numa_node_count ⇒ Fixnum
The number of vNUMA nodes.
Corresponds to the JSON property numaNodeCount
1183 1184 1185 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 1183 def numa_node_count @numa_node_count end |
#performance_monitoring_unit ⇒ String
Type of Performance Monitoring Unit requested on instance.
Corresponds to the JSON property performanceMonitoringUnit
1188 1189 1190 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 1188 def performance_monitoring_unit @performance_monitoring_unit end |
#threads_per_core ⇒ Fixnum
The number of threads per physical core. To disable simultaneous
multithreading (SMT) set this to 1. If unset, the maximum number of threads
supported per core by the underlying processor is assumed.
Corresponds to the JSON property threadsPerCore
1195 1196 1197 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 1195 def threads_per_core @threads_per_core end |
#visible_core_count ⇒ Fixnum
The number of physical cores to expose to an instance. Multiply by the number
of threads per core to compute the total number of virtual CPUs to expose to
the instance. If unset, the number of cores is inferred from the instance's
nominal CPU count and the underlying platform's SMT width.
Corresponds to the JSON property visibleCoreCount
1203 1204 1205 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 1203 def visible_core_count @visible_core_count end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1210 1211 1212 1213 1214 1215 1216 1217 1218 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 1210 def update!(**args) @enable_nested_virtualization = args[:enable_nested_virtualization] if args.key?(:enable_nested_virtualization) @enable_uefi_networking = args[:enable_uefi_networking] if args.key?(:enable_uefi_networking) @enable_watchdog_timer = args[:enable_watchdog_timer] if args.key?(:enable_watchdog_timer) @numa_node_count = args[:numa_node_count] if args.key?(:numa_node_count) @performance_monitoring_unit = args[:performance_monitoring_unit] if args.key?(:performance_monitoring_unit) @threads_per_core = args[:threads_per_core] if args.key?(:threads_per_core) @visible_core_count = args[:visible_core_count] if args.key?(:visible_core_count) end |