Misha Dmitriev created YARN-7302:
------------------------------------
Summary: Configuration.updatingResource map should be initialized
lazily
Key: YARN-7302
URL: https://issues.apache.org/jira/browse/YARN-7302
Project: Hadoop YARN
Issue Type: Improvement
Reporter: Misha Dmitriev
Using jxray (www.jxray.com), I've analyzed a heap dump of YARN RM running in a
big cluster. The tool uncovered several inefficiencies in the RM memory. It
turns out that one of the biggest sources of memory waste, responsible for
almost 1/4 of used memory, is empty ConcurrentHashMap instances in
org.apache.hadoop.conf.Configuration.updatingResource:
{code}
905,551K (24.0%): java.util.concurrent.ConcurrentHashMap: 22118 / 100% of empty
905,551K (24.0%)
↖org.apache.hadoop.conf.Configuration.updatingResource
↖{j.u.WeakHashMap}.keys
↖Java Static org.apache.hadoop.conf.Configuration.REGISTRY
{code}
That is, there are 22118 empty ConcurrentHashMaps here, and they collectively
waste ~905MB of memory. This is caused by eager initialization of these maps.
To address this problem, we should initialize them lazily.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]