2006-10-31 17:23:22

by Olivier Galibert

[permalink] [raw]
Subject: Reading a bunch of file as fast a possible

After searching for kinda-keywords in a locked-in-memory index, I get
a list of 50-100 files out of several hundred thousands I want to read
as fast as possible. I can ensure that the directory structure in hot
in the dcache by re-reading it from time to time, but there isn't
enough memory to lock the documents there. So I'd like to read 50-100
files for which I have the sizes (I put them in the index) and memory
space as fast as possible (less than 0.1s would be great) from
cold-ish cache.

The best way is I think to find a way to give all the requests to the
system and have it sort them optimally at the elevator level. But how
can I do that? Can aio do it, or something else?

OG.


2006-10-31 18:45:38

by Phillip Susi

[permalink] [raw]
Subject: Re: Reading a bunch of file as fast a possible

Yes, it sounds like you are looking for aio, possibly with O_DIRECT if
you would prefer that the reads not churn the cache.

Olivier Galibert wrote:
> After searching for kinda-keywords in a locked-in-memory index, I get
> a list of 50-100 files out of several hundred thousands I want to read
> as fast as possible. I can ensure that the directory structure in hot
> in the dcache by re-reading it from time to time, but there isn't
> enough memory to lock the documents there. So I'd like to read 50-100
> files for which I have the sizes (I put them in the index) and memory
> space as fast as possible (less than 0.1s would be great) from
> cold-ish cache.
>
> The best way is I think to find a way to give all the requests to the
> system and have it sort them optimally at the elevator level. But how
> can I do that? Can aio do it, or something else?
>
> OG.