The New Linux Speed Trick 426
Brainsur quotes a story saying "
Linux kernel 2.6 introduces improved IO scheduling that can increase speed -- "sometimes by 1,000 percent or more, [more] often by 2x" -- for standard desktop workloads, and by as much as 15 percent on many database workloads, according to Andrew Morton of Open Source Development Labs. This increased speed is accomplished by minimizing the disk head movement during concurrent reads.
"
I've noticed it... (Score:5, Interesting)
Cache? (Score:4, Interesting)
SCSI (Score:4, Interesting)
Yay (Score:1, Interesting)
It's nice to see smart features like this added to Linux.
Why not combine those two methods? (Score:5, Interesting)
Amiga Disks (Score:5, Interesting)
When I had an Amiga (aroung '91ish), even though It was fully multitasking, I learnt to never open any app while another was loading. If you did, you could hear the disk head moving back and forward between two sectors on disk every half second or so, slowing both app launches to a crawl. Waiting until one loaded, and launching the second was many times faster.
I've always wondered why there wasn't something in the OS to force this behaviour, Ie, making sure that App 2 access to the disk is queued until app 1 has finished. Isn't this one of the reasons Windows takes ages to boot? (many processes all competing for the one disk resource?).
I've found the opposite (Score:3, Interesting)
I'm an end user (Score:1, Interesting)
This would be grate for my laptop, as the harddisk slows down the entire system. It takes like 30sec to load up mozilla. My laptop seems to spend half the time reading stuff from the harddrive. It takes 5sec to start xterm!
Disk Transfer QoS (Score:4, Interesting)
Is anyone in the Linux world considering this ?
This is probably more applicable to the enterprise market, but surely any scheme of informing the scheduler about the expected disk transfer characteristics has to improve performance.
On the other hand, it might be just Sun trying to re-invent uses of buzz words to sell their products.
Re:Anti-MS Patent (Score:3, Interesting)
The end-(Windows)-user benefits from it.
That's the price of freedom.
And any additions MS makes to the code must be made public.
So then everybody benefits.
When will Linux do direct IO? (Score:0, Interesting)
Doing direct IO can shave up to 30-50% of IO times on Solaris 9.
Oh, come on... (Score:5, Interesting)
The NT scheduler has been O(1) like, eh, forever.
Our kernel produces far superior performance due to providing hooks for the COM layer
Yeah, whatever. There is no COM anywhere near the NT kernel, and the latest and greatest from Microsoft, the .NET framework, isn't even based on COM anymore
Nice troll...
Re:Why not combine those two methods? (Score:1, Interesting)
Does Not? [barchetta.cc]
Re:Anti-MS Patent (Score:4, Interesting)
so if MS make any improvements in their own implementation of the concept, then the code would not be made public and MS benefits and not everyone else.
to elaborate (and in some ways i believe this is what SCO are arguing), lets say i see an open source application that does something neat. it probably won't be patented because the author expects someone to contribute any modifications back. but lets so i don't because i'm a greedy commercial corporate and so i effectively copy the IDEAS behind the application. my code may look quite similar to theirs, but i certaintly have not infringed on the GPL (or have I - i'm no lawyer!).
so if this neat application had an "open source patent" in that anyone infringing on the patent would not be liable for millions, but rather they would be liable and forced to open up the source code of their particular implementation.
Re:I've noticed it... (Score:1, Interesting)
I upgraded to Mandrake 10.0 Community Edition (you know, post-beta but not officially released...). It has kernel 2.6 and KDE 3.2. Looks nice, but now it is slow enough to be unusable. Mozilla takes 20 seconds to start, HD swapping furiously.
I believe I read that the new kernel does take up some more memory, perhaps my laptop has reached its limit?
I am currently learning to compile the kernel, so I'm going to try to do a low-fat version with all unneccesary file systems, drivers et al removed. I should probably use just about anything than Mozilla and KDE also. Firefox plus IceWM perhaps.
Re:Amiga Disks (Score:3, Interesting)
IMHO Default windows config is kinda like a Redhat with everything and then some.
Start in safe mode and watch all the crap that tries to load - a ton of it is not needed.
If you tighten your install by removing a lot of the extra services, spyware, and a few performance tweaks - you'll see a major speed increase over all.
I use XP, but I don't like it much anymore...It's stable, but I'm really looking forward to a better desktop for Fedora and the new Core 2 release.
Databases and reliable commits (Score:4, Interesting)
This messing with the I/O queue may make things interesting for the journalling process which is kind of vital to integrity. File placement could become even more important for this (and also the placing of journal/log files).
The rest seems to just effectively be a modified elevator (wait a bit before moving).
Re:Idea... (Score:3, Interesting)
Would it not be possible to write a very basic adaptive network that "learns" what the best values for these parameters are for each individual machine, based on a history of its workload?
Re:Preemptive and Defragged? (Score:3, Interesting)
Second, Linux doesn't need a defrag utility. Linux filesystems (Ext2 and Ext3) allocate files properly, using clustering and inodes. The need to defrag comes from the bad design of FAT, which works great on a 8088 processor with tiny files on a 1Meg drive, but is terribly inefficient on anything past a 386.
Of course, there does exist a 'defrag' utility for linux. It just won't gain you much at all.
Re:Anti-MS Patent (Score:1, Interesting)
So should Linux kernel benefit from this idea although it's copied from proprietary software, only implementation is different? I say sue their ass!
Seriously, this is so typical of the open sores crowd that it goes on my nerves - all good ideas come from Linux, Windows is "lame" and "bloated", UNIX OS'es are slow, etc.
If you look at Linux, there are few geniuine innovations, it's mostly coding in open source what already exists in closed source (that's why Sun's Joy said he never bothered with Linux 'cause there's nothing new in it).
Re:SCSI (Score:3, Interesting)
This is different: the scheduler isn't trying to minimise head movement for a list of pending read requests (which is what elevator does), it's gathering statistics about the IO behaviour of each process and trying to guess in advance without being asked what each process will ask for next.
If it guesses right, the data will already be in cache when the process does a read() and the request will succeed instantly.
IO Accuracy (Score:2, Interesting)
IDE disks don't have the same guarantee. Does the new 2.6 kernel improve this?
I also wonder if this reduces hard drive wear for longer lifetimes....
Re:_New_ Kernel? (Score:3, Interesting)
And if you look above to this [slashdot.org] post, you can all see a great deal of decent explanations of what 1000% increase actually means (11%).
Re:SCSI (Score:3, Interesting)
If you have a 30 story building, you can either put in dumb elevators which fill 3/4ths of the building to meet demand, or you can put in a much smaller number of elevators using techniques like express elevators and using software which keeps track of usage patterns and puts elevators on floors before somebody even hits the button...
Re:Anti-MS Patent (Score:5, Interesting)
Not to burst your bubble, but the NT scheduler already implements predictive disk I/O concepts.
Nice that Linux is finally catching up though...
Re:Amiga Disks (Score:4, Interesting)
NPTL is a key component of the new speed (Score:3, Interesting)
NPTL brings an eight-fold improvement over its predecessor. Tests conducted by its authors have shown that Linux, with this new threading, can start and stop 100,000 threads simultaneously in about two seconds. This task took 15 minutes on the old threading model.
Re:Windows boots slowly??? (Score:3, Interesting)
The Renaissance (Score:4, Interesting)
One programmer likened the 70-80s as The Dark Ages. There were cabals and secret voodoo that people sat on and didn't share and you ended up with an ignorant masses that only thought "this is as good as it gets". Hopefully this renaissance sticks because it doesn't matter how good or cool your technology is if you bury it for 20 years without another person knowing.
Re:Amiga Disks (Score:3, Interesting)
At the time, Win3.1 took Quite A While to boot. Getting past the BIOS alone usually took longer than the Amiga took to finish booting.
How can I switch between them? (Score:3, Interesting)
This should be a mount option, not a boot option.
Re:SCSI (Score:3, Interesting)
Instead of pusing an up or down button and waiting for an elevator, you had a number pad with an LCD display. You punched in the number of the floor you wanted to go to and the LCD would display the letter of the elevator you were assigned to. There were no floor controls inside the elevator. The system would cache people onto floors, maximizing elevator efficiency, right?
Well, in theory... but not in practice.
The building wasn't populated evenly on all the floors. Of a 20 story building, 4 floors were in heavy use (customer service departments) 2 were used only for storage, 2 were for the switching lines and the rest of the floors had typical light office usage.
So in rush hour in the morning the system has a notoriously bad habit of maxing out one elevator at a time for the 4 customer service floors before allocating the next. Even MORE ironic was that the program would get into a loop of cycling the same 2 elevators to serve the same heavy use floors. (One would be going up as the other would be just finishing its cycle and the program wouldn't allocate a third elevator until the one coming down was filled.)
So you'd walk into the building at rush hour in the morning (when everybody should be wanting to just go UP) and there's a bank of 10 elevators, 5 to a wall and there'd be about 40 people crowded in front of 2 elevator doors for about 5 minutes waiting to board.
But it gets WORSE! Alot of people would see friends they knew who had already "punched in" and would just get in line with them without punching in themselves and screw up the whole count.
Then you had the "smart" people who would "punch in" a floor many times to get the system to allocate a third and NOT cache them in with the other loads.
At times it was alot of fun just playing with the elevator system than actually doing work.
(one more interesting factoid... someone writing the program must've taken the above into account because there were times when I would work late and the coworkers and I would leave at 10pm from the 16th floor. We'd both punch in within seconds of each other and get TWO elevators.)