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).
-
#numa_node_count ⇒ Fixnum
The number of vNUMA nodes.
-
#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.
1128 1129 1130 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 1128 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
1105 1106 1107 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 1105 def enable_nested_virtualization @enable_nested_virtualization end |
#numa_node_count ⇒ Fixnum
The number of vNUMA nodes.
Corresponds to the JSON property numaNodeCount
1111 1112 1113 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 1111 def numa_node_count @numa_node_count 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
1118 1119 1120 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 1118 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
1126 1127 1128 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 1126 def visible_core_count @visible_core_count end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1133 1134 1135 1136 1137 1138 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 1133 def update!(**args) @enable_nested_virtualization = args[:enable_nested_virtualization] if args.key?(:enable_nested_virtualization) @numa_node_count = args[:numa_node_count] if args.key?(:numa_node_count) @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 |