I'm sorry if that bothers you but it is the truth. Go onto the RT kernel mailing list and ask them if, in general, RT increases throughput. The fact that it doesn't, as I said, isn't that important. The "standard" kernel has been designed to maximize throughput to the detriment of responsiveness, hence why it suited to server loads. Attempts have been made to make it better for the desktop. Probably most notably with the various Completely Fair Schedulers.
Throughput, regardless of the context, means work done per unit time. The fact seems to be that the more real time you get the less throughput you can expect. In the case of graphics things are a bit different since we have a coprocessor capable of handling work on its own for brief periods of time (I'm sure someone could give you a more precise number here but it would have to be somewhere beneath 16ms at best). However, since we are talking about changes in frame delivery time we need to include the cpu in the discussion thus how fast it can handle interrupts becomes important. If you want it to reliably handle interrupts (say, from the GPU) as soon as possible you need to go RT. Now, where RT slows us down is when the GPU needs the CPU to handle something (I don't know, create a texture or something) but that work keeps getting interrupted b/c by going RT you've made many signals interruptible (such as syscalls). So, it takes the CPU longer to do the work the GPU is waiting for and thus RT slows things down (again, linux has mostly been concerned with getting work done quickly even if not reliably quickly). Now, the upside, as we both agree, is that you get reliably quick responses and framerates should be a bit more consistent (assuming that the work needed to be done by the cpu is relatively consistent between frames which I realise is a bad assumption).
Anyway, having jitter doesn't mean you end up with less fps over long periods of time it simply means you are more likely to experience a larger degree of variance with frame creation and delivery. So, an RT kernel may give you, reliably, 45fps and rarely go above, while the standard kernel gives you 60 fps but with much larger variance.
BTW, I'm not sure how you came up with this 200us number.




Reply With Quote