[ https://issues.apache.org/jira/browse/FLINK-14566?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16983269#comment-16983269 ]
Xintong Song commented on FLINK-14566: -------------------------------------- Thanks [~zhuzh], the proposal looks good for me. - For weights vs. boolean flag, I'm in favor of weight. IMO, weights can cover the use cases of boolean flags, by simply setting it to 0 / 1. And enabling weighted calculation do not add much efforts in runtime. It should be fine that the operator only provide information about whether it uses managed memory or not, by setting the weight to 0 / 1 only. If later the operators provide weights other than 0 / 1, there should be no need for the runtime to rework on it. - I'm in favor of not putting the weight / flag in ResourceSpec. Adding it into ResourceSpec could make the operations on ResourceSpec (merging, subtracting, determining equality) complicated, and I would try to avoid such completeness if possible. > Enable ResourceSpec to get/set whether managed memory is used > ------------------------------------------------------------- > > Key: FLINK-14566 > URL: https://issues.apache.org/jira/browse/FLINK-14566 > Project: Flink > Issue Type: Sub-task > Components: Runtime / Coordination > Affects Versions: 1.10.0 > Reporter: Zhu Zhu > Priority: Minor > Fix For: 1.10.0 > > > To calculate managed memory fraction for an operator with UNKNOWN resources, > we need to know whether the operator will use managed memory, according to > FLINK-14062. > I'd propose to define special values of > onHeapManagedMemory/offHeapManagedMemory > in ResourceSpec(introduced in FLINK-14405) to distinguish whether managed > memory is used. > - For UNKNOWN resource spec, onHeapManagedMemory==MemorySize.ZERO means on > heap managed memory is used, while onHeapManagedMemory==null means not. For > non-UNKNOWN resource spec, managed memory size larger than zero indicates it > is used. > - similar for off heap managed memory. > getters: isUsingManagedMemoryOnHeap()/isUsingManagedMemoryOffHeap() > setters: > setUsingManagedMemoryOnHeap(boolean)/setUsingManagedMemoryOffHeap(boolean) > (setters are only allowed to invoke on UNKNOWN, should be ignored for > non-UNKNOWN for compatibility) > {{ResourceSpec#isKnown()}} should be added to replace existing UNKNOWN usages > for equality checking. > cc [~ykt836] [~trohrmann] [~azagrebin] [~xintongsong] -- This message was sent by Atlassian Jira (v8.3.4#803005)