Robin Hood: Компилирование в несколько потоков

6 сообщений / 0 new
Последнее сообщение
Гость
Robin Hood: Компилирование в несколько потоков

Имеется двуядрёный процессор. Хочется задействовать оба ядра, зря что ли ему второе нужно?
Собственно вопрос: что писать в командной строке чтобы создать два или более потока при компиляции какой-либо программы?
Говорю сразу: сам не нагуглил.

WhiteDragon (не проверено)

-j3 если память не изменяет
только это должен еще и сам софт уметь

Robin Hood (не проверено)

Задам вопрос поконкретнее.
Вот я к примеру компилирую ядро:
make mrproper
make xconfig
make
make modules_install install

То есть надо писать "make -j3"?

WhiteDragon (не проверено)

вот там вот в xconfig есть пимпочка поддержки многоядерности

sl1m (не проверено)

-j - это запуск паралельных процессов компиляции, к распаралеливанию потоков на межядерном взаимодействии имеет отношение непосредственно компилятор..

Robin Hood (не проверено)

Я привел неудачный пример с компиляцией ядра. Меня могли не так понять. Речь шла не о поддержке многоядерности ядром, а о том как эту многоядерность задействовать именно в процессе компиляции какой-либо программы.

Кстати, я тут решил потестить сборку из исходников wine-0.9.40. Вот результаты:
make: 32m30s
make -j2: 17m47s
make -j4: 17m47s
make -j8: 16m57s
make -j16: 16m38s
make -j (количество потоков не ограничено): ноут завис. Поэтому разумно всё таки ограничивать количество потоков.
Вот из-за этих 40-50% все и затевалось.

Всем спасибо.
P.S. В LXF92(май) тестили Intel Core 2 Quad. Результаты в случае с компиляцией схожие.
<span class='smallblacktext'>[ Редактирование 22.08.2007 - 20:36:45 ]</span>

RSS-материал