[
https://issues.apache.org/jira/browse/FLINK-14936?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16981720#comment-16981720
]
Andrey Zagrebin commented on FLINK-14936:
-----------------------------------------
This looks like an operator's concern to calculate its memory limit. I would be
still against mixing this concern into theĀ *MemoryManager*. We could add this
method `*computeMemorySize*` e.g. as a protected method to
`*AbstractStreamOperator*` which already has an access to the *StreamConfig*,
fraction and size of the slot memory from the slot's *MemoryManager*. If I
understand correctly this is where we need the operator's absolute memory size.
Alternatively, it could be some static utility method which addresses this
concern.
> Introduce MemoryManager#computeMemorySize to calculate managed memory of an
> operator from a fraction
> ----------------------------------------------------------------------------------------------------
>
> Key: FLINK-14936
> URL: https://issues.apache.org/jira/browse/FLINK-14936
> Project: Flink
> Issue Type: Improvement
> Components: Runtime / Coordination
> Affects Versions: 1.10.0
> Reporter: Zhu Zhu
> Priority: Major
>
> A MemoryManager#computeMemorySize(double fraction) is needed to calculate
> managed memory bytes from a fraction.
> It can be helpful for operators to get the memory size it can reserve and for
> further #reserveMemory. (Similar to #computeNumberOfPages).
> Here are two cases that may need this method in near future:
> 1. [Python operator memory
> management|https://lists.apache.org/thread.html/dd4dedeb9354c2ee559cd2f15629c719853915b5efb31a0eafee9361@%3Cdev.flink.apache.org%3E]
> 2. [Statebackend memory
> management|https://issues.apache.org/jira/browse/FLINK-14883]
--
This message was sent by Atlassian Jira
(v8.3.4#803005)