On Tue, Jun 23, 2009 at 8:54 PM, Kok, Auke<[email protected]> wrote:
> Corrado Zoccolo wrote:
>> Hi
>> I have few suggestions for sreadahead, I hope this list is the proper
>> place for them.
>>
>> * earlied versions of sreadahead used to put files under /etc, while
>> version 1.0 uses /var. I find /etc to be more convenient, since I use
>> a separate /var partition, and it is not yet mounted when
>> rc.early.local is invoked (i.e. where I would like to start
>> sreadahead)
>
> sreadahead uses /var to mount debugfs at the early stage, hence my choice to 
> move
> this location to /var (I think /etc should be clear of mounts).
>
> I also think that the sreadahead pack file is not a configuration file, and as
> such doesn't belong in /etc either.
>
> IMHO /var is the right location, if you want to have a specific /var 
> partition,
> then I suggest that you delay starting up sreadahead until /var is mounted.
>

Maybe having the prefix configurable may help.

>> * use posix_fadvise(fd,off,len,POSIX_FADV_WILLNEED) instead of
>> readahead(fs,off,len): posix_fadvise is non-blocking until there is
>> room in the queue, so you can get rid of multithreading, and it will
>> better interact with the block layer, allowing it to reorder more
>> requests according to disk placement.
>
> I'm currently contemplating removing all the threading support, because I'm 
> not
> seeing an improvement - even on SSD's.
>

Good.

>> * export a plain file list of the files that are opened during boot.
>> this list can be used by external script to optimize on-disk file
>> placement for rotational disks.
>
> would a simple `dump` utility do?
>

Yes.

>> * give an option to skip readahead of large contiguous blocks. This
>> improves rotational disk performance when the disk is the bottleneck,
>> since we prefetch all random accesses, that normally incur in high
>> latency, and let the processes complete their sequential reads, that
>> are faster, only when needed, with less contention.
>
> obviously for spinning discs only. I haven't really optimized sreadahead yet 
> for
> this case, but this sounds like an ok idea. Have you tried it out?

Yes. I'm using sreadahead 1.0 on 3 computers, 2 with rotational disks,
and 1 ssd, and I found that on the rotational ones, prefetching only
the small chunks (for me, small is <1M) helped to reduce the boot
time.

Corrado

>
> Auke
>



-- 
__________________________________________________________________________

dott. Corrado Zoccolo                          mailto:[email protected]
PhD - Department of Computer Science - University of Pisa, Italy
--------------------------------------------------------------------------

_______________________________________________
Power mailing list
[email protected]
http://www.bughost.org/mailman/listinfo/power

Reply via email to