[bittorrent] Introductory/endgame algorithms
c99ang at cs.umu.se
Wed Sep 28 17:09:50 EDT 2005
On Sep 28, 2005, at 15:09, Jari Sundell wrote:
> On 9/28/05, Olaf van der Spek <olafvdspek at gmail.com> wrote:
> If there's enough RAM, can't you simply prefetch all files
> completely into RAM?
> I haven't considered doing this explicitly, I use mmap'ed files
> directly and the kernel keeps the pages in memory if there's room.
> If the user wants to preload the files, he may use dd or similar to
> dump them into /dev/null.
Assuming you support files larger than the address space of the
machine (2 GB for an ordinary 32-bit machine), how do you do your mmap?
Do you move it around to parts of the files that gets the most read
and write requests and use ordinary io for the rest? or do you create
and free the mmap() for each read/write operation? (do you have any
idea if that would incur big performance hits?).
More information about the BitTorrent