The Completely Fair Scheduler's Impact On Games 315
eldavojohn writes "We've heard a bit about the completely fair scheduler previously, but now Kernel Trap looks at the implications this new scheduler has for 3D games in Linux. Linus Torvalds noted, 'I don't think any scheduler is perfect, and almost all of the time, the RightAnswer(tm) ends up being not one or the other, but somewhere in between. But at the same time, no technical decision is ever written in stone. It's all a balancing act. I've replaced the scheduler before, I'm 100% sure we'll replace it again. Schedulers are actually not at all that important in the end: they are a very very small detail in the kernel.' The posts that follow the brief article, reveal that Linus seems quite confident that he made the right choice in his decision to merge CFS with the Linux kernel. One thing's for certain, gaming on Linux can't suffer any more setbacks or it may be many years before we see FOSS games rival the commercial world."
Article is misleading (Score:5, Insightful)
Besides, the biggest barrier to 3d games in Linux is video card drivers (ATI, I'm looking at you!) as 3D drivers in Linux, even the proprietary ones, have tended to be unstable.
Linus is right one this one, the scheduler is a small part.
Re:Article is misleading (Score:5, Insightful)
Why not just say that, instead of trying to get a bunch of
You won't get good games until you get marketshare (Score:5, Insightful)
The limit to games on Linux is market share. Its not (much) easier to develop a good 3D game for linux as it is Windows, so why code for 2% of the market when you can code for 92% of the market?
Thus you will only get games where the developer has gone out of their way to ensure complete portibility and provides a port mostly out of courtousy.
The scheduler details are irrelevant for this: what Linux Games need is 10%+ marketshare on the desktop.
Should it matter? (Score:3, Insightful)
Perhaps people just don't want to run their games as root though....
Re:You won't get good games until you get marketsh (Score:4, Insightful)
To get Market Share you need games.
To get Games you need Market Share.
Re:Article is misleading (Score:4, Insightful)
Re:Article is misleading (Score:3, Insightful)
It's nice to see the commentary from the mailing list, but without a decent explanation of the situation, the posting isn't informative to many people.
Re:Article is misleading (Score:5, Insightful)
FPS is a poor measure of the feel of a game. I know it's what all the graphics card benchmarks use, and it does do a good job of measuring the total processor and video card throughput, but that's not the most important thing.
The most important thing is the time between you pressing a key and the changed game state being reflected on your screen and how consistent that delay is.
One of the arguments that CK has made about kernel development is that kernel developers have become obsessed with throughput to the exclusion of all else and that this leads to very poor desktop performance because throughput is a poor measure of 'interactivity'. Someone posting 3D game framerates as evidence of one scheduler being better than another is exhibiting exactly this bias.
IMHO latency is a better measure, but still not perfect and it can be hard to measure in some cases.
I don't know enough about the scheduler to know which one is better or which one exhibits particular properties. But I can see that the throughput bias is evidenced in force in the thread the article points to.
And CK is also right that big iron shops care more about overall throughput than any measure of 'interactivity'. IMHO there ought to be some kind of pluggable scheduler system that allows you to completely change the algorithm to reflect the preferred behavior of the computer you're using.
Pluggable (Score:5, Insightful)
Setbacks? (Score:5, Insightful)
Re:Games.. only thing keeping me from linux full-t (Score:2, Insightful)
Then I realized it doesn't matter which operating system I run as long as I can do what I need to do. I was only trying to switch to Linux for ideological reasons, not for any practical reason. The act of switching over was going to involve a lot of time, effort, and possibly expense, and if there was no "business reason" to go through all that, it would largely be for nought. If I had a mission-critical app I needed to run that only ran on Mac or Linux or whatever, then I'd switch, but I'd have to jump over with both feet. I don't want my music, pictures, documents, finances, etc., spread all over multiple machines (or multiple partitions of different types.) My mission-critical app is Quicken...so I continue to run Windows.
So don't look at it as "I'd switch over completely, but..." Instead, look at it as "Apps drive the OS I use. I need the following app(s): ________, which is/are well supported on _______, so my OS is ________."
Re:Article is misleading (Score:5, Insightful)
And actually, If people think this is a problem, Distro's already heavily customize the kernels so switching this out in their particular kernel shouldn't be much of a problem.
Linux and Games (Score:5, Insightful)
1. Set up your Linux system. Use onboard video and don't overspend on your processor.
2. Buy a PS2, a Wii, or a 360.
3. Play games on your game console and do everything else on Linux.
Be glad they chose CFS over SD then. (Score:5, Insightful)
From TFA [kerneltrap.org]
Re:FOSS games (Score:4, Insightful)
Are you saying all of "Snow White" was drawn by one person? All 24 fps, 83 minutes worth?
Re:Article is misleading (Score:5, Insightful)
Isn't going to happen, period! (Score:2, Insightful)
Re:Strange, I've been gaming in Linux for years. (Score:4, Insightful)
On the other hand, performance drawbacks because of wine's virtualization are very small but naturally they do exist. Adding an extra layer of wrapping takes time. Of course, maybe wine's handling of win32-specific calls and systems is more efficient than Microsoft's implementation in their operating systems
Re:FOSS games (Score:4, Insightful)
I always wondered why they just wouldn't contribute at least some early works to the open source community? Is it maybe just the lack of a good website where stuff like this could be indexed or isn't there a good enough standard license model to release something like that for free? I thought the Creatice Commons license [creativecommons.org] would be quite suitabel for it.
Everybody who spent some time finding a good textured and rigged low-poly character model, preferably with basic animations, on the net for use in an open source game, knows that there is next to nothing available. Well, at least not when I could have needed one about two years ago.
It really doesn't have to be that professional or finished - even that untextured rat someone made a decade ago to have something to shoot at, later to replaced by some creatures, could maybe be of use to someone; and if he textures it, and maybe do a simple animation and perhaps record some sounds, and then uses it in his project, he should give the additional stuff he made to other developers as well.
Soon there will be a nice looking 3D rat with some textures to choose from, various sounds, walking and death animations, etc. and everybody did his part. That's the open source way - why does it seem it's not very common among artits and only coders?
Anyway, I think it could be really just the right website that is missing - some Sourceforge-style page with a nice upload-frontend, where stuff gets properly indexed based on categories, tags and styles and with a feedback option, where contributers can see which projects are using their works. Add some voting to rank it, karma, apply a fair license to it upon upload and I think something like this could really take off.
Let me say it again: Ingo sucks. (Score:1, Insightful)
Ingo fought long and hard for the status quo. Complaints against the current O(1) scheduler (author: Ingo) were met with flames and ignorance. Con spent a year developing a new scheduler and proving that it was better than the scheduler that Ingo wrote. Ingo spent the entire year ignoring and denying Con's scheduler, but one day he saw the light and wrote his own knockoff in "62 hours" and gets it merged the next week. This is bullshit.
The end result is that Con has been driven from Kernel development by asses like Ingo. Whether CFS is better than SD is irrelevant. What has happened is the guy who spawned the entire process of getting an improved scheduler in the kernel and spent a year overseeing and improving it has his concept stolen by Ingo. Ingo did not want a new scheduler, he wanted his name to be on the current scheduler. When he saw that disappearing he had to take drastic action and he "authored" a new, improved scheduler. All for his own glory.
Ingo sucks.
Strange viewpoint (Score:2, Insightful)
The computer should spend cycles on the things the user is interested in, it should not be optimized primarily for the big service companies. The linux camp in 2007 just seems like some alternate dinosaur-computing reality: IBM, Sun, Novell, Oracle. I don't think of free or open when I see any of those names and I'm sure that none of those companies want to take computing in the direction I favor.
In the computing world, the enemy of your enemy is not your friend.
Re:Article is misleading (Score:3, Insightful)