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.
1117 1118 1119 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 1117 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
1094 1095 1096 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 1094 def enable_nested_virtualization @enable_nested_virtualization end |
#numa_node_count ⇒ Fixnum
The number of vNUMA nodes.
Corresponds to the JSON property numaNodeCount
1100 1101 1102 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 1100 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
1107 1108 1109 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 1107 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
1115 1116 1117 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 1115 def visible_core_count @visible_core_count end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1122 1123 1124 1125 1126 1127 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 1122 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 |