<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>question Re: How to set yarn.nodemanager.pmem-check-enabled? in Support Questions</title>
    <link>https://community.cloudera.com/t5/Support-Questions/How-to-set-yarn-nodemanager-pmem-check-enabled/m-p/39462#M37694</link>
    <description>&lt;P&gt;As Sumit said there are two settings: vmem,&amp;nbsp;set to false, (virtual memory) and pmem, set to true, (physical memory).&lt;/P&gt;&lt;P&gt;The blog is still correct and the change is for vmem and the way the virtual memory allocator works on Linux. For the pmem setting: that is the "real" memory and enforces the container restrictions. If you turn that off your task that runs in a container could just take all memory on the node. It leaves the NodeManager helpless to enforce the container sizing you have set and you expect the applications (and your end users) to behave in the proper way.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Wilfred&lt;/P&gt;</description>
    <pubDate>Thu, 07 Apr 2016 15:52:31 GMT</pubDate>
    <dc:creator>Wilfred</dc:creator>
    <dc:date>2016-04-07T15:52:31Z</dc:date>
    <item>
      <title>How to set yarn.nodemanager.pmem-check-enabled?</title>
      <link>https://community.cloudera.com/t5/Support-Questions/How-to-set-yarn-nodemanager-pmem-check-enabled/m-p/30134#M37687</link>
      <description>&lt;P&gt;I am using CDH 5.3.2. I am unable to set value for yarn.nodemanager.pmem-check-enabled&amp;nbsp;through UI. I could&amp;nbsp;add following to&amp;nbsp;&lt;SPAN&gt;ResourceManager Advanced Configuration Snippet (Safety Valve) for yarn-site.xml and restarted it&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&amp;lt;property&amp;gt;
&amp;lt;name&amp;gt;yarn.nodemanager.pmem-check-enabled&amp;lt;/name&amp;gt;
&amp;lt;value&amp;gt;false&amp;lt;/value&amp;gt;
&amp;lt;/property&amp;gt;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;However, I still see my apps&amp;nbsp;getting killed due to physical limits being&amp;nbsp;breached:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;2015-07-27 18:53:46,528 [AMRM Callback Handler Thread] INFO HoyaAppMaster.yarn (HoyaAppMaster.java:onContainersCompleted(847)) - Container Completion for containerID=container_1437726395811_0116_01_000002, state=COMPLETE, exitStatus=-104, diagnostics=Container [pid=36891,containerID=container_1437726395811_0116_01_000002] is running beyond physical memory limits. Current usage: 1.0 GB of 1 GB physical memory used; 2.8 GB of 2.1 GB virtual memory used. &lt;STRONG&gt;Killing container.&lt;/STRONG&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 16 Sep 2022 09:35:59 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Support-Questions/How-to-set-yarn-nodemanager-pmem-check-enabled/m-p/30134#M37687</guid>
      <dc:creator>sumit.nigam</dc:creator>
      <dc:date>2022-09-16T09:35:59Z</dc:date>
    </item>
    <item>
      <title>Re: How to set yarn.nodemanager.pmem-check-enabled?</title>
      <link>https://community.cloudera.com/t5/Support-Questions/How-to-set-yarn-nodemanager-pmem-check-enabled/m-p/30252#M37688</link>
      <description>&lt;P&gt;I would strongly recommend to not set that to false. It will prevent the NM to keep control over the containers.&lt;/P&gt;&lt;P&gt;If you are running out of physical memory in a container make sure that the JVM heap size is small enough to fit in the container.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The container size should be large enough to contain:&lt;/P&gt;&lt;P&gt;- JVM heap&lt;/P&gt;&lt;P&gt;- permanent generation for the JVM&lt;/P&gt;&lt;P&gt;- any off-heap allocations&lt;/P&gt;&lt;P&gt;In most cases an overhead of between 15%-30% of the JVM heap will suffice. Your job configuration should include the proper JVM and container settings.&lt;/P&gt;&lt;P&gt;Some jobs will require more and some will require less overhead.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;If you really want to make the change: the pmem-check-enabled is a NM setting and you need to set it snippet for the NM.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Wilfred&lt;/P&gt;</description>
      <pubDate>Thu, 30 Jul 2015 03:32:49 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Support-Questions/How-to-set-yarn-nodemanager-pmem-check-enabled/m-p/30252#M37688</guid>
      <dc:creator>Wilfred</dc:creator>
      <dc:date>2015-07-30T03:32:49Z</dc:date>
    </item>
    <item>
      <title>Re: How to set yarn.nodemanager.pmem-check-enabled?</title>
      <link>https://community.cloudera.com/t5/Support-Questions/How-to-set-yarn-nodemanager-pmem-check-enabled/m-p/30254#M37689</link>
      <description>&lt;P&gt;Thanks Wilfred.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I'd agree about not setting it to false. That's my idea too.&lt;/P&gt;&lt;P&gt;The main reason to use that setting is to be able to do some&amp;nbsp;functional testing without getting into tuning as yet.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;So, is there a way I can set this property through UI?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 30 Jul 2015 03:43:47 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Support-Questions/How-to-set-yarn-nodemanager-pmem-check-enabled/m-p/30254#M37689</guid>
      <dc:creator>sumit.nigam</dc:creator>
      <dc:date>2015-07-30T03:43:47Z</dc:date>
    </item>
    <item>
      <title>Re: How to set yarn.nodemanager.pmem-check-enabled?</title>
      <link>https://community.cloudera.com/t5/Support-Questions/How-to-set-yarn-nodemanager-pmem-check-enabled/m-p/30255#M37690</link>
      <description>&lt;P&gt;Set it through the NodeManager yarn-site.xml configuration snippet.&lt;/P&gt;&lt;P&gt;You used the ResourceManager snippet and the check is not performed on that service that is why it did not work for you.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Wiflred&lt;/P&gt;</description>
      <pubDate>Thu, 30 Jul 2015 03:46:51 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Support-Questions/How-to-set-yarn-nodemanager-pmem-check-enabled/m-p/30255#M37690</guid>
      <dc:creator>Wilfred</dc:creator>
      <dc:date>2015-07-30T03:46:51Z</dc:date>
    </item>
    <item>
      <title>Re: How to set yarn.nodemanager.pmem-check-enabled?</title>
      <link>https://community.cloudera.com/t5/Support-Questions/How-to-set-yarn-nodemanager-pmem-check-enabled/m-p/30256#M37691</link>
      <description>&lt;P&gt;You beat me to the answer &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Yes, I figured this has to be set in&amp;nbsp;&lt;SPAN&gt;NodeManager Advanced Configuration Snippet (Safety Valve) for yarn-site.xml.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Thanks!&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 30 Jul 2015 03:48:40 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Support-Questions/How-to-set-yarn-nodemanager-pmem-check-enabled/m-p/30256#M37691</guid>
      <dc:creator>sumit.nigam</dc:creator>
      <dc:date>2015-07-30T03:48:40Z</dc:date>
    </item>
    <item>
      <title>Re: How to set yarn.nodemanager.pmem-check-enabled?</title>
      <link>https://community.cloudera.com/t5/Support-Questions/How-to-set-yarn-nodemanager-pmem-check-enabled/m-p/39432#M37692</link>
      <description>&lt;P&gt;First, the attribute name looks like a typo - you guys mean to say &lt;FONT face="Courier New"&gt;yarn.nodemanager.&lt;STRONG&gt;vmem&lt;/STRONG&gt;-check-enabled&lt;/FONT&gt; , no?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Second, your recommend contracdicts the specific advice given in your own 2014 engineering blog, &lt;A title="Apache Hadoop YARN: Avoiding 6 Time-Consuming &amp;quot;Gotchas&amp;quot;" href="http://blog.cloudera.com/blog/2014/04/apache-hadoop-yarn-avoiding-6-time-consuming-gotchas/" target="_self"&gt;Apache Hadoop YARN: Avoiding 6 Time-Consuming "Gotchas"&lt;/A&gt;.&amp;nbsp; If that is no longer valid, please mark the article accordingly.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Miles&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 07 Apr 2016 05:43:46 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Support-Questions/How-to-set-yarn-nodemanager-pmem-check-enabled/m-p/39432#M37692</guid>
      <dc:creator>MilesYao</dc:creator>
      <dc:date>2016-04-07T05:43:46Z</dc:date>
    </item>
    <item>
      <title>Re: How to set yarn.nodemanager.pmem-check-enabled?</title>
      <link>https://community.cloudera.com/t5/Support-Questions/How-to-set-yarn-nodemanager-pmem-check-enabled/m-p/39439#M37693</link>
      <description>&lt;P&gt;No, those are 2 different properties. One for vmem and the other one for pmem.&lt;/P&gt;</description>
      <pubDate>Thu, 07 Apr 2016 10:05:40 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Support-Questions/How-to-set-yarn-nodemanager-pmem-check-enabled/m-p/39439#M37693</guid>
      <dc:creator>sumit.nigam</dc:creator>
      <dc:date>2016-04-07T10:05:40Z</dc:date>
    </item>
    <item>
      <title>Re: How to set yarn.nodemanager.pmem-check-enabled?</title>
      <link>https://community.cloudera.com/t5/Support-Questions/How-to-set-yarn-nodemanager-pmem-check-enabled/m-p/39462#M37694</link>
      <description>&lt;P&gt;As Sumit said there are two settings: vmem,&amp;nbsp;set to false, (virtual memory) and pmem, set to true, (physical memory).&lt;/P&gt;&lt;P&gt;The blog is still correct and the change is for vmem and the way the virtual memory allocator works on Linux. For the pmem setting: that is the "real" memory and enforces the container restrictions. If you turn that off your task that runs in a container could just take all memory on the node. It leaves the NodeManager helpless to enforce the container sizing you have set and you expect the applications (and your end users) to behave in the proper way.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Wilfred&lt;/P&gt;</description>
      <pubDate>Thu, 07 Apr 2016 15:52:31 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Support-Questions/How-to-set-yarn-nodemanager-pmem-check-enabled/m-p/39462#M37694</guid>
      <dc:creator>Wilfred</dc:creator>
      <dc:date>2016-04-07T15:52:31Z</dc:date>
    </item>
    <item>
      <title>Re: How to set yarn.nodemanager.pmem-check-enabled?</title>
      <link>https://community.cloudera.com/t5/Support-Questions/How-to-set-yarn-nodemanager-pmem-check-enabled/m-p/39471#M37695</link>
      <description>&lt;P&gt;Thanks for the clarification.&amp;nbsp; As others pointed out, CM doesn't list &lt;FONT face="courier new,courier"&gt;&lt;SPAN class="comment-copy"&gt;yarn.nodemanager.vmem-check-enabled&lt;/SPAN&gt;&lt;/FONT&gt; as a configurable parameter, but seems to default it to false (I can see it in my Oozie action job metadata).&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;But then, this means the error "&lt;FONT face="courier new,courier"&gt;Diagnostics report from attempt_1459358870111_0185_m_000054_3: Container [pid=18971,containerID=container_1459358870111_0185_01_000210] is running beyond physical memory limits. Current usage: &lt;STRONG&gt;1.0 GB of 1 GB physical memory used; 2.7 GB of 2.1 GB virtual memory used&lt;/STRONG&gt;. Killing container&lt;/FONT&gt;."&amp;nbsp; wasn't triggered by virtual memory overage, but actually by physical memory?&amp;nbsp; Which parameter should I tune?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;As experiment, I am setting &lt;FONT face="courier new,courier"&gt;mapreduce.map.memory.mb = 3000&lt;/FONT&gt; manually in the failing Hive2 action.&amp;nbsp; It runs slowly but seems to work.&amp;nbsp; Job counters show max physical usage per task at ~2.4GB, committed heap at 2.3GB, and virtual memory at 4.3GB.&amp;nbsp; Reducer consumption all trail mapper by varying amounts.&amp;nbsp; Do you have a better suggestion?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks again,&lt;/P&gt;&lt;P&gt;Miles&lt;/P&gt;</description>
      <pubDate>Thu, 07 Apr 2016 18:04:14 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Support-Questions/How-to-set-yarn-nodemanager-pmem-check-enabled/m-p/39471#M37695</guid>
      <dc:creator>MilesYao</dc:creator>
      <dc:date>2016-04-07T18:04:14Z</dc:date>
    </item>
    <item>
      <title>Re: How to set yarn.nodemanager.pmem-check-enabled?</title>
      <link>https://community.cloudera.com/t5/Support-Questions/How-to-set-yarn-nodemanager-pmem-check-enabled/m-p/39472#M37696</link>
      <description>&lt;P&gt;Related topic:&amp;nbsp; &lt;A href="https://community.cloudera.com/t5/Batch-Processing-and-Workflow/Jobs-fail-in-Yarn-with-out-of-Java-heap-memory-error/td-p/18772" target="_blank"&gt;Jobs fail in Yarn with out of Java heap memory error&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;... where your colleague &lt;STRONG&gt;bcwalrus&lt;/STRONG&gt; said, "That &lt;EM&gt;[yarn.nodemanager.vmem-check-enabled]&lt;/EM&gt; shouldn't matter though. You said that the job died due to OOME. It didn't die because it got killed by NM."&amp;nbsp;&amp;nbsp; Is it what happened here, too?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;And what's the reason to set &lt;FONT face="courier new,courier"&gt;mapreduce.*.java.opts.max.heap&lt;/FONT&gt; in addition to &lt;FONT face="courier new,courier"&gt;mapreduce.*.memory.mb&lt;/FONT&gt;?&amp;nbsp; Wouldn't it just introduce more potential conflict w/o much benefit?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Miles&lt;/P&gt;</description>
      <pubDate>Thu, 07 Apr 2016 18:18:21 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Support-Questions/How-to-set-yarn-nodemanager-pmem-check-enabled/m-p/39472#M37696</guid>
      <dc:creator>MilesYao</dc:creator>
      <dc:date>2016-04-07T18:18:21Z</dc:date>
    </item>
    <item>
      <title>Re: How to set yarn.nodemanager.pmem-check-enabled?</title>
      <link>https://community.cloudera.com/t5/Support-Questions/How-to-set-yarn-nodemanager-pmem-check-enabled/m-p/39481#M37697</link>
      <description>&lt;P&gt;We do not expose the vmem setting in Cloudera&amp;nbsp;Manager since it is really troublesome to get that check correct. Depending on how the memory gets allocated the virtual memory overhead could be anywhere&amp;nbsp;between 5% of the JVM size to multiple times the full JVM size.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Your container is getting killed due to the physical memory (not virtual memory) over use. the best thing is to make sure that you allow for an overhead on top of the JVM size. We normally recommend 20% of the JVM heap size as the overhead. Again this is workload dependent and could differ for you.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;We are working on the change that you only need to set one of the two and fully support that in Cloudera Manager. Some of the changes have been made to the underlying MR&amp;nbsp;code already via MAPREDUCE-5785...&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Wilfred&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 07 Apr 2016 20:50:08 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Support-Questions/How-to-set-yarn-nodemanager-pmem-check-enabled/m-p/39481#M37697</guid>
      <dc:creator>Wilfred</dc:creator>
      <dc:date>2016-04-07T20:50:08Z</dc:date>
    </item>
    <item>
      <title>Re: How to set yarn.nodemanager.pmem-check-enabled?</title>
      <link>https://community.cloudera.com/t5/Support-Questions/How-to-set-yarn-nodemanager-pmem-check-enabled/m-p/66087#M37698</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;This does not seem to have worked with a latter version of CDH (5.13.1). There we had to set this through -&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;YARN Client Advanced Configuration Snippet (Safety Valve) for yarn-site.xml&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;So, what is the correct way to set this? Is this really changed with newer releases?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Thanks,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Sumit&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 06 Apr 2018 08:05:08 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Support-Questions/How-to-set-yarn-nodemanager-pmem-check-enabled/m-p/66087#M37698</guid>
      <dc:creator>sumit.nigam</dc:creator>
      <dc:date>2018-04-06T08:05:08Z</dc:date>
    </item>
  </channel>
</rss>

