On Fri, May 15, 2009 at 10:15:18PM +0400, Anton Farygin wrote: > Alexey Tourbin пишет: > >On Fri, May 15, 2009 at 09:23:23PM +0400, Anton Farygin wrote: > >>Дим, а отчего бы не попробовать сделать > >>запуск проверок в параллель сборке ? > >>Прямо после сборки каждого бинарного > >>пакета... > > > >Нет, так делать нельзя. Нужно полностью > >генерировать новый > >RPMS.classic. Установка на новом RPMS.classic может > >отличаться > >от установки на старом RPMS.classic + RPMS.hasher. > > > >В целом, нельзя отказаться от семантики > >сборки задания и выполнения > >проверок. Эта семантика состоит в > >следущем: сначала все пакеты > >собираются на старом репозитарии RPMS.classic > >+ RPMS.hasher (то есть с > >локальным оверлеем в режиме --wiht-stuff). > >Если сборка прошла успешно, > >то генерируется новый репозитарий > >RPMS.classic и уже на новом > >репозитарии выполняются проверки. Этот > >подход продуман достаточно > >хоршо, его очень сложно улучшить и очень > >легко ухудшить. > > Вопрос не в том, улучшить ли его или > ухудшить. Вопрос в том - как его ускорить. Ускорить никак нельзя. Сейчас структура расходов времени в girar-builder близка к оптимальной, за исключением проверки, которая использует --whatprovides. Эту проверку нужно будет переделать. Она выводит много всякой лабуды, но иногда выводит и кое-что интересное. Я пока не решил, что именно нам от неё нужно. Изначально это была проверка на ничейные каталоги, но проблема ничейных каталогов никогда не была простой. > Ведь, в идеале - нужно максимально быстро > получить либо новый RPMS.classic, либо отлуп по > ошибке. При чём, если есть ошибка, то чем > раньше будет отлуп - тем лучше. Да ты прямо теоритик какой-то ускорения сборки! > А тестовая установка пакетов идёт в один > или в несколько потоков ? Как ты понимаешь установку в несколько потоков? У нас же есть только один хешеровский чрут. А если разворачивать скажем два чрута то второй чрут будет вовсе не бесплатным. Считай что на каждый чрут нужно полгига памяти. А этих полгигов лишних не бывает. Они в свою очередь будут вымывать буферный кеш. Нельзя просто так что-то взять и совершенно бесплатно распараллелить. > Можем ли мы предоставить любому > желающему подключиться к процессу > разработки Sisyphus, просто задействовав его > вычислительный ресурс ? > > Дима, не мог бы ты подробнее объяснить, > какого рода вычислительные ресурсы тебе > нужны и в каком качестве ?