Linux Container Development
 help / color / mirror / Atom feed
From: william <william-FuVYq0B8HF8swF9hGuCkNA@public.gmane.org>
To: Dhaval Giani <dhaval.giani-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Cc: containers-qjLDD68F18O7TbgM5vRIOg@public.gmane.org,
	V Srivatsa <vsrivatsa-xthvdsQ13ZrQT0dZR+AlfA@public.gmane.org>,
	Bharata B Rao
	<bharata-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org>,
	Libcg Development list
	<libcg-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org>,
	balbir-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org
Subject: Re: cgroups and limit firefox processes cpu time
Date: Fri, 22 Jan 2010 14:06:30 +0100	[thread overview]
Message-ID: <4B59A2D6.5000004@cobradevil.org> (raw)
In-Reply-To: <8aa016e11001220400j5bc568e6vb9d087f4310203aa-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>

Dhaval Giani wrote:
> On Fri, Jan 22, 2010 at 12:36 PM, Balbir Singh
> <balbir-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org> wrote:
>   
>> On Friday 22 January 2010 05:03 PM, william wrote:
>>     
>>> Balbir Singh wrote:
>>>       
>>>> On Friday 22 January 2010 11:04 AM, william wrote:
>>>>
>>>>         
>>>>> Hello list
>>>>>
>>>>> I have a question about how i can limit the cpu for a firefox process on
>>>>> a terminal server.
>>>>>
>>>>> We have 150 firefox processes running on a terminalserver but there are
>>>>> always people who take more cpu when they use flash or java.
>>>>> Some firefox processes take sometimes about 50 percent cpu time.
>>>>> Is there a way to give all firefox processes equal cpu shares so that
>>>>> other people who are using firefox for research have no issues (slow
>>>>> responding scrolling and menu)  because there are a few firefox
>>>>> processes eating all the cpu time?
>>>>>
>>>>>           
>>>> Are these running on behalf of different users? You can always create a
>>>> good hiearchy and organize. FAIR_USER scheduler option is going away
>>>> soon. Some more context on the firefox applications and whose behalf
>>>> they are running on, etc would help.
>>>>
>>>>
>>>>
>>>>         
>>> The terminal server only hosts firefox processes for different users
>>> (user is only allowed to login once) to provide internet access in a
>>> secure way.
>>>
>>> So i have 150 firefox processes for different users. So i cannot set one
>>> group, I have to put all those processes in a separate container if i
>>> get it right?
>>>       
>> If the kernel is compiled with fair users then you are set, but that
>> option might go away soon.
>>     
>
> I have already posted a patch to remove it, and it will go away in the
> next release of the kernel
>
>   
>> Yes, putthing them all in their own cgroup is
>> the best option. This can be done easily using libcgroup tools.
>>
>>     
>
> Right, libcgroup already has the ability to sort on the basis of
> username and process name. You should be able to use that. Though it
> might be impractical at the moment since you will need to list all the
> usernames/groups in a configuration file.
>   
So then i would have to create a config file with 65k users in it :(

Would it be possible to setup a specific application in libcgroup, so 
that the libcgroup will create a container for that firefox process?

say something like:
#applicationgroup firefox {
#    perm {
#        task {
#            application = /usr/bin/firefox;
#            gid = users;
#        }
#    }
#    cpu {
#        cpu.shares = 10;
#    }
#}

so every firefox process started should get the same cpu cycles.
And if i understood it correctly a process can take as much cpu cycles 
as he want till the hard limit , if another process requests more cycles 
and has not reached his soft limit then the process which is already 
over the softlimit will be cut back?


> Thanks,
> Dhaval
>   

Thank you for helping.

With kind regards
William

      parent reply	other threads:[~2010-01-22 13:06 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-01-22  5:34 cgroups and limit firefox processes cpu time william
     [not found] ` <4B5938EB.3040809-FuVYq0B8HF8swF9hGuCkNA@public.gmane.org>
2010-01-22 11:15   ` Balbir Singh
     [not found]     ` <4B5988DC.8020100-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org>
2010-01-22 11:33       ` william
     [not found]         ` <4B598D0D.9080206-FuVYq0B8HF8swF9hGuCkNA@public.gmane.org>
2010-01-22 11:36           ` Balbir Singh
     [not found]             ` <4B598DB2.2030709-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org>
2010-01-22 12:00               ` Dhaval Giani
     [not found]                 ` <8aa016e11001220400j5bc568e6vb9d087f4310203aa-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2010-01-22 13:06                   ` william [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4B59A2D6.5000004@cobradevil.org \
    --to=william-fuvyq0b8hf8swf9hguckna@public.gmane.org \
    --cc=balbir-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org \
    --cc=bharata-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org \
    --cc=containers-qjLDD68F18O7TbgM5vRIOg@public.gmane.org \
    --cc=dhaval.giani-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
    --cc=libcg-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org \
    --cc=vsrivatsa-xthvdsQ13ZrQT0dZR+AlfA@public.gmane.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox