Re: [ckrm-tech] [RFC 3/5] sched: Add CPU rate hard caps

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Peter Williams wrote:

The problem is that with per-task caps, if I have a resource group A
and I want to limit it to 10%, I need to limit each task in resource
group A to 10% (which makes resource groups not so useful). Is my
understanding correct?


Well the general idea is correct but your maths is wrong. You'd have to give each of them a cap somewhere between 10% and 10% divided by the number of tasks in group A. Exactly where in that range would vary depending on the CPU demand of each task and would need to be adjusted dynamically (unless they were very boring tasks whose demands were constant over time).



Hmm.. I thought my math was reasonable (but there is always so much to learn)
From your formula, if I have 1 task in group A, I need to provide it with
a cap of b/w 10 to 11%. For two tasks, I need to give them b/w 10 to 10.5%.
If I have a hundred, it needs to be b/w 10% and 10.01%


Now your arithmetic is failing you.  According to my formula:

1. With one task in group A you give it 10% which is what you get when you divide 10% by one.

2. With two tasks in group A you give them each somewhere between 5% (which is 10% divided by 2) and 10%. If they are equally busy you give them each 5% and if they are not equally busy you give them you give them larger caps.

Yes, I understand. I misinterpreted what you said earlier. I see you
clearly meant the range [cap_of_the_group/number_of_tasks, cap_of_the_group]


Another, probably a better but more expensive, formula is to divide the 10% between them in proportion to their demand. Being careful not to give any of them a zero cap, of course. I.e. in the two task 10% case they each get 5% if they are equally busy but if one is twice as busy as the other it gets a 6.6% cap and the other gets 3.3% (approximately).


Yes, that makes a lot of sense

Peter

Thanks for clarifying.

--

	Balbir Singh,
	Linux Technology Center,
	IBM Software Labs
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux