Wilfred Spiegelenburg created YUNIKORN-2789:
-----------------------------------------------

             Summary: Queue internalGetMax should not use permissive calculator
                 Key: YUNIKORN-2789
                 URL: https://issues.apache.org/jira/browse/YUNIKORN-2789
             Project: Apache YuniKorn
          Issue Type: Bug
          Components: core - common
            Reporter: Wilfred Spiegelenburg
            Assignee: Wilfred Spiegelenburg


We have documented for queue resources that:
{quote}Resources that are not specified in the list are not limited, for max 
resources, or guaranteed in the case of guaranteed resources.
{quote}
However in the implementation on the queue, internalGetMax, we call 
resources.ComponentWiseMin(). This returns 0 values for each type that is not 
defined in the two resources passed in. That does not line up.

Example for getting the maximum resources of a queue using GetMaxQueueSet what 
I would expect based on the documentation:

 
{code:java}
parent: max{memory: 100G}
parent.child: max{vcore: 100}
  => result child max{memory: 100G, vcore: 100}{code}
 

 

currently we get:
{code:java}
parent: max{memory: 100G}
parent.child: max{vcore: 100}
  => result child max{memory: 0, vcore: 0}{code}
Similar when we add the root and call GetMaxResource:
{code:java}
root: max{memory: 100G, vcore: 200}
root.parent: max{vcore: 100}
root.parent.child: max{nvidia.com/gpu: 10}
   => result parent max{memory: 0, vcore: 100}
   => result child max{memory: 0, vcore: 0, nvidia.com/gpu: 0}{code}
The fact that the resource type does not exist, even in the root, should not 
mean a zero set. The nodes that expose the specific resource might not have 
been registered or scaled up yet.

 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to