Class: Google::Apis::ComputeAlpha::ResourcePolicyGroupPlacementPolicy
- Inherits:
-
Object
- Object
- Google::Apis::ComputeAlpha::ResourcePolicyGroupPlacementPolicy
- 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
A GroupPlacementPolicy specifies resource placement configuration. It specifies the failure bucket separation
Instance Attribute Summary collapse
-
#accelerator_topology_mode ⇒ String
Specifies the connection mode for the accelerator topology.
-
#availability_domain_count ⇒ Fixnum
The number of availability domains to spread instances across.
-
#collocation ⇒ String
Specifies network collocation Corresponds to the JSON property
collocation. -
#gpu_topology ⇒ String
Specifies the shape of the GPU slice, in slice based GPU families eg.
-
#max_distance ⇒ Fixnum
Specifies the number of max logical switches.
-
#scope ⇒ String
Scope specifies the availability domain to which the VMs should be spread.
-
#slice_count ⇒ Fixnum
Specifies the number of slices in a multislice workload.
-
#tpu_topology ⇒ String
Specifies the shape of the TPU slice Corresponds to the JSON property
tpuTopology. -
#vm_count ⇒ Fixnum
Number of VMs in this placement group.
Instance Method Summary collapse
-
#initialize(**args) ⇒ ResourcePolicyGroupPlacementPolicy
constructor
A new instance of ResourcePolicyGroupPlacementPolicy.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ ResourcePolicyGroupPlacementPolicy
Returns a new instance of ResourcePolicyGroupPlacementPolicy.
60105 60106 60107 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 60105 def initialize(**args) update!(**args) end |
Instance Attribute Details
#accelerator_topology_mode ⇒ String
Specifies the connection mode for the accelerator topology. If not
specified, the default is AUTO_CONNECT.
Corresponds to the JSON property acceleratorTopologyMode
60057 60058 60059 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 60057 def accelerator_topology_mode @accelerator_topology_mode end |
#availability_domain_count ⇒ Fixnum
The number of availability domains to spread instances across. If two
instances are in different availability domain, they are not in the same
low latency network.
Corresponds to the JSON property availabilityDomainCount
60064 60065 60066 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 60064 def availability_domain_count @availability_domain_count end |
#collocation ⇒ String
Specifies network collocation
Corresponds to the JSON property collocation
60069 60070 60071 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 60069 def collocation @collocation end |
#gpu_topology ⇒ String
Specifies the shape of the GPU slice, in slice based GPU families eg.
A4X.
Corresponds to the JSON property gpuTopology
60075 60076 60077 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 60075 def gpu_topology @gpu_topology end |
#max_distance ⇒ Fixnum
Specifies the number of max logical switches.
Corresponds to the JSON property maxDistance
60080 60081 60082 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 60080 def max_distance @max_distance end |
#scope ⇒ String
Scope specifies the availability domain to which the VMs should be
spread.
Corresponds to the JSON property scope
60086 60087 60088 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 60086 def scope @scope end |
#slice_count ⇒ Fixnum
Specifies the number of slices in a multislice workload.
Corresponds to the JSON property sliceCount
60091 60092 60093 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 60091 def slice_count @slice_count end |
#tpu_topology ⇒ String
Specifies the shape of the TPU slice
Corresponds to the JSON property tpuTopology
60096 60097 60098 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 60096 def tpu_topology @tpu_topology end |
#vm_count ⇒ Fixnum
Number of VMs in this placement group. Google does not recommend that you
use this field unless you use a compact policy and you want your policy
to work only if it contains this exact number of VMs.
Corresponds to the JSON property vmCount
60103 60104 60105 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 60103 def vm_count @vm_count end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
60110 60111 60112 60113 60114 60115 60116 60117 60118 60119 60120 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 60110 def update!(**args) @accelerator_topology_mode = args[:accelerator_topology_mode] if args.key?(:accelerator_topology_mode) @availability_domain_count = args[:availability_domain_count] if args.key?(:availability_domain_count) @collocation = args[:collocation] if args.key?(:collocation) @gpu_topology = args[:gpu_topology] if args.key?(:gpu_topology) @max_distance = args[:max_distance] if args.key?(:max_distance) @scope = args[:scope] if args.key?(:scope) @slice_count = args[:slice_count] if args.key?(:slice_count) @tpu_topology = args[:tpu_topology] if args.key?(:tpu_topology) @vm_count = args[:vm_count] if args.key?(:vm_count) end |