Class: Google::Apis::ComputeV1::AdvancedMachineFeatures
- Inherits:
-
Object
- Object
- Google::Apis::ComputeV1::AdvancedMachineFeatures
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/compute_v1/classes.rb,
lib/google/apis/compute_v1/representations.rb,
lib/google/apis/compute_v1/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 anImage (e.g., whether or not the OS in theImage 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.
-
#performance_monitoring_unit ⇒ String
Type of Performance Monitoring Unit requested on instance.
-
#threads_per_core ⇒ Fixnum
The number of threads per physical core.
-
#turbo_mode ⇒ String
Turbo frequency mode to use for the instance.
-
#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.
1353 1354 1355 |
# File 'lib/google/apis/compute_v1/classes.rb', line 1353 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
1313 1314 1315 |
# File 'lib/google/apis/compute_v1/classes.rb', line 1313 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
1319 1320 1321 |
# File 'lib/google/apis/compute_v1/classes.rb', line 1319 def enable_uefi_networking @enable_uefi_networking end |
#performance_monitoring_unit ⇒ String
Type of Performance Monitoring Unit requested on instance.
Corresponds to the JSON property performanceMonitoringUnit
1325 1326 1327 |
# File 'lib/google/apis/compute_v1/classes.rb', line 1325 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
1333 1334 1335 |
# File 'lib/google/apis/compute_v1/classes.rb', line 1333 def threads_per_core @threads_per_core end |
#turbo_mode ⇒ String
Turbo frequency mode to use for the instance. Supported modes include:
- ALL_CORE_MAX
Using empty string or not setting this field will use the platform-specific
default turbo mode.
Corresponds to the JSON property
turboMode
1342 1343 1344 |
# File 'lib/google/apis/compute_v1/classes.rb', line 1342 def turbo_mode @turbo_mode 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
1351 1352 1353 |
# File 'lib/google/apis/compute_v1/classes.rb', line 1351 def visible_core_count @visible_core_count end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1358 1359 1360 1361 1362 1363 1364 1365 |
# File 'lib/google/apis/compute_v1/classes.rb', line 1358 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) @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) @turbo_mode = args[:turbo_mode] if args.key?(:turbo_mode) @visible_core_count = args[:visible_core_count] if args.key?(:visible_core_count) end |