Boot Process Visualization 536
zigam writes "The time needed to boot desktop Linux systems is becoming an issue. That's why I recently took the challenge posted by Red Hat's Owen Taylor on the Fedora developers list and came up with a tool for visualization of the boot process. It collects performance data during the boot up and then renders an SVG or PNG performance chart. It immediately helped Red Hat developers solve some issues and I have since received boot charts from other GNU/Linux developers as well. Solaris kernel developers reported success in improving their boot process too." Update: 12/15 20:04 GMT by T : Sorry, someone decided your time was worth wasting; no more mirrored bootchart.
IIS? (Score:5, Funny)
Re:IIS? (Score:2, Funny)
Re:IIS? (Score:5, Funny)
Re: (Score:3, Funny)
Re:IIS? (Score:4, Funny)
Re:IIS? (Score:2, Informative)
Re:IIS? (Score:4, Insightful)
Running Windows doesn't prevent one from running Apache.. I've never understood these people who choose to use the limited version of IIS instead of spending 5 minutes to set up Apache. It's not that hard, guys.
Re:IIS? (Score:4, Funny)
Re:IIS? (Score:5, Informative)
Here are some pictures that are not slashdotted yet: one [redhat.com], two [redhat.com], three [redhat.com].
They are taken from here [redhat.com].
Re:MOD UP PLEASE (Score:2, Insightful)
Re:MOD UP PLEASE (Score:3, Funny)
1. MS = Evil
2. IIS always sucks
3. /.ers are smart enough to know better
Any admin worth his wages knows better than to use IIS, steaming pile that it is. I know the button monkeys like it because it's easier than all that damn reading and knowledge that Apache requires, but it still sucks. And we could exclude Linux from this anyway (if we chose to), Apache runs on Wintel just fine, amongst many other platforms. That said, if you are here h
Mirror? (Score:4, Funny)
OTOH, it *is* IIS, it could die if you blink at it the wrong way. :)
Mirror (Score:2)
Re:Mirror? (Score:5, Informative)
Re:Mirror? (Score:2)
Re:Mirror? (Score:5, Informative)
bootchart.sourceforge.net [sourceforge.net]
Re:Mirror? (Score:4, Funny)
*blinks furiously*
Re:Mirror? (Score:3, Funny)
Re:Mirror? (Score:3, Interesting)
I've used IIS. I've written ISAPI filters for IIS. We currently use IIS at work. And let me tell you right here and now -- IIS sucks. Voice of experience.
Reboot visualization (Score:5, Funny)
Re:Reboot visualization (Score:5, Funny)
Oh, wait, are we talking about the same thing here?
Re: (Score:3, Funny)
Re:Reboot visualization (Score:4, Interesting)
Forensics of a Slashdotting (Score:3, Informative)
Take a look at this article [wagstrom.net] that I wrote up after I posted instructions on how to use lpd to spool mp3s [wagstrom.net]. I was even lucky enough to get some of the logs from the mirrors for analysis. You can see the original slashdot article here [slashdot.org].
For starters.. (Score:4, Interesting)
On another note, I'd like to see other distros do what Red Hat is doing to Fedora's boot screen: Using X resolutions for the startup. Damn, that looks nice! Thought it would be even nicer if the pointless resolution change between bootup and main X server startup was eliminated (it's usually the same res anyway).
Re:For starters.. (Score:2, Informative)
The desktop oriented distros have been doing that since before Fedora existed.
KFG
Re:For starters.. (Score:4, Interesting)
Fedora actually reads your xorg.conf and utilizes the X video driver being used by your system and runs at the same resolution and refresh rate. It looks really slick if you ask me.
Re:For starters.. (Score:2)
P40server &
You would start init scripts with a P (I guess for pthreaded?) if it didn't have anything that depends on it starting.
Re:For starters.. (Score:2)
Re:For starters.. (Score:5, Insightful)
(* IMHO.. If I'm wrong.. I'm sure you'll let me know..)
Re:For starters.. (Score:2)
-nB
Re:For starters.. (Score:2)
Didn't mean to intone that XP has to be rebooted often, just that it's very optimized for booting - as many people turn thier computers on and off as they start and finish using them.
Re:For starters.. (Score:3, Insightful)
Re:For starters.. (Score:3, Interesting)
So it'd better boot *fast*.
As an aside, those 'fast boot time' makes me laugh: with a Celeron333, on BeOS I was able to boot from BIOS (when the BIOS "starts" the OS) to a usable graphical desktop within less than 20s (14s if memory serves)!
XP boot time while smaller than Linux's one is not especially great as the desktop is not usable at the beginning..
I'd really like to have Linux kernel + KDE (or Gnome) boot under 20s, but I'm not dreaming
Re:For starters.. (Score:5, Informative)
Re:For starters.. (Score:3, Insightful)
200 MB is peanuts for modern disks. Takes them about five seconds to read it sequentially.
However, a *lot* of time is wasted doing disk seeks while booting. A few things can be done to stop wasting that time:
Re:For starters.. (Score:2)
Re:For starters.. (Score:2)
What's wrong with shutting down that way? When I hit the power button, the machine shuts down gracefully. Of course that only works with acpid.
Re:For starters.. (Score:2)
It would have helped had I actually been using a journalised filesystem. I wanted to upgrade to ext3 or ReiserFS, but there was no easy path to get there without losing my files and reinstalling the whole OS.
Oh well, I was about to replace it with Debian unstable
Re:For starters.. (Score:2)
Re:For starters.. (Score:2)
Re:For starters.. (Score:2)
Re:For starters.. (Score:2)
What we really need (Score:2, Funny)
Re:What we really need (Score:2, Funny)
Re:What we really need (Score:4, Funny)
Re:What we really need (Score:3, Interesting)
Boot visualization? (Score:3, Funny)
(X_X) <--- Dead in the water
heh (Score:5, Funny)
Linux ===============
BSD ========
Re:heh (Score:3, Funny)
Linux ===============
BSD ========(died)
Coffee Anyone? (Score:3, Funny)
You mean I'm not supposed to have time to make coffee?
bad joke, but yeah the boot time is getting pretty bad these days on out of the box distros.
Re:Coffee Anyone? (Score:4, Funny)
"No, Mom! It's still starting!"
One of my friends had a theory that held true (up until Windows XP) that Windows (and MacOS at the time, this was 1995) was harmonically tuned to boot up just as long as it would take you to get up and take a piss and come back.
Though some of the Windows 2000 machines here at work make me think I have enough time to take a dump and come back. They're fast, just something is very wrong with them.
Re:Coffee Anyone? (Score:2)
Re:Coffee Anyone? (Score:2)
My mac G5 (dual 1.8GHz) boot a little slower (25secs) but after boot, remains at 0%, whereas the shuttle keeps humming and buzzing for about a minute (while it is 100% responsive though)
it's easy to speed up boot (Score:5, Interesting)
like so:
$i start&
I have been berated a coupdl times in online forum because 'some services might need it to start properly', but I have never noticed any ill effects. My machines now boots in about 6 seconds
Re:it's easy to speed up boot (Score:2)
As an example I am running dhcp, and apache, yet both services start correctly even though the interfaces are still in the process of coming online. This has smoothed things out greatly for me (ymmv).
FWIW I'm running Mandrake.
Re:it's easy to speed up boot (Score:2)
Re:it's easy to speed up boot (Score:2)
Re:it's easy to speed up boot (Score:3, Interesting)
One thing that may cause problems is that when the login prompt comes up some services aare still initializing so you may have to wait a bit before accessing any of the servers, for instance your http://localhost for apac
Re:it's easy to speed up boot (Score:5, Insightful)
Still, it's a nice thing to experiment with for people who run Linux in situations where reboots are common, laptops for instance. It's also useful if you are running something like Nessus as a daemon which takes an *age* to initialise itself and obviously has no dependencies. A better solution would be to have an additional prefix on certain init scripts - "P" for "parallel" - to tell INIT that they can safely be started in the background, something that a couple of commercial Unicies do.
Re:it's easy to speed up boot (Score:3, Interesting)
Re:it's easy to speed up boot (Score:2)
Re:it's easy to speed up boot (Score:2)
Re:it's easy to speed up boot (Score:2)
It is usually the first thing I turn off after an install, but someone caring about startup time will love it.
Re:it's easy to speed up boot (Score:5, Insightful)
Who reboots? (Score:2, Insightful)
laptop users... (Score:3, Insightful)
and if you have a loud computer near the bed...
Re:Who reboots? (Score:2)
I dual boot at home, so I rarely leave it on long enough to see any comparisons between Linux, Win2k and XP.
Tried with the IBM enhancements? (Score:5, Interesting)
IBM has published a paper on speeding up the boot process using something like a make to launch things in parallel that are not dependent on each other.
Re:Tried with the IBM enhancements? (Score:5, Interesting)
XP not only boots processes in parallel - it monitors which sectors of the disk are read during bootup, moves them around so they all sit in order in the same place on the disk as a background process, and prefetches the whole damn thing during subsequent bootups.
It also does the same thing for application launches - you start an app, it profiles what is read from disk, reorders it, and prefetches it when you run the app again later.
That's why (Score:4, Informative)
As an embedded programmer, I've got to get many startup diagnostics and initializations done in the shortest time possible (under 1 second usually) - otherwise you'd be waiting for your car to boot every time you turn on the key. Everything in parallel that can be. Dependancies are mapped out and a static start sequence is defined. Linux has a more variable set of things to do, so I'd expect a more flexible implementation. This shocks me that there is NO implementation.
It doesn't matter what MS does, every application wants load at boot time so it will respond quicker later - this just kills my boot time. Yah, a whole tray full of crap starts and I sometimes use one of those things.
Why boot? (Score:2, Interesting)
Frustrated (Score:2)
Can some one visualize slashdotting effect? (Score:2)
in a chart or a movie, so we can see the change vs. time.
The scientific importance of this research is that it is a tool to understand DDOS. In case you need something more serious funny.
Quick Link (Score:5, Informative)
http://people.redhat.com/davidz/bootchart.png.
server vs workstation (Score:5, Interesting)
On my machine, a bunch of random (but useful) things are fired up sequentially, before the prompt appears. Some things are used rarely/not at all, but they're still started. I dont want to disable them, but I dont want to wait for them either. Apache. MySQL. Privoxy.
Why doesnt inetd start all these things? Apache would get started on first use. Likewise with the other services -- I pay for the startup (once) when I want to use them.
On a server, it'll be up for forever so starting everything on boot makes sense. For a workstation, the system should be usable as fast as possible; the rest of the services can just as well wait until later.
Kernel init time (Score:3, Interesting)
I suppose I should figure out where the timeout value for that is in the kernel and cut it short. (Doesn't Solaris handle that by saving the data unless you tell it that it needs to rescan?)
A better boot loader is needed (Score:2, Insightful)
A much better solution would be to say that for each service that needs to be started which services must be started before it and to provide a priority for each service. The boot loader could then use this information to start processes in parallel giving priorities as needed. This would avoid the need to load everything
Re:A better boot loader is needed (Score:3, Interesting)
Re:A better boot loader is needed (Score:3, Informative)
"Make" can already do this in parallel, and is an appropriate tool for specifying dependencies. It would be a simple matter to use it as the primary boot manager rather than shell scripts.
This is OSS working well! (Score:2)
Google cache (Score:2)
Main page [google.co.uk]
Samples page [google.co.uk]
Mandrake Charts Available (Score:2, Informative)
- Tash
Partial mirror (Score:2, Informative)
http://slushdot.org/mirror/visualization/index.ht
If you have the whole site email it to me and I'll host it.
Windows tool (Score:4, Interesting)
For bonus points, explain why Microsoft pulled it from its website.
Boot times *are* important (Score:5, Insightful)
Most people turn off their computer when they are not using it, and actually turn it on when they need it. For the average computer user, boot times mean quite a bit more since they see it more. Don't be ignorant and think that just because it means little to you, it is unimportant to improve.
Re:Boot times *are* important (Score:3, Insightful)
1) Not only newbies, but experienced computer users will shut down their computers when not in use to save power. Computers aren't the most expensive thing in the world, but if I could save $5 a month by keeping it off, I'd be stupid not to. I love Windows XP's Hibernate function for this exact reason.
2) Laptops. Even people who keep their desktop on all the time will most likely reboot their laptops a lot more often. Maybe they swapped out batteries, or maybe their battery can't keep t
Why not have a wait tag/flag (Score:3, Interesting)
Now why not just have something like:
S10+NOWAITFILE
S11-WAITFILE
So it allows whatever is in S10+NOWAITFILE to load without blocking, but S11-WAITFILE will block S12SOMETHING until loaded, etc etc
IBM articles about improving Linux boot time (Score:4, Interesting)
Is this really an issue? (Score:3, Insightful)
Hahahah (Score:5, Funny)
Have you actually bothered to check that link? It made me spit my Coke in laughter.
Problem is in the dependency model (Score:3, Interesting)
Have a look at Gentoo's init script setup. It actually knows about hard and soft dependencies. It still only fires off one script at a time at the moment, but importantly the system has all the right data in hand to parallelize the process. (Hard dependencies are for instance when then nfsclient script *requires* that the network script is run before it, soft dependencies are things like the apache script saying that *if* the mysql service is enabled, please start it before you start me, but I do not require it if it wasn't enabled explicitly by the admin).
Gentoo would be a great jumping point for parallel ization of startup tasks. The only real issue is screen clutter.... but I think that can be solved (if not terribly elegantly) by line-buffering the startup messages and displaying them serially in whatever order they "complete", resulting in a random line-order on the screen, but nothing stepping on each other's lines.
Re:Bah. (Score:4, Insightful)
Maybe some people chose to turn of their box when
they are not at home or when they are sleeping. Maybe some people want to save a little bit of electricty if they can.
This is the problem with the linux zelots. Someone points out somthing that is annoying and should be fixed and people rush to say how this is a non issue, then they go on to say how this is actually better than the way windows does it.
People who run IIS and then subject it to a
Yeah because IIS is the only webserver that can be
Re:Bah. (Score:5, Insightful)
Some of us shut our computers off. Not every linux PC is a 24/7 server. People own laptops, shut down desktops when not in use, etc. Plus theres linux' ever-growing embedded segment. Your TiVo never gets shut off? How important is boot-time to a device like TiVo or Zaurus?
# Boot time doesn't have to be an arduous wait. Yes, on out-of-the-box distros it can be incredible, but I blame the distro, not Linux.
Yes, distros are poorly configured, and the userbase is largely stupid. Noone talks about runlevels anymore. Put "basic stuff you need to get the user going" on a lower runlevel, and "more advanced gitchy bullshit like AIM etc" on a higher runlevel. Most linux distros behave by default the way a spyware infected win98 box does, making the user wait while it starts umpteen zillion fringe services.
# If you choose to not fiddle, then you choose to have boot times that are increasing. It takes time to autoprobe everything correctly and get it set up if you're too lazy to do it yourself. Windows does it from the perspective of 'throw everything in there and take up gadzillions of RAM'. Linux says, 'I'll autosetup everything but still keep you lean'. You pay for what you get, folks.
Pure "M$ sucks rolF!" bullshit from the clueless. Windows runs a microkernel, Linux runs a monolithic kernel. They work differently. Windows loads the drivers it knows it needs (the installed ones) at boot time, linux pages the crap in and out of the kernel itself.
This is the quickest part of the boot, really. Delays come when you have dhcpcd timing out while looking for a DHCP server that doesn't exist but yet for some reason runs by default even if you have a statically configured address. Or your waiting for privoxy to load and parse its blacklists, or for squid to primp and preen its caches, etc..
# People who run IIS and then subject it to a
Most sites that stand up to a
It has more to do with being able to afford bandwidth than some magical uberneat0 perl script you found on efnet.
Re:an issue is it??? (Score:5, Insightful)
Yeah. My desire to cut my electric bill in half is "stupid." My desire to increase my energy efficiency is "stupid." Attempting to be environmentally responsible is "stupid."
Unless you need your computer to be running 24/7, leaving it on is a tremendous waste of energy, and I think it's unethical. You're an ass.
Re:an issue is it??? (Score:3, Interesting)
If you use your system every day, like I do, the wear and tear on the hardware by all the added start cycles will eliminate your cost savings. Have a CPU fan go out and your processor melts, and
Re:an issue is it??? (Score:3, Insightful)
This is faulty logic. This is like saying "Since I can't do everything, I'm going to do nothing". That's the kind of piss-poor logic which unfortunately is contributing significantly to the current dismissive attitudes toward environmental protection. Sigh...
A strong
Re:an issue is it??? (Score:3, Interesting)
It isn't that my computer draws a lot of power -- it's that the rest of my house draws so little.
And my primary motivation is NOT saving money. Yeah, I save a lot on the electric bill, but consider this: I recently plonked down $1252 for a washer/drier (at a hefty discount, retail would have been $2200 but I got a special deal) that averages about 10% of the energy/water usage of a "normal"
Re:an issue is it??? (Score:3, Insightful)
Did you do any research into the relative amounts of energy used in constructing different washers? Think of a $1k front loader vs. a $400 top loader. That extra $600 either (1) is pure profit margin, or (2) pays for more complicated construction. (1) is unlikely in a competative market. (2) means it is likely more energy is used constructing the fancy washer.
Re:an issue is it??? (Score:3, Insightful)
I've seen PCs run for five years straight, with no problems. And I've had so many PCs fail when I power them on. It seems like power cycling sucks, to me. That said, I turn my PCs off to save power, especially here in NY it's pretty expensive.