ureadahead slows down bootup with SSD

Bug #644819 reported by Dan42 on 2010-09-22
18
This bug affects 2 people
Affects Status Importance Assigned to Milestone
ureadahead (Ubuntu)
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

Dan42 (launchpad-net-dan42) wrote :
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  Edit
Everyone can see this information.

Other bug subscribers