Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 3421970
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 18, 20262026-05-18T06:09:42+00:00 2026-05-18T06:09:42+00:00

I am new to kernel development and I am trying to understand about new

  • 0

I am new to kernel development and I am trying to understand about new kernel patch sched: automated per tty task groups .

Can some one explain in brief what exactly it is doing?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-18T06:09:43+00:00Added an answer on May 18, 2026 at 6:09 am

    My impression of the patch (light on detail though most of the articles about it are) was that it can more evenly balance the CPU proportions in an automatic way.

    The Linux CFS Completely Fair Scheduler has had a group-balancing behaviour for a while. What this means is that if user A starts 500 tasks and user B starts only one, the fairness should balance between the users, not the tasks.

    To that end, all of the user A jobs should be in one group and all of user B’s jobs in another, and the CPU will be shared equally among them – user A doesn’t get more capacity just because they’re anti-socially running more tasks.

    However, the fairness was either based on user ID (dynamic) or control groups (a relatively painful, static setup method).

    What this patch appears to do is to automatically allocate jobs to a group based on their TTY. In that way, the separation into group becomes an automatic feature (no setting up control groups), and one that happens on a finer grain than user ID (since typical desktops only have one user doing most of the jobs, at least the non-auto-admin ones).

    So, when Linus sits down to compile the next kernel for us, the massively parallel build process has all its tasks put in one group and Linus can then fire up VLC to watch the latest episode of The Big Bang Theory (I have no idea whether he watches this show, nor whether he has various pieces of software on his box, for all I know, he may run Windows Media Player under Windows 7) in a totally separate group.

    The CPU will then be shared relatively equally between the two groups, and Linus won’t have to watch Sheldon jerkily move across the screen.

    It’ll slow down the kernel build of course, but it’s not as if that’s an important task he’s performing for us. We can wait a little if it means his sanity levels are maintained 🙂

    From what I’ve read (and seen), this greatly improves the responsiveness of desktop applications. It doesn’t give you more overall capacity but it does improve things a lot in certain scenarios.

    Of course, if your usage profile is one task per TTY (or all tasks in a single TTY), it probably won’t help that much. But, if it improves some scenarios and doesn’t degrade too many others, it’ll be a winner. And, even if it does degrade others, it’s configurable behaviour, so it’ll probably still sneak in to the kernel.


    Interestingly enough, now that this patch candidate has gone "mainstream media", there are people coming out of the woodwork stating you can do the same thing with modifications to your .bashrc and some other minor tweaking. This basically wraps an "automated" tool around the control groups I mentioned previously.

    Linus has already rejected this user-land solution since he wants it to be shell-agnostic and this is not something users should have to do:

    Because it’s something we want to do it for all users, and for all shells, and make sure it gets done automatically. Including for users that have old distributions etc, and make it easy to do in one place. And then you do it for all the other heuristics we can see easily in the kernel. And then you do it magically without users even having to notice.

    Suddenly it doesn’t seem that wonderful any more to play with bashrc, does it?

    That’s the point. We can push out the kernel change, and everything will "just work". We can make that feature we already have in the kernel actually be useful.

    User-level configuration for something that should just work is annoying. We can do better.

    Put another way: if we find a better way to do something, we should not say "well, if users want it, they can do this <technical thing here>". If it really is a better way to do something, we should just do it. Requiring user setup is not a feature.

    Now, I’m not saying that we shouldn’t allow users to use cgroups. Of course they can do things manually too. But we shouldn’t require users to do silly things that we can more easily do ourselves.

    If the choice is between telling everybody "you should do this", and "we should just do this for you", I’ll take the second one every time. We know it should be done. Why should we then tell somebody else to do it for us?

    I have to agree with that sentiment – if you were just allowed to tell the user they had to do something special for extra performance, you could just get them to use "nice make -j64" rather than "make -j64".

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

Okay, I'm reading about Linux kernel development and there are some code snippets using
i am new kernel programming.i have been trying to load this driver program for
new to c#. I'm trying to make a simple system where I can search
New to Node.js and Express, I am trying to understand the two seems overlapping
As a newbie in Linux driver development, I've successfully recompiled a new kernel(2.6.39.4) upon
I'm new at kernel programming and trying to do a Hello World example. I
I'm new to kernel programming and was thinking on how one can make single
I am very new to system kernel development. I am using Ubuntu 11.10, and
I'm new to linux kernel and could barely understand how to debug kernel panics.
I'm building my first Android image, i noticed that compiling a new kernel is

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.