Zhu Zhu created FLINK-14536:
-------------------------------

             Summary: Make clear the way to aggregate specified cpuCores 
resources
                 Key: FLINK-14536
                 URL: https://issues.apache.org/jira/browse/FLINK-14536
             Project: Flink
          Issue Type: Bug
          Components: Runtime / Coordination
    Affects Versions: 1.10.0
            Reporter: Zhu Zhu
             Fix For: 1.10.0


I'm raising this question because I find {{cpuCores}} in {{ResourceSpec#merge}} 
are aggregated with {{max()}}, while in {{ResourceProfile#merge}} it is 
{{sum()}}.

This means that when calculating resources of a vertex from within operators, 
the {{cpuCores}} is the max value. While it is a sum(or subtraction in 
{{ResourceProfile#subtract}}) when dealing with shared slot bookkeeping and 
related checks. 
This is confusing to me, especially when I'm considering how to generate a 
shared slot resource spec merged from all vertices in it(see FLINK-14314).

I'm not pretty sure if we already have a concise definition for it?
If there is, we need to respect it and change {{ResourceSpec}} or 
{{ResourceProfile}} accordingly.
If not, we need to decide it first before we can move on with fine grained 
resources.

Need to mention that if we take the {{max()}} way, we need to re-consider how 
we can conduct a correct {{ResourceProfile#subtract}} regarding {{cpuCores}}, 
since there is not a clear way to reverse a {{max()}} computation.

cc [~trohrmann] [~wuzang]




--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to