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

Reply via email to