Hi, On 20/11/17 22:41, bhargavb wrote: > Hello, > > Kindly help in understanding below things related to deadline > scheduler of linux.(HRT enabled,sched_rt_runtime_us = 950000, only 1 > process with deadline scheduler policy, linux kernel 4.4, x86_64) > > 1)Uniprocessor case: When a real time process(deadline scheduled) is > throttled, ie exceeds its deadline say exceeded 900000 nanosec, it > will be throttled assuming no other real time process is running and > would be left to run till more 50000 nanoseconds but how does > scheduler behave beyond the sched_rt_runtime_us? Will the process > continue to run or the remaining 50000 ns allocated for non real time > processes? Not at all (if I understand your question correctly :). In the SCHED_ DEADLINE case, sched_rt_runtime_us is only used at admission control time (i.e., when calling sched_setattr()). After that a task dynamic runtime and deadline are managed by the scheduler itself, and without looking at other tasks (let's leave GRUB out of the picture for simplicity). So, your 900000us (?) task will be throttled after it has depleted its runtime (not deadline) of 900000us. > > 2) Does it become any complex if it is a multiprocessor (SMP)? Does > the scheduler try to move this real time process to another processor > if feasible? Nope. SMP makes a difference at admission control time (as sched_rt_ runtime_us/sched_rt_period_us worth of bandwidth is "replicated" across the available CPUs), but then tasks run inside theirs reservation parameters (and can't execute for more than 1 CPU worth of time). Please, refer to the docs for a way better explanation of how this all works :) https://elixir.free-electrons.com/linux/latest/source/Documentation/scheduler/sched-deadline.txt#L503 Best, Juri -- To unsubscribe from this list: send the line "unsubscribe linux-rt-users" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html