flink-user-zh mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "cs" <58683...@qq.com>
Subject 回复: flink内存分配的问题
Date Tue, 31 Dec 2019 12:51:50 GMT
谢谢您的回答,我还有个问题想请教下
当tm的内存超过一定大小,-XX:NewSize的大小都是一样的
例如tm设置15G -XX:NewSize=2442764288
tm设置20G 新生代还是 -XX:NewSize=2442764288
这是为什么呢?




------------------&nbsp;原始邮件&nbsp;------------------
发件人:&nbsp;"Xintong Song"<tonysong820@gmail.com&gt;;
发送时间:&nbsp;2019年12月31日(星期二) 晚上6:10
收件人:&nbsp;"user-zh"<user-zh@flink.apache.org&gt;;

主题:&nbsp;Re: flink内存分配的问题



FLINK TM 中是用到了大量的堆外内存的,除了通常意义的 JVM 的栈空间、方法区等堆外开销外,还包括网络
buffer、batch
缓存、RocksDB等。
默认配置是相对保守,为了保证大多数情况下预留出足够的堆外内存。具体是否设置过大了,要看具体运行的作业的情况。可以尝试通过配置'containerized.heap-cutoff-ratio'进行调整。

另外,即将发布的flink 1.10版本中对TM的内存计算进行了优化,不再采用cutoff而是根据用途列出了更具体的配置项,欢迎试用

Thank you~

Xintong Song



On Tue, Dec 31, 2019 at 5:53 PM cs <58683632@qq.com&gt; wrote:

&gt; taskmanager的内存设置为15G但实际的heap只有10G
&gt; 看了tm内存分配的源码1.计算cutoff(15GB * 0.25) 2.计算heap大小(heap计算的入参是15GB
- cutoff大小)
&gt; 3.计算offheap大小(offheap的大小等于15GB-heap大小)
&gt; offheap就是最终的-XX:MaxDirectMemorySize的大小
&gt; 想请教下MaxDirectMemorySize的大小有必要设置这么大吗?
Mime
  • Unnamed multipart/alternative (inline, 8-Bit, 0 bytes)
View raw message