Announcement

Collapse
No announcement yet.

kernel process responsible for GUI

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • kernel process responsible for GUI

    Hello Fellows.

    A little background.
    I found that niceness simply doesn't work when it comes to computer games.
    I am Gentoo user. That means every now and then I have to compile programs to upgrade my system. At that time I may as well play occasional game.(who am I kidding? I am gaming ddict)
    I have GTX660 + AMD vishera, 8 core 4 GHZ, 32 Gig of ram, amd64 OS.
    I noticed that niceness does jack shit. I give 19 to compilation process and -19 to game, and frame rate still drops occasionally and very often on demanding game. It appears to work in case if I have demanding CPU processes, but not with CPU + GPU mix.

    I was trying to find out why niceness is ignored or doesn't work as intended. CPU scheduler is set for least performance but for maximum customisation of niceness. I can't remember exact terms now. I didn't find anything useful whatsoever.

    So I went different way and I was successful!
    Since I have 8 cores on my CPU and computer game has priority over background process of compilation to me personally, I used taskset utility. I gave compilation of program couple of cores. I gave system and all other programs 2 cores and I gave to game all other 4 cores. Lo and behold! I had virtually no performance loss when I did that! out of 170 FPS or so in half life lost cost benchmark game fluctuated +- 5 FPS. Unigine Valley also showed no difference with "make -j 20" on 2 cores.

    What I also noticed. It's very subjective. But Before, even with high FPS, i was seeing Unigine Valley being jerking sorta. Hard to explain. I thought it's because test is running on average of 35 FPS. I attributed that low frame rate happend with very high speed and I didnt have reaction time to see it on bechmark FPS counter. Now, I run Unigine Benchmark with 2 cores issue with low FPS persisted. I couldn't understand why. I gave Benchmark 4 cores, and SUCCESS! Benchamrk, even with 2 CPU under load of 100% was wroking flawless and "jerkiness" was gone. Even on scenes where 24 FPS was showed constantly, i did not see this jerkiness anymore!

    All in all, niceness is broken but at least CPU affinity works.

    Now, THE QUESTION!
    I want to filter out Nvidia GUI process + Kernel process responsible for interaction between GUI and kernel and give them 1 core and see difference.

    My guess is, that Userspace Xorg is one to be prioritized and on kernel side, what should it be?

    Thanks in advance!
    Your fellow Linux Geek
    dimko aka drjoms("dr" doesnt not stand for anything)

  • #2
    AMD CPUs don't have got complete cores since FX series. 2 are bundled and share the FPU. For integer workloads that should not matter but the older phenom X6 had completely independent cores. So lets say the app/game uses the FPUs then your logic is wrong. Think about it.

    Comment


    • #3
      Are you using CFS? If you are you should try BFS and probably see your stuttering problems disappear.

      Comment


      • #4
        Perhaps

        Originally posted by Kano View Post
        AMD CPUs don't have got complete cores since FX series. 2 are bundled and share the FPU. For integer workloads that should not matter but the older phenom X6 had completely independent cores. So lets say the app/game uses the FPUs then your logic is wrong. Think about it.
        Perhaps.
        But practical findings did help me non the less.

        Comment


        • #5
          I don't think it's worth the hustle.

          Originally posted by varikonniemi View Post
          Are you using CFS? If you are you should try BFS and probably see your stuttering problems disappear.
          If only BFS was part of kernel...

          Comment

          Working...
          X