On Mon, Nov 22, 2010 at 09:40:41PM +0200, Igor Vlasenko wrote: > On Mon, Nov 22, 2010 at 07:43:34PM +0300, Dmitry V. Levin wrote: > > если репозиторий, для которого задание было собрано, отличается от > > репозитория, на котором оно было собрано, то задание переводится в в > > состояние AWAITING с увеличенным номером итерации; > > смотрю на > #33272 AWAITING #1.2 sisyphus srpm=perl-Apache-AuthCookie-3.12-alt1.1.src.rpm > #33271 AWAITING #1.2 sisyphus srpm=perl-Any-Moose-0.13-alt2.1.src.rpm > #33270 BUILDING #1.2 [locked] sisyphus srpm=perl-AnyEvent-5.22-alt1.1.src.rpm > ощущение, что сборка идет в 3 потока, но каждый поток в 2 итерации, > в результате сборка в 2 раза медленнее однопоточной. Нет, это утверждение не верно, поскольку - последующие итерации выполняются быстрее - итерации для разных заданий выполняются параллельно Не забывайте, что сборочница обрабатывает задания от разных пользователей. Мне кажется, что вы не вполне понимаете, для чего была реализована параллелизация. Раньше в обработке заданий было узкое место: одно длительное задание блокировало всю очередь. Теперь, для того, чтобы заблокировать очередь, требуется три длительных задания от трех различных пользователей. Производительность сборочницы в среднем тоже немного выросла, в основном за счет параллельной обработки длительных и неудачных заданий. В сборочнице все равно остается одно неустранимое узкое место - comitter, поэтому производительность обработки быстрых заданий в среднем практически не увеличилась. > > если репозиторий, для которого задание было собрано, отличается от > > репозитория, на котором оно было собрано > > Оптимизацией была бы либо честная однопоточность, т.е. вообще > не пытаться собирать под логин параллельно, > либо критерий выбора -- из списка доступных > сначала попытаться выбрать то, чего нет в репозитории текущего BUILDING. Ничего не понял. -- ldv