Benjamin Bannier created MESOS-7398:
---------------------------------------

             Summary: HierarchicalAllocatorProcess::allocatable make strong 
assumptions about both resource providers and users
                 Key: MESOS-7398
                 URL: https://issues.apache.org/jira/browse/MESOS-7398
             Project: Mesos
          Issue Type: Improvement
          Components: allocation
            Reporter: Benjamin Bannier


The function {{HierarchicalAllocatorProcess::allocatable}} is used in the 
allocator to decide whether a set of resources will be considered when 
calculating offers. It currently hardcodes minimal requirements for a number of 
common resource kinds.

While it seems to have in the past be used to enforce the offer side of minimal 
task resources by not offering resources which we didn't want to be used for 
tasks, it now seems to mainly help to minimize performance overhead from too 
many small offers (instead too small resource amounts are kept out of the offer 
pool until they became accumulated into larger resources).

While {{allocatable}} has already in the past prevented allocating sets of only 
certain resource kinds (e.g., a {{Resources}} holding only GPU is not 
{{allocatable}}; the same holds for custom resource kinds), the current 
approach breaks down with the introduction of resource providers with 
MESOS-7235 which might provide a single kind of resource each and which in the 
case of external resource providers might never "reside" on the same agent as 
e.g., CPU.

It seems that we need to separate the different concerns of {{allocatable}} 
into dedicated functions, and adjust it to remain useful in a world of 
(external) resource providers.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to