ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: guid to nginx internals



On Friday 04 May 2007 17:18, Mykola Zubach wrote:
> Начало цитаты:
>     if (m[1] == 'O') {
>
>         if (m[0] == 'P' && m[2] == 'S' && m[3] == 'T') {
>             r->method = NGX_HTTP_POST;
>             break;
>         }
>
>         if (m[0] == 'C' && m[2] == 'P' && m[3] == 'Y') {
>             r->method = NGX_HTTP_COPY;
>             break;
>         }
>     ...
> That's a man who cares about performance.
> Конец цитаты.
>
> Я не спец в C, и не читал той дискуссии по strncmp, но по моему
> проверять 2-й байт, а потом 1-й - не самый оптимальный шаблон доступа к
> памяти

Это может иметь какое-то значение только если первый и второй байты в разных 
cache lines. Поскольку начала запроса находится скорее всего в начале 
выделенного блока памяти, который выравнен как минимум на cache line size, то 
волноваться не о чем.



-- 
Andrei Nigmatulin
GPG PUB KEY 6449830D

Now I lay me down to sleep(3)
Pray the OS my core to keep
If I die before I wake
Pray the Disk my core to take


 




Copyright © Lexa Software, 1996-2009.