Package com.gpudb.protocol
Class CreateResourceGroupRequest
- java.lang.Object
-
- com.gpudb.protocol.CreateResourceGroupRequest
-
- All Implemented Interfaces:
org.apache.avro.generic.GenericContainer,org.apache.avro.generic.IndexedRecord
public class CreateResourceGroupRequest extends Object implements org.apache.avro.generic.IndexedRecord
A set of parameters forGPUdb.createResourceGroup.Creates a new resource group to facilitate resource management.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classCreateResourceGroupRequest.OptionsA set of string constants for theCreateResourceGroupRequestparameteroptions.static classCreateResourceGroupRequest.RankingA set of string constants for theCreateResourceGroupRequestparameterranking.static classCreateResourceGroupRequest.TierAttributesA set of string constants for theCreateResourceGroupRequestparametertierAttributes.
-
Constructor Summary
Constructors Constructor Description CreateResourceGroupRequest()Constructs a CreateResourceGroupRequest object with default parameters.CreateResourceGroupRequest(String name, Map<String,Map<String,String>> tierAttributes, String ranking, String adjoiningResourceGroup, Map<String,String> options)Constructs a CreateResourceGroupRequest object with the specified parameters.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanequals(Object obj)Objectget(int index)This method supports the Avro framework and is not intended to be called directly by the user.StringgetAdjoiningResourceGroup()static org.apache.avro.SchemagetClassSchema()This method supports the Avro framework and is not intended to be called directly by the user.StringgetName()Name of the group to be created.Map<String,String>getOptions()Optional parameters.StringgetRanking()Indicates the relative ranking among existing resource groups where this new resource group will be placed.org.apache.avro.SchemagetSchema()This method supports the Avro framework and is not intended to be called directly by the user.Map<String,Map<String,String>>getTierAttributes()Optional map containing tier names and their respective attribute group limits.inthashCode()voidput(int index, Object value)This method supports the Avro framework and is not intended to be called directly by the user.CreateResourceGroupRequestsetAdjoiningResourceGroup(String adjoiningResourceGroup)CreateResourceGroupRequestsetName(String name)Name of the group to be created.CreateResourceGroupRequestsetOptions(Map<String,String> options)Optional parameters.CreateResourceGroupRequestsetRanking(String ranking)Indicates the relative ranking among existing resource groups where this new resource group will be placed.CreateResourceGroupRequestsetTierAttributes(Map<String,Map<String,String>> tierAttributes)Optional map containing tier names and their respective attribute group limits.StringtoString()
-
-
-
Constructor Detail
-
CreateResourceGroupRequest
public CreateResourceGroupRequest()
Constructs a CreateResourceGroupRequest object with default parameters.
-
CreateResourceGroupRequest
public CreateResourceGroupRequest(String name, Map<String,Map<String,String>> tierAttributes, String ranking, String adjoiningResourceGroup, Map<String,String> options)
Constructs a CreateResourceGroupRequest object with the specified parameters.- Parameters:
name- Name of the group to be created. Must contain only letters, digits, and underscores, and cannot begin with a digit. Must not match existing resource group name.tierAttributes- Optional map containing tier names and their respective attribute group limits. The only valid attribute limit that can be set is max_memory (in bytes) for the VRAM and RAM tiers. For instance, to set max VRAM capacity to 1GB per rank per GPU and max RAM capacity to 10GB per rank, use: {'VRAM':{'max_memory':'1000000000'}, 'RAM':{'max_memory':'10000000000'}}.MAX_MEMORY: Maximum amount of memory usable at one time, per rank, per GPU, for the VRAM tier; or maximum amount of memory usable at one time, per rank, for the RAM tier.
Map.ranking- Indicates the relative ranking among existing resource groups where this new resource group will be placed. Supported values:FIRST: Make this resource group the new first one in the orderingLAST: Make this resource group the new last one in the orderingBEFORE: Place this resource group before the one specified byadjoiningResourceGroupin the orderingAFTER: Place this resource group after the one specified byadjoiningResourceGroupin the ordering
adjoiningResourceGroup- IfrankingisBEFOREorAFTER, this field indicates the resource group before or after which the current group will be placed; otherwise, leave blank. The default value is ''.options- Optional parameters.MAX_CPU_CONCURRENCY: Maximum number of simultaneous threads that will be used to execute a request, per rank, for this group. The minimum allowed value is '4'.MAX_DATA: Maximum amount of data, per rank, in bytes, that can be used by all database objects within this group. Set to -1 to indicate no upper limit. The minimum allowed value is '-1'.MAX_SCHEDULING_PRIORITY: Maximum priority of a scheduled task for this group. The minimum allowed value is '1'. The maximum allowed value is '100'.MAX_TIER_PRIORITY: Maximum priority of a tiered object for this group. The minimum allowed value is '1'. The maximum allowed value is '10'.
Map.
-
-
Method Detail
-
getClassSchema
public static org.apache.avro.Schema getClassSchema()
This method supports the Avro framework and is not intended to be called directly by the user.- Returns:
- The schema for the class.
-
getName
public String getName()
Name of the group to be created. Must contain only letters, digits, and underscores, and cannot begin with a digit. Must not match existing resource group name.- Returns:
- The current value of
name.
-
setName
public CreateResourceGroupRequest setName(String name)
Name of the group to be created. Must contain only letters, digits, and underscores, and cannot begin with a digit. Must not match existing resource group name.- Parameters:
name- The new value forname.- Returns:
thisto mimic the builder pattern.
-
getTierAttributes
public Map<String,Map<String,String>> getTierAttributes()
Optional map containing tier names and their respective attribute group limits. The only valid attribute limit that can be set is max_memory (in bytes) for the VRAM and RAM tiers.For instance, to set max VRAM capacity to 1GB per rank per GPU and max RAM capacity to 10GB per rank, use: {'VRAM':{'max_memory':'1000000000'}, 'RAM':{'max_memory':'10000000000'}}.
MAX_MEMORY: Maximum amount of memory usable at one time, per rank, per GPU, for the VRAM tier; or maximum amount of memory usable at one time, per rank, for the RAM tier.
Map.- Returns:
- The current value of
tierAttributes.
-
setTierAttributes
public CreateResourceGroupRequest setTierAttributes(Map<String,Map<String,String>> tierAttributes)
Optional map containing tier names and their respective attribute group limits. The only valid attribute limit that can be set is max_memory (in bytes) for the VRAM and RAM tiers.For instance, to set max VRAM capacity to 1GB per rank per GPU and max RAM capacity to 10GB per rank, use: {'VRAM':{'max_memory':'1000000000'}, 'RAM':{'max_memory':'10000000000'}}.
MAX_MEMORY: Maximum amount of memory usable at one time, per rank, per GPU, for the VRAM tier; or maximum amount of memory usable at one time, per rank, for the RAM tier.
Map.- Parameters:
tierAttributes- The new value fortierAttributes.- Returns:
thisto mimic the builder pattern.
-
getRanking
public String getRanking()
Indicates the relative ranking among existing resource groups where this new resource group will be placed. Supported values:FIRST: Make this resource group the new first one in the orderingLAST: Make this resource group the new last one in the orderingBEFORE: Place this resource group before the one specified byadjoiningResourceGroupin the orderingAFTER: Place this resource group after the one specified byadjoiningResourceGroupin the ordering
- Returns:
- The current value of
ranking.
-
setRanking
public CreateResourceGroupRequest setRanking(String ranking)
Indicates the relative ranking among existing resource groups where this new resource group will be placed. Supported values:FIRST: Make this resource group the new first one in the orderingLAST: Make this resource group the new last one in the orderingBEFORE: Place this resource group before the one specified byadjoiningResourceGroupin the orderingAFTER: Place this resource group after the one specified byadjoiningResourceGroupin the ordering
- Parameters:
ranking- The new value forranking.- Returns:
thisto mimic the builder pattern.
-
getAdjoiningResourceGroup
public String getAdjoiningResourceGroup()
IfrankingisBEFOREorAFTER, this field indicates the resource group before or after which the current group will be placed; otherwise, leave blank. The default value is ''.- Returns:
- The current value of
adjoiningResourceGroup.
-
setAdjoiningResourceGroup
public CreateResourceGroupRequest setAdjoiningResourceGroup(String adjoiningResourceGroup)
IfrankingisBEFOREorAFTER, this field indicates the resource group before or after which the current group will be placed; otherwise, leave blank. The default value is ''.- Parameters:
adjoiningResourceGroup- The new value foradjoiningResourceGroup.- Returns:
thisto mimic the builder pattern.
-
getOptions
public Map<String,String> getOptions()
Optional parameters.MAX_CPU_CONCURRENCY: Maximum number of simultaneous threads that will be used to execute a request, per rank, for this group. The minimum allowed value is '4'.MAX_DATA: Maximum amount of data, per rank, in bytes, that can be used by all database objects within this group. Set to -1 to indicate no upper limit. The minimum allowed value is '-1'.MAX_SCHEDULING_PRIORITY: Maximum priority of a scheduled task for this group. The minimum allowed value is '1'. The maximum allowed value is '100'.MAX_TIER_PRIORITY: Maximum priority of a tiered object for this group. The minimum allowed value is '1'. The maximum allowed value is '10'.
Map.- Returns:
- The current value of
options.
-
setOptions
public CreateResourceGroupRequest setOptions(Map<String,String> options)
Optional parameters.MAX_CPU_CONCURRENCY: Maximum number of simultaneous threads that will be used to execute a request, per rank, for this group. The minimum allowed value is '4'.MAX_DATA: Maximum amount of data, per rank, in bytes, that can be used by all database objects within this group. Set to -1 to indicate no upper limit. The minimum allowed value is '-1'.MAX_SCHEDULING_PRIORITY: Maximum priority of a scheduled task for this group. The minimum allowed value is '1'. The maximum allowed value is '100'.MAX_TIER_PRIORITY: Maximum priority of a tiered object for this group. The minimum allowed value is '1'. The maximum allowed value is '10'.
Map.- Parameters:
options- The new value foroptions.- Returns:
thisto mimic the builder pattern.
-
getSchema
public org.apache.avro.Schema getSchema()
This method supports the Avro framework and is not intended to be called directly by the user.- Specified by:
getSchemain interfaceorg.apache.avro.generic.GenericContainer- Returns:
- The schema object describing this class.
-
get
public Object get(int index)
This method supports the Avro framework and is not intended to be called directly by the user.- Specified by:
getin interfaceorg.apache.avro.generic.IndexedRecord- Parameters:
index- the position of the field to get- Returns:
- value of the field with the given index.
- Throws:
IndexOutOfBoundsException
-
put
public void put(int index, Object value)This method supports the Avro framework and is not intended to be called directly by the user.- Specified by:
putin interfaceorg.apache.avro.generic.IndexedRecord- Parameters:
index- the position of the field to setvalue- the value to set- Throws:
IndexOutOfBoundsException
-
-