Re: nice -n - только от рута?
Иван Лох wrote:
> On Sun, Sep 11, 2011 at 07:56:59AM +0400, Yuriy Kaminskiy wrote:
>> Иван Лох wrote:
>>> On Sat, Sep 10, 2011 at 10:09:47PM +0100, Mikhail Ramendik wrote:
>>>>>> Ставить real-time scheduler для программы которая не была специально под такое
>>>>>> рассчитана -- хороший способ выстрелить себе в ногу.
>>>>> mplayer довольно часто так запускают. Наверное, чаще чем другие приложение
>>>>> (кроме, может быть, cdrecord). Это же мягкий реал-тайм.
>> Это "мягкий реал-тайм" с точки зрения требования по управлению шаттлом. И совсем
>> не мягкий с точки зрения других приложений и системы. Если real-time процесс
>> задумается внутри себя, все остальные не получат ни-че-го.
>
> Если SCHED_FIFO возможно и не получат. А с Round-Robin будет следующий
> timeslice и все дела.
>
> SCHED_RR Round-Robin Scheduler, also used for real-time
> constraints. CPU-time is assigned in an round-robin fashion
> with a much smaller timeslice than with SCHED_NORMAL and
> processes in this group are favoured over SCHED_NORMAL. Usable
> for audio/video applications near peak rate of the system.
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> ROOT-credentials required.
По окончании timeslice он отдаст место ...для других процессов *с SCHED_RR/FIFO*
с тем же priority. Но *не отдаст* место для других процессов с SCHED_OTHER (они
все *менее* приоритетные; FIFO/RR - static priority 1..99, OTHER/BATCH/IDLE -
static priority 0).
Отличие с SCHED_FIFO, что он *хоть кому-то* (недобровольно) отдаёт, SCHED_FIFO
(недобровольно) отдаёт только более приоритетным.
>>> Гарантированно ограничит.
>> А вот по диску/свопу/whatever - нет :-)
>
> ionice? Типа другая подсистема.
while :; do echo $RANDOM >foo; sync;done
В общем, RT a) не панацея; b) опасная штука с кучей заморочек.
Reply to: