You are viewing a plain text version of this content. The canonical link for it is here.
Posted to yarn-issues@hadoop.apache.org by "Chuan Liu (JIRA)" <ji...@apache.org> on 2014/06/21 04:28:24 UTC

[jira] [Updated] (YARN-2190) Provide a Windows container executor that can limit memory and CPU

     [ https://issues.apache.org/jira/browse/YARN-2190?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Chuan Liu updated YARN-2190:
----------------------------

    Attachment: YARN-2190-prototype.patch

Upload a proof-of-concept patch. Main changes:

- Modified "winutils task create" that can take CPU and memory limits from command line and add the limits to the job objects for the task. 

- Create a WindowsContainerExecutor that inherits DefaultContainerExecutor. The new executor overrides the getRunCommand method to add memory and CPU  to the "winutils task" to supplement additional CPU and memory limit.

- Make getRunCommand non-static because static method cannot be overridden. 

The remaining work:

- Add unit tests.

- Because the API for CPU requires Windows 8, I updated the Visual Studio build files. If we want to keep the re-requisite of Windows SDK 7.1, there will some work need to be done. 

> Provide a Windows container executor that can limit memory and CPU
> ------------------------------------------------------------------
>
>                 Key: YARN-2190
>                 URL: https://issues.apache.org/jira/browse/YARN-2190
>             Project: Hadoop YARN
>          Issue Type: New Feature
>          Components: nodemanager
>            Reporter: Chuan Liu
>         Attachments: YARN-2190-prototype.patch
>
>
> Yarn default container executor on Windows does not set the resource limit on the containers currently. The memory limit is enforced by a separate monitoring thread. The container implementation on Windows uses Job Object right now. The latest Windows (8 or later) API allows CPU and memory limits on the job objects. We want to create a Windows container executor that sets the limits on job objects thus provides resource enforcement at OS level.
> http://msdn.microsoft.com/en-us/library/windows/desktop/ms686216(v=vs.85).aspx



--
This message was sent by Atlassian JIRA
(v6.2#6252)