No announcement yet.

Benchmarking The Ubuntu "Low-Jitter" Linux Kernel

  • Filter
  • Time
  • Show
Clear All
new posts

  • #76
    Originally posted by Paradox Uncreated View Post
    PS: Even games were made in basic on c64, that had no slowdowns. Imagine interpreted basic, on a 1mhz CPU, can do lower-jitter than a modern pc. (well on many PCs )
    The OS on the C64 didn't support multitasking, so there weren't other processes competing for CPU time. That allows the application/game developer to have complete control over the CPU usage.

    The same was mostly true on a PC with DOS (see all the amazing things people from the demoscene did on that platform).


    • #77
      Originally posted by unix_epoch View Post
      Throughput benchmarks should only be included as an afterthought, if at all. They don't measure the important variable.
      Throughput benchmarking is important too, but mostly to make sure that after confirming that the changes give you low jitter, it doesn't impact throughput too much. You don't want nearly no jitter @ 1 FPS...

      (It's like after finding a new medicine, you want to make sure it doesn't have too many side-effects.)
      Last edited by JanC; 10-20-2012, 02:47 PM.


      • #78
        Originally posted by JanC View Post
        The OS on the C64 didn't support multitasking, so there weren't other processes competing for CPU time. That allows the application/game developer to have complete control over the CPU usage.

        The same was mostly true on a PC with DOS (see all the amazing things people from the demoscene did on that platform).
        The "OS" in the c64? It had no OS packaged, but it did have GEOS etc. Which I found to be extremely lame, opening a whole windowing system and moving a pointer, just to launch an app. Ofcourse in lowres c64 environment that just looks bad. With a bit of resolution it gets good though

        The whole idea with low-jitter is to get that "no OS" experience. Making the OS completely transparent to the user.

        Remember that "multi-tasking" are high-level concepts related to programming paradigms, context switches etc. You CAN run "multiple apps" on a c64 aswell, but you have to write them like that.

        Peace Be With You.
        Last edited by Paradox Uncreated; 10-20-2012, 05:19 PM.


        • #79
          Originally posted by Paradox Uncreated View Post
          Kano, I do, and you should try Mega Apocalypse to get an idea of how fun a low-jitter game can be. And then boot back in to high-level OS paradigms where there is latency, and get an idea of what I think of those.

          I post a lot there. Was there anything in specific? I can post the whole .config for 3.6.2 shaved local, which you can take inspiration from. PS, not full distro config.

          Peace Be With you.

          (I also did some edits, but they are documented on the blog)
          Could you diff this with a config without your low-jitter changes?
          Originally posted by Paradox Uncreated View Post
          infact a setting of 20hz with BFS, will not be noticably different from 10.000 except cpu-usage.
          I tested exactly this some days ago! I didn't do much testing, just booted with a kernel with 1000 hz and one with 100 hz and uses the same games. Games with slight input lat at 1000 hz had high input lag at 100. Note that this test was done with BFS, but I can't really believe that the result should turn around by using CFS...


          • #80
            Input lag? Are you aware that a soundcard has only a few clicks on my machine at 0.3ms? How do you relate that to "hz"? When I type, things are FAST. The OS is ultrasnappy.

            Ofcourse when you optimize for a high-performance bus, like a graphics bus, used in OpenGL, you can be sure that good things are happening.

            Peace Be With You.


            • #81
              PS: Currently tring 3.6.2-rt4 (realtime patch) which will probably be used in next version.

              Peace Be With You.


              • #82
                Originally posted by Paradox Uncreated View Post
                gamer2k completely misses both the point and the benchmark again, and states an old argument not relevant to this about "latency vs throughput". So if you increase latency on a c64, does it get more throughout? (*laugh here*)
                Considering the C64 didn't have a pre-empting kernel, no. But in a pre-empting kernel, every time you switch from task "x", "x" is not getting work done. So you decrease system latency, but you increase the time it takes "x" to finish.

                Hell, I could switch tasks with every tick of the CPU clock if I wanted to. Every system related task would be uber-snappy as a result. Any actual usespace program would run like crap though.

                Obviously some people think jitter is "disk-io". If you have reduced "disk-io" with there being the same disk i/o, you know jitter is lower. (lol)
                Do you have any idea how a modern pre-emptive scheduler works? If some thread needs to access the disk, it should be preempted (can not run). No matter how fast you make the rest of the system, you have a bottleneck that exists for that given thread, that you can NOT solve in S/W.

                You are the worst type of developer: One who makes changes, convinced he is right, without testing every possible outcome. Then when people tells him the downsides to his approach, he ignores them. And when people start to tell him he outright breaks stuff, he laughs at them. Then people like me get paid to clean up the mess you leave behind.


                • #83
                  I don`t know how gamer2k can even reply with this garbage.

                  Anyway, it seems that jitter is known on windows as "microstutter". And Battlefield 3 measures it as "frametime". So, having set some attention on it, hopefully there will come attention and benchmarks on it, for linux aswell.

                  Peace Be With You.


                  • #84
                    Originally posted by Paradox Uncreated View Post

                    Tron OS did realtime in 1984. Was forced off the market by MS.
                    MS sees cp/m, copies it, although it is shit. Sells it to you.
                    MS sees unix windowmanager, copies it, sells it to you as windows, now with extreme latency. The very other end of realtime you might say. (nontime? sleepingbag-time?)
                    MS sees windowsblinds, copies it, another service on top of a poor scheduler and sells it to you.
                    200 things in modern windows OS, can be turned off, leaving a BETTER computer. What are they doing being developed, and included in the price of the product sold to you?
                    MS teaches obscure non-streamlined windows menus, and encourages people to not turn off these things, buying their whole corporate propaganda, and certifies people for this? What do you call that?

                    Linux is open-source, and can be modified by anyone, patches are often made in days, and emails to developers read in minutes.
                    By the time a fix may already be suggested on LKML, you have reached "I need to establish identiy please, I cannot hear you please" on MS support, phone to another country.

                    And that is ofcourse just some of it.

                    And then MS lanches it`s own OS, as a cure for headaches in their current (they did this with 98)

                    It`s mad, and serves no human.

                    Peace Be With You.
                    Any particular reason you aren't using the preempt_rt rather than just the preempt?
                    For what it's worth I think an RTOS is the obvious choice for gaming but you simply can't expect throughput to go up as a result (which you seem to think can happen). Rather, throughput is almost certainly going to go down, but I personally don't think that loss is of great significence for the Desktop market. The potential for increased interactivity and reliable responses is, as you've said, so nice.


                    • #85
                      Oh God, another thoughput guy. How many times do I have to say this. Framejitter, reduces performance. A high end machine with jitter, acts similarly to a low-end machine.

                      If jitter reduces ACTUAL frames outputted to screen to 30fps, what are you talking about throughput for?
                      Don`t confuse SERVER throughput, that needs no graphical environment, to GRAPHICS throughput.

                      And because of performance, I have said I only look to 0.2ms max latency/jitter. Currently I use the "low latency" desktop, in the rt-patch still, but I may increase the preemption level. Not without reasons, not "loosing performance". Only if it becomes better. No senselessness, only optimality. Don`t worry, and stop the silly "throughput" arguments.

                      Peace Be With You.


                      • #86
                        Originally posted by Paradox Uncreated View Post
                        Oh God, another thoughput guy. How many times do I have to say this. Framejitter, reduces performance. A high end machine with jitter, acts similarly to a low-end machine.
                        I think "responsiveness" is the better word to use there rather than performance.

                        "Performance" as most kernel devs call it is just the measure of how much work can be done in any given time. Improving responsiveness will almost always decrease "performance". Kernel devs focus a lot on performance and very little on responsiveness.. For gaming specifically, performance without responsiveness is a whole truck load of worthless.

                        Micro-stutter situations in Crossfire / SLI setups is another example of the focus on performance without responsiveness, although not all Crossfire / SLI setups have Micro-stutter, in fact I'd say, most don't.


                        • #87
                          How hard can this be to understand. What is completely obvious to me, is obviously very hard to understand for many.

                          I just had a whole thread, where people didn`t understand over at anandtech and eariler arsetechnica forum people, showed complete lack of understanding aswell.

                          I mean that is why I mention Einstein. He is doing math on infinity. And he is seen as a genious by most of the world. But it is no other than giving power to objects, like simpler people of uncivilized places do. What religion calls "idolaters".

                          I was just watching American politics though. USA is a worldleader in many things, and norwegian politics and people are very dull compared. No Mitt Romneys or Steve Jobs here. There are a great number of good hackers but those are rarely recognized, like here. And we have the "law of jante" which puts cushions under the behind of idiots, and grapes in their hands. "You shall not believe you are something".

                          However if you excel, and have a mind, and make yourself known, you can do much more good for the mindless than themselves.

                          Mitt Romney “Even if we believed in ourselves, nobody else did”.

                          That is so true, if you excel, no-one is going to understand you or why.

                          Obama seems to shallow, and “modular”. Modularity is extremely nice for a system, but not for a person.

                          John McCain, who has made some very clear observation on the Islam debate “Quran is good, sects are bad” criticises Obama. And so do I.

                          I know where I stand in this.

                          I also wrote LKML on this:

                          As those who have seen my posts on LKML, I am all about jitter.
                          10 years ago I said why not do an OpenGL desktop, and now we have wayland.
                          10 years ago, I said, don`t do excessive buffering, and now we have "fighting bufferbloat".
                          10 years ago, I talked about how responsive vintage computers was, without "OS".

                          And I have taken that further, and now work with low-jitter for the desktop. Low latency all the way, or atleast down to 0.2ms max latency and jitter.

                          In the mean time, the masses are unaware of jitter, unless it is very noticable such as recent discussions on "microstutter".
                          Most still advise to "not turn off services" in windows, yet show me benchmarks of "motherboards" with DPC latency of 50-300uS. I am already running at 5uS in windows here. And it is not "the motherboard". This is about OS-jitter.

                          And in linux, I am running with even less jitter, now trying rt-patch only at "low latency" preemption yet, but still. And even in the linuxcommunity many seem not to understand. Those who do are much higher then on windows though. And while many also make completely absurd statements and attack what I am doing, I am very happily running what feels like a high performance computer. With a lot of activity being there on the next frame, and ultrasmooth framerates in OpenGL. Indeed optimizing and removing jitter, seeing improvements on what goes on, on the highest performing bus in the computer, seems to improve general desktop computing.

                          I think I have tried most things now, and unless you want to wait 10 years for people to catch on, you should consider low-jitter aswell.

                          And I am also interested in any patches that currently are not mainline. - Please repost in this thread if you have any. Or any other information, or ongoing development. If it is not all in the RT patch, that is.

                          Peace Be With You.

                          So then it is up to those who have a mind, or simply think this is a good thing to follow. Ultimately it trickles down to the masses aswell I guess. But now you have a chance to trim 10 years on that

                          Peace Be With You.
                          Last edited by Paradox Uncreated; 10-22-2012, 10:13 PM.


                          • #88
                            Imagine this, even in RME forum, known hardware makers, making tons of money on low-latency hardware, SPECIALISTS on low-latency, removes my post on 5uS DPC latency in windows, that makes their hardware perform at 1ms latency in windows (stable). That is how the situation is. Even these people harm themselves.


                            • #89
                              On KVR people prefer the audio from 1950 before the hifi-era, over my DSP. Elsewhere analog and vinyl are recommended.
                              I mean I could be jazzing on the utmost of excellent audio and video, and people would still be going against it, and themselves.


                              • #90
                                NB: Jazzing = Praising the celebrated entity over the heavens and the earth.

                                Peace Be With You.