* cgroup, RT cpu balance question
@ 2009-03-16 10:56 Rolando Martins
2009-03-16 11:17 ` Li Zefan
2009-03-16 11:18 ` Dhaval Giani
0 siblings, 2 replies; 3+ messages in thread
From: Rolando Martins @ 2009-03-16 10:56 UTC (permalink / raw)
To: linux-kernel
Hi,
I have one question regarding RT cpu balance using cgroup.
cgroup
echo 1 > cpuset.sched_load_balance
cgroup/2
echo 0 > cpuset.mems
echo 0-2 > cpuset.cpus
echo 450000 > cpu.rt_runtime_us
cgroup/3
echo 0 > cpuset.mems
echo 3 > cpuset.cpus
echo 450000 > cpu.rt_runtime_us
I have a small test that uses a loop to utilize 100% cpu (SCHED_FIFO).
When I run 2 tests on cgroup/3, it only uses bandwidth from cpu 3
(100%), the balancing isn't happening.
As I use the SCHED_FIFO, the 2 processes run sequentially.
Is this the expected behavior? Shouldn't the domains balance the spare
cpu bandwidth?
Thanks,
Rolando
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: cgroup, RT cpu balance question
2009-03-16 10:56 cgroup, RT cpu balance question Rolando Martins
@ 2009-03-16 11:17 ` Li Zefan
2009-03-16 11:18 ` Dhaval Giani
1 sibling, 0 replies; 3+ messages in thread
From: Li Zefan @ 2009-03-16 11:17 UTC (permalink / raw)
To: Rolando Martins; +Cc: linux-kernel
Rolando Martins wrote:
> Hi,
> I have one question regarding RT cpu balance using cgroup.
>
> cgroup
> echo 1 > cpuset.sched_load_balance
>
> cgroup/2
> echo 0 > cpuset.mems
> echo 0-2 > cpuset.cpus
> echo 450000 > cpu.rt_runtime_us
>
> cgroup/3
> echo 0 > cpuset.mems
> echo 3 > cpuset.cpus
> echo 450000 > cpu.rt_runtime_us
>
>
> I have a small test that uses a loop to utilize 100% cpu (SCHED_FIFO).
> When I run 2 tests on cgroup/3, it only uses bandwidth from cpu 3
> (100%), the balancing isn't happening.
> As I use the SCHED_FIFO, the 2 processes run sequentially.
>
> Is this the expected behavior? Shouldn't the domains balance the spare
> cpu bandwidth?
>
Then what do you expect? You put the task into cgroup/3 in which the allowed
cpus are restricted to CPU3, so of cause the scheduler will never schedule
the task to run on other cpus.
Please refer to Documentation/cgroups/cpusets.txt for the usage of cpusets.
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: cgroup, RT cpu balance question
2009-03-16 10:56 cgroup, RT cpu balance question Rolando Martins
2009-03-16 11:17 ` Li Zefan
@ 2009-03-16 11:18 ` Dhaval Giani
1 sibling, 0 replies; 3+ messages in thread
From: Dhaval Giani @ 2009-03-16 11:18 UTC (permalink / raw)
To: Rolando Martins; +Cc: linux-kernel, Peter Zijlstra
On Mon, Mar 16, 2009 at 10:56:04AM +0000, Rolando Martins wrote:
> Hi,
> I have one question regarding RT cpu balance using cgroup.
>
> cgroup
> echo 1 > cpuset.sched_load_balance
>
> cgroup/2
> echo 0 > cpuset.mems
> echo 0-2 > cpuset.cpus
> echo 450000 > cpu.rt_runtime_us
>
> cgroup/3
> echo 0 > cpuset.mems
> echo 3 > cpuset.cpus
> echo 450000 > cpu.rt_runtime_us
>
>
> I have a small test that uses a loop to utilize 100% cpu (SCHED_FIFO).
> When I run 2 tests on cgroup/3, it only uses bandwidth from cpu 3
> (100%), the balancing isn't happening.
> As I use the SCHED_FIFO, the 2 processes run sequentially.
>
> Is this the expected behavior? Shouldn't the domains balance the spare
> cpu bandwidth?
>
Yes, this is expected behavior. The cpuset has limited the task's allowed
CPUs to CPU 3. With that, it will use the bandwidth only from CPU 3. As
you noted, since the process are SCHED_FIFO, they will run sequentially.
--
regards,
Dhaval
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2009-03-16 11:19 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-03-16 10:56 cgroup, RT cpu balance question Rolando Martins
2009-03-16 11:17 ` Li Zefan
2009-03-16 11:18 ` Dhaval Giani
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.