[ 
https://issues.apache.org/jira/browse/YUNIKORN-1798?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Qi Zhu closed YUNIKORN-1798.
----------------------------
    Resolution: Won't Fix

> Move prefilter plugins out of node predicates to improve performance
> --------------------------------------------------------------------
>
>                 Key: YUNIKORN-1798
>                 URL: https://issues.apache.org/jira/browse/YUNIKORN-1798
>             Project: Apache YuniKorn
>          Issue Type: Sub-task
>          Components: core - scheduler, shim - kubernetes
>            Reporter: Qi Zhu
>            Assignee: Qi Zhu
>            Priority: Major
>
> The current flow for predicate:
> Tryallocate -> TryNodes -> TryNode ->  Shim Predicate(including prefilter and 
> filter)
> If we can change to:
> Tryallocate -> Shim Prefilter -> TryNodes -> TryNode -> Shim filter
> The current implementation put *{{PreFilter}}* together with *{{Filter}}* 
> into {*}Predicates{*}, the {{Predicate}} process each pod-node pair like the 
> following code:
>  
> {code:java}
> for pod in pods:   
>  for nodes in nodes:
>     prePredicate(pod) # prefilters        
>     predicate(pod, node) # filters
> {code}
>  
> It's functioning well while *{{PreFilter}}* only needs the pod object(no node 
> required), we don't need to put it in the inner loop. So a promotion of 
> *{{PreFilter}}* to the outer loop is made in this jira for performance's 
> sake, such as a plugin like *{{inter-pod-afftinity}}* is very time-consuming 
> to prepare the pod interconnections in {*}{{PreFilter}}{*}. After this 
> proposal, it will be:
>  
> {code:java}
> for pod in pods:
>    prePredicate(pod) # prefilters
>     for nodes in nodes:
>       predicate(pod, node) # filters {code}
>  
> Also for *PreemptionPredicates we also can ahead the* *{{PreFilter!}}*
> *cc [~wilfreds] [~ccondit]*   *[Peter 
> Bacsko|https://issues.apache.org/jira/secure/ViewProfile.jspa?name=pbacsko]*



--
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