The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"уфф..."
Отправлено Michael Shigorin, 29-Ноя-07 15:22 
>>Нет.  До сих пор правило N+1 работает хорошо, потому как запасной
>>процесс именно на I/O и подскакивает своё отработать.
>Даже если речь идет о каком-нить Dual Xeon'е, где, собсно 2 чесных
>проца,

Это в смысле Katmai какие?  Ну вот стоит Quad на площадке, один из тех, о ком речь.  В т.ч. занимается сборкой (точнее, года полтора назад ещё активно занимался, сейчас скорее изредка).

>а два так, поржать (HT)

Это в P4-based... и именно что поржать, учесть их толком не получается -- где чуточку лучше, где на треть хуже.

>то даже в таком случае CPUs+2 будет более оптимальной формулой,
>чем CPUs+1. 2*CPUs - это именно на честных сабжах.

Простите, но на нечестных можно только гадать.

>>Вы предлагаете то, что склонно приводить к scheduler thrashing -- оверхед
>>на переключение начинает быть заметен.
>Потери переключений/потери кеша ничто в сравнении с простоем проца и (уж тем
>более!) винта.

Да, но если затыков в I/O особенных нет (при той же сборке это типично -- надо чем-то выжрать всю полосу пропускания типичного для заданной системы стораджа, чтоб сборка начала голодать именно по диску) -- то оверхед начинает быть заметен.

>>>Они уже в кеше.
>>И тут их оттудова выпинывают, потому как слайс закончился... (я про CPU
>>cache)
>Я вообще-то был об FS cache.

Да понятно ;)

>Ну а если про CPU cache - то и тут все не так мрачно.
>Когда в конкурентной работе (на одном проце) два (или n+1) процесса с
>одинаковыми страницами кода, то даже при переключении контекста, кеш не будет потерят,
>т.к. оба процесса использовали одни и те же страницы.

Это "когда".  Посмотрите на working set типичного cc1 и размер кэшей того, что под рукой...

>Время, затраченное на чтение исходника и запись бинаря, много меньше чем на
>процесс компиляции. Вывод: если хоть один проц простаивает или в состоянии
>iowait - то вы недогрузили сборочную машину.

Именно.

>Это намного страшнее по временным затратам, чем напряги шедулера.
>Практически всегда при сборке процы загрузить намного проще, чем винт.

Сдуру перегрузить можно и то, и другое.

>>PS: и для связок навроде apache+mysql, которые зачастую более i/o bound --
>>тоже глупости.
>стоп-стоп
>Мы о сборке, а не о бешенных юзерах-программеро-дезигнерах, которые ни веб, ни
>крипты, ни базы писать не умеют. Там я вообще ничего не скажу кто
>чего и сколько хочет. Ибо _полный_ рандом.

Я просто добавил, что даже для _более_ i/o bound tasks, когда действительно на каждое ядро можно и нужно наваливать больше -- при полной прогрузке "это не так".

Собственно, для случая мелкого хостинга без больших затыков это оббенчивалось и разбиралось здесь: http://lists.altlinux.org/pipermail/sysadmins/2007-August/01...

Для сборки -- практическое правило остаётся вида Ncpu+M, а не Ncpu*M.  При этом либо M всё равно мало по сравнению с Ncpu, либо фиксить надо не коэффициенты, а дисковую (возможно, переездом в память).

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
  Введите код, изображенный на картинке: КОД
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру