LINUX.ORG.RU

Если запутался, запусти программу под valgrind --tool=callgrind и смотри стек вызовов.

anonymous
()
Ответ на: комментарий от deterok

Наверно потому что sendfile научился файлам в outfd только в Linux 2.6.33?

yoghurt ★★★★★
()
Ответ на: комментарий от deterok

http://stackoverflow.com/a/7464280, хотя «you cannot use sendfile() here because the destination is not a socket» уже не актуально.

cp делает то же, т.е. read/write, только по 65536B.

http://stackoverflow.com/q/10195343

Я сейчас сравнил на больших файлах — как-то разницы не видно (cp, boost, sendfile, splice). Может на куче мелких будет, но всё равно незначительная, иначе бы в coreutils озаботились.

http://git.savannah.gnu.org/gitweb/?p=coreutils.git;a=blob;f=TODO

I don't plan to do that, since a few tests demonstrate no significant benefit.

quasimoto ★★★★
()

У них там

const std::size_t buf_sz = 32768;
а я то думал что оптимальный размер это getpagesize()*2

Boy_from_Jungle ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.