[devel] железо на сборочнице
Anton Farygin
rider на basealt.ru
Чт Мар 21 07:36:46 MSK 2019
21.03.2019 3:31, Dmitry V. Levin пишет:
> On Wed, Mar 20, 2019 at 04:05:55PM +0300, Dmitry V. Levin wrote:
>> On Wed, Mar 20, 2019 at 03:01:53PM +0200, Igor Vlasenko wrote:
>>> On Wed, Mar 20, 2019 at 03:28:16PM +0300, Dmitry V. Levin wrote:
>>>> On Wed, Mar 20, 2019 at 12:09:20PM +0200, Igor Vlasenko wrote:
>>>> [...]
>>>>> а надо бы только при появлении unmets.
>>>> Почему?
>>> Как бы мне и так очевидно, что
>>> пересборка по критерию, входит ли пакет A в сборочное окружение
>>> пакета B изначально была ошибочным допущением.
>> Я считаю иначе.
> Уточню: я считаю очевидным, что если сборочная среда пакета в задании
> изменилась, то этот пакет подлежит пересборке. Если пакет в результате
> пересборки изменился, то все касающиеся его тесты подлежат перепроверке.
>
> Более того, я считаю очевидным, что если свежесобранный пакет входит в
> сборочную среду других пакетов, то все они должны быть незамедлительно
> пересобраны и перепроверены. К сожалению, это у нас ещё не реализовано.
Мне кажется, что надо идти по самому простому пути - и сейчас
распараллеливание install check даст очень много свободного времени
сборочницы заданиям, в которых эта проверка занимает несущественное время.
Ну и при всей критике нашей сегодняшней сборочницы - не стоит забывать,
что реально она сейчас работает на оборудовании десятилетней давности и
узкое место при этом не x86, а aarch64.
Обновление железа и распараллеливание сборки уже ускорит текущую
сборочницу в несколько раз (если не в десятки) и это будет заметно
дешевле и быстрее (но не так весело, конечно) переписывания алгоритмов.
И уже после выполнения этих двух задач можно будет понять, какие места у
нашей сборочницы являются критически неэффективными с точки зрения
алгоритмов формирования списка сборочных зависимостей и стоит ли эта
работа каких-то усилий.
Подробная информация о списке рассылки Devel