У меня на CentOS 4.3 x86_64:
real 0m0.239s
user 0m0.209s
sys 0m0.029s
При значениях:
server_names_hash_max_size 16384;
server_names_hash_bucket_size 512;
для порядка 10 тыс. записей. (Пришлось обе цифры увеличить вдвое по
сравнению с i386 ОС).
Процессоры АМД (L2 кеш - по 1 мегабайту на ядро). Но на Интелах новых
кеши сейчас вообще по 2 мегабайта на каждое ядро ставят - должно без
проблем все то же самое кешироваться...
On 3/21/06, Igor Sysoev <is@xxxxxxxxxxxxx> wrote:
> On Tue, 21 Mar 2006, Igor Sysoev wrote:
>
> > On Tue, 21 Mar 2006, Alexey Mahotkin wrote:
> >
> >> On 3/21/06, Alexey N. Kovyrin <alexey@xxxxxxxxxxx> wrote:
> >>>> Можно попробовать
> >>>> server_names_hash_bucket_size 1536;
> >>>> server_names_hash_bucket_size 2048;
> >>> проверил с 2048:
> >>>
> >>> real 0m54.758s
> >>> user 0m53.555s
> >>> sys 0m0.944s
> >>
> >> Такое впечатление, что хэш деградировал до линейного списка.
> >>
> >> Может, что-то с битовыми операциями на 64-битной машине?
> >
> > Там биты не причём. Там медленный процесс подбора минимального размера хэша.
> > И такое ощущение, что на предыдущем 32-битном процессоре хэш влазил в L2
> > кэш.
> > На 64-битном процессоре размер элемента в хэше больше, чем на 32-битном.
>
> Вернее, влазил не хэш, а промежуточные данные.
>
>
> Игорь Сысоев
> http://sysoev.ru
>
>
--
Alexey Polyakov