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



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

29年4月16日10:18:07信息地图缩减。作业:任务Id:attempt_146835313661_0014_r_ 000009_2,状态:失败容器[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>

它不起作用,我不知道该怎么办,我为我的英语不好感到抱歉。

    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

最新更新