ureadahead slows down bootup with SSD

Bug #644819 reported by Dan42
18
This bug affects 2 people
Affects Status Importance Assigned to Milestone
ureadahead (Ubuntu)
New
Undecided
Unassigned

Bug Description

Binary package hint: ureadahead

I felt like bootup had slowed down in 10.04 and one thing that stood out in bootchart was ureadahead, so I measured its performance according to the instructions at http://ubuntuforums.org/showthread.php?t=1434502
One thing I must note is that my main filesystem is on a SSD while various HDD and USB disks are used to store data.

I've included 5 bootcharts:
*1.no-ureadahead.png -> With ureadahead disabled (both ureadahead.conf and ureadahead-other.conf), 16s until gdm startup.
*2.main-pack-only.png -> I deleted the *.pack files just as the instructions said but I didn't notice a single "pack" file was still there, so ureadahead didn't reprofile; but interestingly, this mistake solved the slowdown! Almost as fast as without ureadahead.
*3.profiling.png -> Deleted the "pack" file so that ureadahead could reprofile.
*4.all-packs.png -> Booting with ureadahead "optimization", slowest of all boots; 24+ seconds until gdm startup.
*5.minus-usb-pack.png -> Based on the fact that without the *.pack files step 2 was almost as fast as a no-ureadahead bootup, I tried removing my /var/lib/ureadahead/media.USBDISK.pack file, and indeed that improved bootup time to 18+ seconds.

So it seems to me that by trying to cache data for all disks in one go, ureadahead brings performance down to the lowest common denominator, in my case a USB disk.

ProblemType: Bug
DistroRelease: Ubuntu 10.04
Package: ureadahead 0.100.0-4.1.2
ProcVersionSignature: Ubuntu 2.6.32-24.42-generic-pae 2.6.32.15+drm33.5
Uname: Linux 2.6.32-24-generic-pae i686
NonfreeKernelModules: nvidia
Architecture: i386
Date: Wed Sep 22 08:27:50 2010
PackDump: Error: command ['ureadahead', '--dump'] failed with exit code 4: ureadahead:/var/lib/ureadahead/pack: Permission denied
PackDumpDat: Error: command ['ureadahead', '--dump'] failed with exit code 4: ureadahead:/var/lib/ureadahead/pack: Permission denied
PackDumpMnt.Multi-Os: Error: command ['ureadahead', '--dump'] failed with exit code 4: ureadahead:/var/lib/ureadahead/pack: Permission denied
PackDumpMnt.Windata: Error: command ['ureadahead', '--dump'] failed with exit code 4: ureadahead:/var/lib/ureadahead/pack: Permission denied
ProcEnviron:
 LC_TIME=fr_CA.UTF-8
 LANGUAGE=en_CA:en
 PATH=(custom, user)
 LANG=en_CA.utf8
 SHELL=/bin/bash
SourcePackage: ureadahead

Revision history for this message
Dan42 (launchpad-net-dan42) wrote :
Revision history for this message
James M. Leddy (jm-leddy) wrote :

Hmm, readahead() blocks until the specified data has been read, so if ureadahead is a single threaded process, that's probably the problem that you're running in to.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.