在Hadoop-2.6.0中,容器因虚拟内存不足而被杀死

时间:2016-04-29 02:49:22

标签: hadoop mapreduce jcuda

我正在尝试在hadoop上实现jcuda代码,并且它在本地模式下工作,但是当我在hadoop集群上运行作业时,它给了我一个错误:容器在这里被杀死是特定的错误报告:

16/04/29 10:18:07 INFO mapreduce.Job:任务ID:attempt_1461835313661_0014_r_000009_2,状态:未通过 Container [pid = 19894,containerID = container_1461835313661_0014_01_000021]正在超出虚拟内存限制。当前用法:使用197.5 MB的1 GB物理内存;使用20.9 GB的2.1 GB虚拟内存。杀死容器。

输入数据只有200MB,但作业要求20.9GB虚拟内存我不知道为什么。我试图增加虚拟内存,配置在yarn-site.xml:

<property>
   <name>yarn.nodemanager.vmem-pmem-ration</name>
   <value>12</value>
</property>

 <property>
    <name>yarn.nodemanager.pmem-check-enabled</name>
    <value>false</value>
 </property>

 <property>
    <name>yarn.nodemanager.vmem-check-enabled</name>
    <value>false</value>
 </property>

它没有用,我不知道要解决它,我很抱歉我的英语很差。

1 个答案:

答案 0 :(得分:0)

    Please check the following parameters and set it if not set to the values below:

    In mapred-site.xml:

    mapreduce.map.memory.mb: 4096

    mapreduce.reduce.memory.mb: 8192

    mapreduce.map.java.opts: -Xmx3072m

    mapreduce.reduce.java.opts: -Xmx6144m

Hope this solves your issue