Re: profiler which does not just sum up used time



To conclude, on a system with only one or two CPU's (cores) a higher priority thread will run for at most ~5 second before it will get pre-empted. The time it will get off a CPU depends on the other threads activity, but keeping a single core busy for such a long period (~5 seconds) will probably accumulate that much lower priority threads to become ready, so that your thread will get pre-empted for at a complete quantum or more.

Thanks for the details. I was aware that to prevent starvation the threads would over time build up priority. I did however beleive that their priority would never go above high.
An application can be set to realtime priority and according to what I have read, this should prevent preempting entirely, but that still does not seem to be the case.. Or perhaps it has to do with me not being able to set a threads priority to realtime. Only the application can be realtime.

How would you suggest that I move on now? I have an app doing rendering and it occationally gets preempted (or so I beleive, can I test is this is indeed the cause somehow?) and when that happens I lose a few frames. I can not live with even a single lost frame unless the rendering is very complex, which it is generally not. What could be a solution to this?

.



Relevant Pages

  • Windows ntpd highest priority doesnt require admin access
    ... ntpd on Windows attempts to raise itself to the realtime priority ... high priority class instead. ... special privilege to raise priority to realtime, ... Meinberg's installer adds the needed privilege for us. ...
    (comp.protocols.time.ntp)
  • Re: [patch] SCHED_SOFTRR starve-free linux scheduling policy ...
    ... > target task to run with realtime priority while, at the same time, we will ... >realtime as long as higher priority non-realtime tasks can preempt it. ... >new dynamic priority adjustment makes it certain that we will regularly see ...
    (Linux-Kernel)
  • thread priority below and above 15 in the same process?
    ... showing me the real priority of all threads. ... I have run our application process as RealTime, ... I'm aware that I can set threads to THREAD_PRIORITY_LOWEST to get priority ... The app does data aqusition that cannot be run in a normal priority without ...
    (microsoft.public.win32.programmer.kernel)
  • Re: [patch] SCHED_SOFTRR starve-free linux scheduling policy ...
    ... enforce a bound for the CPU time the process itself will consume." ... This needs to be a global bound, not per-task, otherwise realtime tasks can ... realtime as long as higher priority non-realtime tasks can preempt it. ...
    (Linux-Kernel)
  • Re: VAX/VMS in industrial automation
    ... > Not normally encountered in realtime systems ... > What kind of scheduling does VAX/VMS use and if it is an RTOS ... If you do a $ show system on vms it lists processes, ... (by convention batch has base priority 3 and interactive 4) ...
    (comp.os.vms)

Quantcast