LINUX.ORG.RU

Оптимизация генты и одержимость компиляцией

 , ,


3

2

Меня удручает тот факт, что крупные пакеты компилируются бесконечно долго. Офис — 10 часов, вебкит сейчас вот подтягивал — прождал 5 часов и плюнул, нажав ctrl+c, потому что пользоваться машиной во время компиляции очень затруднительно. А wine вообще задолбали обновлять, только-только скомпилировал за три часа, смотрю - опять обновление пришло. Ну это же несерьезно!

Я начал рыть инфу по теме и прочитал кое-что. Говорят, мол есть то ли аналог, то ли обёртка для портажа, которая быстрее и лучше — Paludis. А еще, поговаривают на зарубежных форумах, есть смысл полезть поглубже и включить в ядро экспериментальный i/o менеджер — BFQ. Там же можно добавить некие опции к gcc.

Все это вкупе способно, вроде как, дать значимый прирост производительности. Что вы думаете об этом, друзья?

Ответ на: комментарий от RazrFalcon

Имеется в виду наравне с другими пакетами, когда работает emerge. Если можно прикрутить genkernel, то как?

anonymous
()
Ответ на: комментарий от RazrFalcon

Понятно, что каждый раз меняется набор параметров сборки ядра (make oldconfig задает вопросы). Так что в общем случае все равно потребуется вмешательство.

anonymous
()
Ответ на: комментарий от anonymous

Ниасилили, как обычно. У себя использую самописный ебилд для ядра.

anonymous
()
Ответ на: комментарий от Flagitio

Да, чтоб каждый раз не залезать в /usr/src

anonymous
()
Ответ на: комментарий от anonymous

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

Deleted
()

Fri Mar 6 13:21:42 2015 >>> app-office/libreoffice-4.3.5.2
merge time: 4 hours, 35 minutes and 45 seconds.

Sat Oct 11 09:20:12 2014 >>> net-libs/webkit-gtk-2.4.6-r200
merge time: 2 hours, 44 minutes and 11 seconds.

Sat Mar 19 02:27:20 2016 >>> app-emulation/wine-9999
merge time: 55 minutes and 8 seconds.

На 7-летнем Е6500.

А почему у тебя так долго? Что за процессор?

Deleted
()

ну, если тебе охота проблем на ровном месте — юзай палудис. Вообще-то под него есть целый дистр, exherbo что ли. С гентушными ебилдами от работает... своеобразно.

demidrol ★★★★★
()
Ответ на: комментарий от Rinaldus

Какие у VDS параметры и стоимость? Мне б тоже взять, чтобы генерить бинарный репозиторий для компа и нетбука.

Deleted
()
Ответ на: комментарий от anonymous

Зачем? Оверлей поддерживать один хрен вручную. Я написал скрипт тех команд, которые использую при обновлении ядра. То есть я сделал emerge -auDN @world и увидел что прилетели новые сырцы. Сделал emerge --depclean и потер каталог со старыми сырцами. После этого скрипт буквально выглядит так:

eselect kernel set 1
zcat /proc/config > /usr/src/linux/.config
make oldconfig
make && make install modules_install
grub-mkconfig -o /boot/grub/grub.cfg

Deleted
()
Ответ на: комментарий от Deleted

У тебя все может быть в зависимости от своих задач. Но поддерживать ради этого оверлей - это еще плюс несколько телодвижений. Мне же просто достаточно сделать sh myscript.sh

Deleted
()

Все это вкупе способно, вроде как, дать значимый прирост производительности. Что вы думаете об этом, друзья?

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

iZEN ★★★★★
()
Ответ на: комментарий от Deleted

Не всякий хостер разрешает держать VDS с большой нагрузкой на жесткий диск, но мне посчастливилось найти одного такого, которому по барабану на это (потому что в админке установлены ограничения на IO). Это planetahost.ru. У меня лично их KVM-тариф «Мастер»: 3 ядра, 2 ГБ памяти и 90 ГБ жесткий диск за 629 рублей в месяц. Меньшие тарифы брать не советую, там слишком мало оперативной памяти. Некоторые пакеты с меньшей оперативной памятью не смогут собираться, проверенно лично. Также советую на этой VDS сделать раздел подкачки не менее 10 ГБ: лишним он не будет.
Могу еще поделиться своими скриптами для автоматического обновления система по cron'у.

Rinaldus ★★★★★
()
Последнее исправление: Rinaldus (всего исправлений: 2)
Ответ на: комментарий от Rinaldus

с нуля

И как ты не имея компа к vps коннектиться собрался?

место в квартире занимает

Если место под столом/на шкафу итд это значительный процент квартиры, то проблема в квартире, а не в компе.

anonymous
()
Ответ на: комментарий от anonymous

И как ты не имея компа к vps коннектиться собрался?

Так ты имеешь в виду собирать все пакеты на 3 компах? Вот когда будет такая производительность, которая позволит Libreoffice и прочим тяжелым пакетам собираться за 5 минут, а не за 2 часа, тогда без VDS действительно можно будет обойтись. А пока - нет.

Rinaldus ★★★★★
()
Ответ на: комментарий от Rinaldus

Спасибо за развернутый ответ. А что насчет VDS с тестовым периодом (7 дней например) чтобы за это время развернуть третий стейдж и собрать libreoffice, chromuim и webkit-gtk, например? Если с нагрузкой на диск проблем не будет, то должно прокатить.

Deleted
()
Ответ на: комментарий от Rinaldus

Но у тебя на vds на 3x ядрах и 2x гигах либреоффис ни за пять минут, ни за два часа не соберётся. А три компа можно спихнуть в барахолку и купить комп и китаепланшет.

anonymous
()

Зачем что-то компилять самостоятельно? Ты — социофоб, и мечтаешь поскорее угробить окружающую среду? Зачем компилировать то, что можно компилировать на билд серверах единожды?

Freyr69 ★★★
()
Ответ на: комментарий от anonymous

VDS у меня работает 24/7, система обновляется каждые 2 часа. Поэтому у меня практически всегда там свежие бинарные пакеты.

Rinaldus ★★★★★
()
Ответ на: комментарий от Freyr69

Чтобы оправдать покупку многоядерника.

anonymous
()
Ответ на: комментарий от Freyr69

Чтоб не вкомпиливать лишние зависимости, которые заботливо пихают мейнтейнеры бинарных дистров. Или наоборот, которые забыли добавить

Harald ★★★★★
()
Ответ на: комментарий от Harald

это основопологающий вопрос для здоровья гентушника

dk-
()
Ответ на: комментарий от Harald

Чтоб не вкомпиливать лишние зависимости

Экономим на спичках, компилируя по 10 часов при каждом обновлении софт, приближая экологическую катастрофу, чтоб не дай бог не притянулось libname? В крайнем случае можно найти дистр, где собирают в наиболее приемлемом ключе, или что-то вроде опенбзд, где пакеты с зависимостями на выбор, или компилять при случае, благо в той же федоре отличная инфраструктура для компиляния.

Freyr69 ★★★
()
Ответ на: комментарий от Harald

Не то что не обновлял, я даже не использую initramfs. У меня все работало (работало, заметь) и работает без этого.

Flagitio
() автор топика
Ответ на: комментарий от Deleted

Потомушто 1 ядро работало, а не все 4. AMD A10 5700.

Flagitio
() автор топика

Выпилить генту. Она способствует ухудшению экологической обстановки.

mcgeek
()
Ответ на: комментарий от Freyr69

А я всего-то хочу софт без дерьма, неужели я столь многое прошу? Кстати то, о чём ты говоришь, невозможно в принципе по правовым и лицензионным причинам.

anonymous
()
Ответ на: комментарий от anonymous

как бы да - характеризует потенциал осиляторства

anonymous
()
Ответ на: комментарий от anonymous

не обязательно именно генты

не, LFS конечно хардкорнее, но и гента много даёт в плане умения компилять

Harald ★★★★★
()
Ответ на: комментарий от Freyr69

Экономим на спичках, компилируя по 10 часов

Канпеляем только ночью, когда на юзер-экспириенс это не влияет, потому при работе за компом он отзывчивее за счёт оптимизаций. Win-win. Хотя при установке софта по быстрому всё равно просос, да.

anonymous
()
Ответ на: комментарий от anonymous

Короче генте нужны польные официальные бинарные репы, или допилить makepkg в арче/другом дистре.

anonymous
()
Ответ на: комментарий от anonymous

Канпеляем только ночью, когда на юзер-экспириенс это не влияет

Будто от этого бесценные ватты рассеиваются рациональнее.

Freyr69 ★★★
()

-=:=-

PORTAGE_NICENESS=«19»
PORTAGE_IONICE_COMMAND=«ionice -c 2 -n 5 -p \${PID}»
FEATURES=«fixlafiles metadata-transfer parallel-fetch parallel-install sandbox candy cgroup collision-protect»
EMERGE_DEFAULT_OPTS="--jobs 4"
MAKEOPTS="-j 4"

джобсы и кол-во -j сам как нить подберешь, когда smp настроишь XD

none /tmp tmpfs size=512M,noatime,nodiratime 0 0
none /var/tmp/portage tmpfs size=8G,noatime,nodiratime 0 0

тоже сам думай по памяти...

KosmiK ★★
()
Ответ на: комментарий от Deleted

Ну, я не настолько жадный. Я в состоянии выделить из бюджета 600 рублей в месяц ради обеспечения комфорта.

Rinaldus ★★★★★
()
Ответ на: комментарий от Freyr69

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

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.