What is Memory reserved on Yarn

Deadly 提交于 2019-12-18 04:40:44

问题


I managed to launch a spark application on Yarn. However emory usage is kind of weird as you can see below :

http://imgur.com/1k6VvSI

What does memory reserved mean ? How can i manage to efficiently use all the memory available ?

Thanks in advance.


回答1:


Check out this blog from Cloudera that explains the new memory management in YARN.

Here's the pertinent bits:

... An implementation detail of this change that prevents applications from starving under this new flexibility is the notion of reserved containers. Imagine two jobs are running that each have enough tasks to saturate more than the entire cluster. One job wants each of its mappers to get 1GB, and another job wants its mappers to get 2GB. Suppose the first job starts and fills up the entire cluster. Whenever one of its task finishes, it will leave open a 1GB slot. Even though the second job deserves the space, a naive policy will give it to the first one because it’s the only job with tasks that fit. This could cause the second job to be starved indefinitely. To prevent this unfortunate situation, when space on a node is offered to an application, if the application cannot immediately use it, it reserves it, and no other application can be allocated a container on that node until the reservation is fulfilled. Each node may have only one reserved container. The total reserved memory amount is reported in the ResourceManager UI. A high number means that it may take longer for new jobs to get space. ,,,




回答2:


A container will become reserved state when the container is assigned to some nodemanager node which do not have enough resource(cpu or memory) for it.



来源:https://stackoverflow.com/questions/28566468/what-is-memory-reserved-on-yarn

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!