[PATCH] fadvise(2) system call

Lev Serebryakov lev at FreeBSD.org
Sun Oct 30 09:01:54 UTC 2011


Hello, Adrian.
You wrote 30 октября 2011 г., 4:05:19:

>>>> You can read the description of posix_fadvise() (which this implements) here:
>>> If you want a real-world consumer of posix_fadvise you can take a look
>>> at net-p2p/libtorrent-rasterbar15. The code is ifdef'ed out for FreeBSD
>>> because we don't have that yet, but it should be obvious how to
>>> re-enable it. There are a few clients that use that lib, qbittorrent is
>>> probably the most straightforward.
>>  net-p2p/transmission-daemon could be used, too. It shows very poor
>> performance on UFS (90% in pread() call and 50% of wall time to
>> saturate 40Mbit/s channel from fast disk) compared to Linux, where
>> such interface exists.
> ... why? Squid/Lusca doesn't suffer that way.
   I don't know. But I could show your results of typical ktrace, where
 transmission-daemon spends 590 seconds of 600 (Wall time) in
 pread() syscall , and real read speed is only about 30Mbit/s (and
 this FS could be read at speed about 300MiB/s, 100 times faster,
 with linear read).

-- 
// Black Lion AKA Lev Serebryakov <lev at FreeBSD.org>



More information about the freebsd-arch mailing list