You are not logged in.
Thanksgiving break is coming up for most of next week and I'd like to build an experimental arch system to push some limits. Here are some things I'm looking at playing around with:
* Boot time: trying to get full boot (without X) to under 10 seconds.
* File system: looking at using a new filesystem, maybe XFS?
* Custom kernel: With basic hardware setup baked in to get rid of initrd.
Any recommendations for other things I could play with? I'd also like some pointers to resources for baking hardware config into the kernel. I'll be using an older stock Dell machine so that I can get a list of the specific hardware components.
Thanks guys.
The Bytebaker -- Computer science is not a science and it's not about computers
Check out my open source software at Github
Offline
1) Your link in your sig is incorrect.
2) Sounds awesome, be sure to report your results. Bare custom kernel should be awesome for boot time. If you need some help with the modules, this script will help you:
#!/bin/bash
for i in `find /sys/ -name modalias -exec cat {} \;`; do
/sbin/modprobe --config /dev/null --show-depends $i ;
done | rev | cut -f 1 -d '/' | rev | sort -uAswell as the kernel in a nutshell book.
Archi686 User | Old Screenshots | Old .Configs
Vi veri universum vivus vici.
Offline
You should try ext4 if you're making it expirimental... Works like a champ here.
keeping an eye on this thread ![]()
Stand back, intruder, or i'll blast you out of space! I am Klixon and I don't want any dealings with you human lifeforms. I'm a cyborg!
Offline
@haxit: thanks for the info. Looks like kernel in a nutshell will be a good way to spend my $50 thanksgiving bonus. Might even pick up writing GNU Emacs extensions with it.
@klixon: didn't think about ext4, thanks for the heads up.
The Bytebaker -- Computer science is not a science and it's not about computers
Check out my open source software at Github
Offline
Basu, keep your money for something else: you can have LKIN for free on the authors website:http://www.kroah.com/lkn/
Offline
@mianka: yeah I realized that after I posted. Nice name by the way.
My work laptop boots in 30 seconds, so hopefully what I learn from this will help bring that down
Last edited by Basu (2008-11-24 01:50:06)
The Bytebaker -- Computer science is not a science and it's not about computers
Check out my open source software at Github
Offline
Some questions:
Does anyone know which filesystem would be the fastest to mount? Or are they all mostly the same?
If I build all hardware modules into the kernel, can I get rid of the initrd?
Is udev necessary to automount USB drives?
Last edited by Basu (2008-11-24 19:43:42)
The Bytebaker -- Computer science is not a science and it's not about computers
Check out my open source software at Github
Offline
Some questions:
Does anyone know which filesystem would be the fastest to mount? Or are they all mostly the same?
afaik the main difference is not really the mounting but the access time which in turn depend mostly on what hardware you're using. and different filesystems are suitable for different usecases (as in some are fast in dealing with lots of small files and others have their strength in dealing with really huge files)
If I build all hardware modules into the kernel, can I get rid of the initrd?
yes.
Is udev necessary to automount USB drives?
umm. i don't actually know about this one. has anyone else a clue?
Offline
Hal is used for automounting and it loads udev automagically
Stand back, intruder, or i'll blast you out of space! I am Klixon and I don't want any dealings with you human lifeforms. I'm a cyborg!
Offline
Does anyone know which filesystem would be the fastest to mount? Or are they all mostly the same?
ReiserFS mounts slowly. JFS, XFS, ext3, and ext4 should mount quickly. If mount time really affects your overall boot time, there's probably a way to mount filesystems in the background (although that could fail if one depends upon another, e.g. mounting /home in parallel with /).
Offline
Just a note: Don't forget to put daemons in the background and get rid of unneeded modules in mkinicpio.conf
Archi686 User | Old Screenshots | Old .Configs
Vi veri universum vivus vici.
Offline
I'll definitely be watching this topic. Once you're done with this project, I'd love to read a well-written article about it. I'm sure I could implement some of your optimizations on my system.
[ lamy + pilot ] [ arch64 | wmii ] [ ati + amd ]
Offline
Ext4 is not really experimental anymore since its mainline, and its much faster than any other fs I have used (jfs, xfs, reiser, ext3). As for getting your boot time down, just use a 2.6.28 kernel and watch it fly, you can get the whole kernel init process down to 0.5s or so with the new Async option, and ext4 makes everything else fly.
The only experimental thing I can recommend is BFQ I/O scheduler (http://feanor.sssup.it/~fabio/linux/bfq/patches/) for a desktop it stomps all over CFQ, I have been using it for ages without issue.
Grub2 is worth a look also if your feeling brave, its alot better than grub 1, and can boot from pretty much anything you want to throw at it.
Offline
Ext4 is not really experimental anymore since its mainline, and its much faster than any other fs I have used (jfs, xfs, reiser, ext3). As for getting your boot time down, just use a 2.6.28 kernel and watch it fly, you can get the whole kernel init process down to 0.5s or so with the new Async option, and ext4 makes everything else fly.
The only experimental thing I can recommend is BFQ I/O scheduler (http://feanor.sssup.it/~fabio/linux/bfq/patches/) for a desktop it stomps all over CFQ, I have been using it for ages without issue.
Grub2 is worth a look also if your feeling brave, its alot better than grub 1, and can boot from pretty much anything you want to throw at it.
Do you have a PKGBUILD for the 2.6.28 kernel?
Archi686 User | Old Screenshots | Old .Configs
Vi veri universum vivus vici.
Offline
No I just build it manually without any initrd, I dont even have mkinitcpio installed on this machine. I gave up on PKGBUILDs for the kernel when I had issues with ext4, far easier to just stick the source in /usr/src and do it the old fashioned way.
Offline
As for getting your boot time down, just use a 2.6.28 kernel and watch it fly, you can get the whole kernel init process down to 0.5s or so with the new Async option, and ext4 makes everything else fly.
Could you give me a hint on where i can find some information on the "Async option"? I'm happy about anything that makes my system boot faster and the only google results seem to be about the fastboot-branch...
Thanks in advance :-)
Offline
Yep the fastboot branch was merged into 2.6.28. CONFIG_SCSI_SCAN_ASYNC, is the new kernel option. I think there may be some others but I have not really investigated.
The RC1 notes contain all the changes, there is also a type of bootchart for the kernel built in to the debug stuff.
http://www.kernel.org/pub/linux/kernel/ … 2.6.28-rc1
Offline
none of the official benchmarks show ext4 speed advantage over other ext3/jfs/xfs each will shine in some tests and lag in other.
Async option was introduced in 2.6.20 (official patch in 2.6.26 or 2.6.27, don't remember), not in 2.6.28.
When enabled allows asynchronous/paralell scan for SCSI devices during boot shortening devices are recognized. However, this has no effect if you strip down kernel from unsused devices.
I would suggest to take look at zen kernels. some patches may have certain impact on boot time. Also strip kernel from unused devices even if you have hardware indtalled. For example PCMCIA slows down boot time "tremendously" for example (udev time).
Offline
K.mandla posted a couple of links with fs benchmarks:
http://www.debian-administration.org/articles/388
http://fsbench.netnation.com/
XFS comes out well, Reiser4 looks awesome but I don't know if its development is being continued.
K.Mandla has done a lot of work trying to get boot times down, check out his blog:
http://kmandla.wordpress.com/
Offline
I currently have a 64-bit dual core but by setup is 32-bit (I wanted Flash).If I drop in a 64-bit problem to run all the other 32bit apps, will that be a problem?
The Bytebaker -- Computer science is not a science and it's not about computers
Check out my open source software at Github
Offline
none of the official benchmarks show ext4 speed advantage over other ext3/jfs/xfs each will shine in some tests and lag in other.
I dont want to turn this into a FS war thread, but I will say this, none of the benchmarks I have seen are anywhere near up to date.
I currently have a 64-bit dual core but by setup is 32-bit (I wanted Flash).If I drop in a 64-bit problem to run all the other 32bit apps, will that be a problem?
Umm Im not really sure what your trying to say... maybe search the wiki for 64 bit?
Offline
I dont want to turn this into a FS war thread, but I will say this, none of the benchmarks I have seen are anywhere near up to date.
naah, I don't believe in someone's a gut feeling or using pacman as benchmarking tool.
There is alpha version of 64-bit flash for linux.
As long as you have lib32 subsystem (default for most sane 64-bit distros) you are just fine. You may need to install some less popular 32-bit libs in some cases.
Only real limitation are drivers, particularly for less popular hardware.
Offline
+1 for compiling custom kernel, dropping initrd (Gentoo style <3)
+1 for choosing specific filesystems
personally I don't really like the idea of dropping daemons like hal,udev etc. Even if you can do without them, they add some usefullness to a system. I think it's cooler to see how fast you can make a 'usable' system boot then a system that has everything stripped down and hardwired together. But that's just me of course..
< Daenyth> and he works prolifically
4 8 15 16 23 42
Offline
I currently have a 64-bit dual core but by setup is 32-bit (I wanted Flash).If I drop in a 64-bit problem to run all the other 32bit apps, will that be a problem?
Sorry, I meant to ask whether it would be a problem if I put in a 64-bit kernel and then ran 32 bit programs.
The Bytebaker -- Computer science is not a science and it's not about computers
Check out my open source software at Github
Offline
Sorry, I meant to ask whether it would be a problem if I put in a 64-bit kernel and then ran 32 bit programs.
no
Offline