Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: sendfile(2) patch и отда ча больших файлов на 7-STABLE amd64
On Sun, Feb 01, 2009 at 06:52:46PM +0300, Artemiev Igor wrote:
> Попробовал использовать патч (http://www.lexa.ru/nginx-ru/msg20575.html) к
> sendfile(2). Так вот, общее впечатление, что становится только хуже. Первая
> прокачка даёт 90MB/s, последующие - ~3MB/s, WCPU по данным top - 50-60%. При
> этом уже при 300 коннектах выбирается вся пропускная полоса рейд контроллера
> (~200MB/s согласно gstat -a при размере блока в 2M для sendfile), в то время
> как суммарная отдача по сети - 3-4MB/s. Судя по всему, проблема в том, что на
> amd64 sfbuf берётся напрямую из VM, а не из преаллокированной очереди.
> СОбственно вопрос к Игорю - возможно ли это как-то исправить, либо что-то
> недонастроено в самой системе? Конфиг nginx`а штатный. Изменение размера
> блока на ситуацию не влияет (пока он не равен 64K). Пробовал с ufs (блок
> 16K), zfs (128K), результат одинаков.
Патч использовался именно на amd64 и то, что sfbufs map'ятся через
direct map, это очень хорошо. Вопросы такие:
1) чему равен MAXPHYS ?
2) сколько физической памяти в машине ?
3) что из себя представляет рэйд ?
--
Игорь Сысоев
http://sysoev.ru
|