Bug#481369: run ioniced and in background

2009-03-29 Thread Julian Andres Klode
#readahead-list (1:1.20060421.1016-5) unstable; urgency=low
#
#  * Allow to run in the background, see README.Debian (Closes: #481369)
#

package readahead-list readahead
tags 481369 + pending
thanks

On Tue, Sep 30, 2008 at 12:49:18PM +0200, Guus Sliepen wrote:
 On Mon, 02 Jun 2008 10:53:33 +0100, Scott James Remnant wrote:
 
  Running it in the background would mean you were seeking the disk all
  over the shop,
 
 On a solid state disk (CompactFlash, USB stick or otherwise), there is no
 overhead due to seeking.  For rotating disks the kernel uses an elevator
 algorithm that minimises the amount of seeking necessary.  This elevator
 
  and attempting to readahead pages that were already read
  by an application running in parallel.
 
 That is not a problem at all, the pages won't be read twice, the readahead 
 will
 just be a no-op since the pages are already in memory, and readahead-list will
 then just continue with the next file.
 
  Likewise ioniceing readahead is basically moronic.
 
 If you run it in the foreground, it doesn't make a difference. If you run
 readahead-list in the background it will. Unless readahead-list really

I have read you arguments, and I see no reason to not provide an option to
enable such a behavior.

See commit f0eab721c81c7810f69db8b30cc9b861cdab1f38, e.g. using gitweb:

http://git.debian.org/?p=collab-maint/readahead-list.git;a=commit;h=f0eab72

from README.Debian
==

Running in background
-
If you want to run readahead-list in background, enable RUN_IN_BACKGROUND=true
in /etc/default/readahead. This may be useful for medias without high seek
times (e.g. SSD).

When enabled, readahead-list will be running at idle priority, so the boot will
not slow down.



-- 
Julian Andres Klode  - Free Software Developer
   Debian Developer  - Contributing Member of SPI
   Ubuntu Member - Fellow of FSFE

Website: http://jak-linux.org/   XMPP: juli...@jabber.org
Debian:  http://www.debian.org/  SPI:  http://www.spi-inc.org/
Ubuntu:  http://www.ubuntu.com/  FSFE: http://www.fsfe.org/


signature.asc
Description: Digital signature


Bug#481369: run ioniced and in background

2008-09-30 Thread Guus Sliepen
On Mon, 02 Jun 2008 10:53:33 +0100, Scott James Remnant wrote:

 Running it in the background would mean you were seeking the disk all
 over the shop,

On a solid state disk (CompactFlash, USB stick or otherwise), there is no
overhead due to seeking.  For rotating disks the kernel uses an elevator
algorithm that minimises the amount of seeking necessary.  This elevator
algorithm works best if there is multiple concurrent IO, because if there is
only one thread doing IO, there is not much to schedule. For example, the
readahead() call blocks according to its manpage, so if you just run
readahead-list, you might actually see more disk seeks if the list itself is
not optimised for the layout of the blocks on disk than if it runs in the
background.

 and attempting to readahead pages that were already read
 by an application running in parallel.

That is not a problem at all, the pages won't be read twice, the readahead will
just be a no-op since the pages are already in memory, and readahead-list will
then just continue with the next file.

 Likewise ioniceing readahead is basically moronic.

If you run it in the foreground, it doesn't make a difference. If you run
readahead-list in the background it will. Unless readahead-list really
accurately predicts what files to read in what order, it could be that some
boot scripts might start earlier or behave different than when the boot was
profiled, and then they might want to read in some file that was not readahead
yet. In that case you want to give that script precedence over readahead-list.

-- 
Met vriendelijke groet / with kind regards,
  Guus Sliepen [EMAIL PROTECTED]


signature.asc
Description: Digital signature


Bug#481369: run ioniced and in background

2008-06-02 Thread Scott James Remnant
On Thu, 2008-05-15 at 18:09 +0200, Julian Andres Klode wrote:

 Am Donnerstag, den 15.05.2008, 17:14 +0200 schrieb Alberto:
  Since version 1:0.20050517.0220-0ubuntu4, readahead runs in the
  foreground, not the background, in order to avoid i/o concurrency
  (which is slow).
 
Not true.  It runs in the foreground because the entire point of using
readahead is to perform boot I/O in one optimal pass.

Running it in the background would mean you were seeking the disk all
over the shop, and attempting to readahead pages that were already read
by an application running in parallel.

While you do see a slight performance improvement when in the
background, you always see an improvement in the foreground.

Likewise ioniceing readahead is basically moronic.

Scott
-- 
Scott James Remnant
[EMAIL PROTECTED]


signature.asc
Description: This is a digitally signed message part


Bug#481369: run ioniced and in background

2008-05-25 Thread Petter Reinholdtsen

[Alberto]
 I send attached both graphs as you suggested
 [bootchartioniced.png (image/png, inline)]
 [bootchartnotioniced.png (image/png, inline)]

The graphs look strange.  Are you sure the profiling worked as it
should?  The readahead run do not seem to have loaded all the files
needed by the boot, as some files are read later in the boot sequence.

Happy hacking,
-- 
Petter Reinholdtsen



-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Bug#481369: run ioniced and in background

2008-05-15 Thread Alberto

package: readahead
version: 1.20060421.1016-3
severity: wishlist


Since version 1:0.20050517.0220-0ubuntu4, readahead runs in the
foreground, not the background, in order to avoid i/o concurrency
(which is slow).
A better approach: run with the ionice wrapper (not available at
time of 1:0.20050517.0220-0ubuntu4) and in the background. This
can make use of the many delays that exists at boot time.

I think this shoud suffice:
...
if /sbin/start-stop-daemon --start --background --quiet \
--pidfile /var/run/readahead-list.bogus \
--startas /usr/bin/ionice -- -c 3 /sbin/readahead-list 
-s /etc/readahead/boot; then

...


Another variant is ionice -n7.



--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Bug#481369: run ioniced and in background

2008-05-15 Thread Julian Andres Klode
Am Donnerstag, den 15.05.2008, 17:14 +0200 schrieb Alberto:
 package: readahead
 version: 1.20060421.1016-3
 severity: wishlist
 
 
 Since version 1:0.20050517.0220-0ubuntu4, readahead runs in the
 foreground, not the background, in order to avoid i/o concurrency
 (which is slow).
 A better approach: run with the ionice wrapper (not available at
 time of 1:0.20050517.0220-0ubuntu4) and in the background. This
 can make use of the many delays that exists at boot time.
In the next upload of readahead-list, I may change this, provided I
receive further information.

Therefore, please follow this procedure:
 1. Run 'touch /etc/readahead/profile-once' and reboot
 2. Install bootchart and renderer

Now, do the following one time for standard readahead and one time for
readahead with ionice:
 3. Reboot with option 'init=/sbin/bootchartd'
 4. Run bootchart to create an image

5. Send an email with both images attached.

 
 I think this shoud suffice:
 ...
  if /sbin/start-stop-daemon --start --background --quiet \
  --pidfile /var/run/readahead-list.bogus \
  --startas /usr/bin/ionice -- -c 3 /sbin/readahead-list 
 -s /etc/readahead/boot; then
 ...
 
 
 Another variant is ionice -n7.
 
 
-- 
Julian Andres Klode, Fellow of the Free Software Foundation Europe
 Debian Maintainer | Developer | Ubuntu Member

try Debian: http://www.debian.org/ | my site: http://jak-linux.org/
jabber: [EMAIL PROTECTED] | IRC: juliank (FreeNode, OFTC)
languages: German  | English


signature.asc
Description: Dies ist ein digital signierter Nachrichtenteil