Hi all, Currently i am running my flink application in yarn session mode and using below commnad : *bin/yarn-session.sh -d -s 3 -jm 1024 -tm 4096* when taskmanager complete to started,i found the container launching command is : * bin/java -Xms2765m -Xmx2765m -XX:MaxDirectMemorySize=1331m ......* from flink source code,i'v learned how direct memory size and heap memory size calculated : container total memory: 4096M network memory fraction: 0.1 cut off memory fraction: 0.25 networkMemory = 4096*0.1 = 409.6 cut off memory = (4096 - 409.6) * 0.25 = 921.6 *directMemorySize* = 409.6 + 921.6 = 1331.2 *heapsize *= 4096 - 1331.2 = 2764.8
Below is the environment i'm using to run yarn and flink: * jdk version: 1.8* * flink version: 1.6.1* *OS: centos7* there are two questions about memory allocation i want to ask: 1. Since the jdk version i an using is 1.8,is it necessary to consider the *metaspace memory *into calculation.According to the current way to calculate memory size(without metaspace memory) may cause container running beyond physical memory limit. 2. Is the native memory that rocksdb using part of direct memory(limit by jvm parameter *MaxDirectMemorySize*),if not how do i control the size it used.