LINUX.ORG.RU

Для тех, кто думает перейти на Gentoo

 


61

25

Привет

Достаточно часто создаются темы, где люди думают переходить на Gentoo и хотят уточнить некоторые моменты. Чтобы сэкономить время себе и другим, решил создать этот топик, в котором буду собирать ответы на частые вопросы.

TL; DR: Для тех, кто думает перейти на Gentoo (комментарий)

Преимущества
#1 Gentoo очень гибкая и всенастраиваема
Пример того что в Gentoo делается просто:
- Использовать openrc вместо systemd или наоборот; pulseaudio или без него
- Наложить кастомный патч; пример когда это нужно
- Подключить или отключить такие вещи как vaapi, vdpau, opencv и т. п.
- Иметь несколько веток софта; уточню, что это работает только для определённых пакетов; например можно одновременно установить python 2.7, 3.4, 3.5 или qt4 и qt5, но нельзя одновременно установить qt 5.7 и 5.8

#2 Очень удобный и функциональный пакетный менеджер
Примеры удобных фич:
- Прервать установку (вплоть до перегрузки компьютера), а потом ее продолжить. Можно продолжить с последнего пакета (emerge --resume), продолжить но пропустить последний пакет, например, если его установка прервалась с ошибкой (emerge --resume --skipfirst, некоторые нюансы); для больших пакетов можно продолжить саму компиляцию (ebuild <полный путь и имя файла>.ebuild merge).
- Когда при установке обновляется конфиг приложения, определяется редактировался ли предыдущий конфиг пользователем. Если да, конфиг не перезаписывается, а кладётся радом, и выводится сообщение пользователю с предложением обновить конфиг.
- Обновить всю систему, но исключить некоторые пакеты (удобно для исключения больших пакетов из ежедневного обновления)
- Почистить зависимости - удалить те пакеты, которые больше никому не нужны.
- Поскольку ebuild - текстовый файл, то можно пропарсить на предмет требований к количеству ресурсов для установки:

$ for F in $(find /usr/portage -name "*.ebuild") ; do REQ=$(grep "CHECKREQS" "$F") ; if [[ -n "$REQ" ]]; then echo -e "\n$F\n$REQ" ; fi; done
- Вынести компиляцию на другой компьютер (поддержка distcc на уровне пакетного менеджера). Важно когда Gentoo устанавливается на слабый компьютер.


#3 Хорошая документация, по крайней мере на английском. Более того, поскольку Gentoo-специфичные утилиты являются лишь надстройкой на generic механизмами, документация от других дистрибутивов (например от Arch) в большинстве случаев тоже подходит.
Опрос 2014: У какого дистрибутива лучшая документация

#4 Достаточно свежий софт, много сторонних репозиториев.
Список сторонних репозиториев
Gentoo - rolling release, а значит как только новая версия конкретного софта появилась в репозитории, её можно установить. Но здесь не имеется ввиду, что как только новая версия зарелизилась, она моментально становится доступна в основном дереве; лаг есть, но он как правило не большой, хотя зависит от пакета. В тестинг ветке новые версии появляются раньше. Кроме того мейнтейнеры Gentoo могут маскировать некоторые версии, если в них обнаруживаются серьезные баги. Однако всегда можно размаскировать нужную версию. Кроме того для некоторых пакетов есть -live версии, когда исходники скачиваются напрямую из github или аналога.
Пример когда «у меня не самый свежий софт в Gentoo»

#5 Полный порядок в системе, ничего лишнего - эстетическое удовольствие, плюс возможно можно немного улучшить перформанс

#6 В процессе установки и эксплуатации получаешь полное понимание как работает система, а значит возникающие проблемы решаются быстро. На самом деле без должного знания Линукса (или желания его узнать в процессе) Gentoo нормально не установить.

Недостатки
#1 Сложная и долгая первичная установка. Если устанавливать в первый раз, нужно готовиться потратить несколько дней. Для опытных - несколько часов + компиляция.
Время установки (компиляции) Gentoo, еще немного цифр по большим пакетам

#2 Пакетный менеджер хоть и удобный, но очень медленный

#3 Если не обновлять систему долго (полгода и более), то сложность обновления сопоставима с установкой новой системы. Есть мнение, что emerge-webrsync --revert=yyyymmdd должен помочь (лично я не проверял).

Особенности
#1 Высокий порог входа; дистрибутив не для новичков. Если человек не комфортно чувствует себя в командной строке, никогда не компилировал ядро, не разбивал диски на разделы, не привык изучать докуменацию, вчитываться в сообщения и анализировать логи, то Gentoo покажется сложной в обслуживании, а возникающие проблемы будут списываться на дистрибутив.

#2 Обновляться нужно часто.

#3 Основные фичи - в командной строке. Для тех, кто не привык работать в командной строке, это будет минусом. А для тех, кто комфортно чувствует себя в командной строке, это будет плюсом, так как работа в командной строке более эффективна, а типовые сценарии можно обернуть в скрипты и еще больше сократить время на обслуживание системы.

#4 Есть две ветки: stable и testing. В stable меньше шансов встретить проблему, но в testing более свежий софт. Ветки можно комбинировать.

Мифы
Миф #1 Gentoo даст прирост производительности за счет того, что весь софт компилируется под конкретное железо.
Краткий ответ: В 99% случаев при смене дистрибутива X на Gentoo вы не заметите какого-либо улучшения в плане скорости работы. Если вы зададитесь целью сравнить свежеустановленный дистрибутив X с свежеустановленной Gentoo, то в 90% вы не увидите значительной разницы.

Детальный ответ.
Не следует ожидать что просто скомпилировав систему из исходников вы получите сколько-нибудь заметное улучшение перформанса.
Для большинства приложений компиляции под конкретное железо даст прирост производительности в районе 1-2%.
Ложка дегтя: в некоторых случаях даже может быть замедление. Например Firefox, можно ускорить с помощью PGO. В Gentoo по умолчанию это отключено, так как PGO увеличивает время компиляции почти в два раза. В бинарных дистрибутивах соотв. софт может быть скомпилирован с PGO.
Так как добиться улучшения производительности? Узкий круг приложений может быть значительно ускорен при компиляции под конкретную платформу - на 30%-50% и больше. В основном это приложения которые активно занимаются вычислениями. Но для этого требуется соотв. настройки. Например, активация SIMD инструкций, даст прирост производительности в мультимедиа приложениях. Некоторые процессоры имеют аппаратную поддержку шифрования AES. В бинарных дистрибутивах подобные фичи будут отключены, так как не все процессоры это поддерживают, а бинарные дистрибутивы в первую очередь заботятся о совместимости.
Небольшое улучшения перформанса возможно если убрать из системы всё лишнее (мнение 1, мнение 2).
Еще интересный случай

Миф #2 Обновления занимают много времени
Краткий ответ: 5-10 минут на фоне, не мешая основной работе.

Детальный ответ.
Обновления не занимают много времени, но опять же, при правильном подходе.
Во-первых, как было сказано выше, обновляться нужно часто. Для testing ветки это каждый день, или по крайней мере не реже чем в раз 2-3 недели. Для стабильной ветки - раз в неделю достаточно (на стабильной ветке намного реже выпускаются обновления)
Во-вторых, есть пакеты которые правда очень долго компилятся: libreoffice, firefox, chromium... Их всего 10-15. Я их исключаю из ежедневного обновления, а обновляю раз в несколько месяцев.
Еще нужно сказать, что на этом вопросе часто заостряют неоправданно много внимания. Обычно обновления происходят на фоне, и не сильно влияют на работу; так какая разница как долго они выполняются?
В итоге, у меня обновления занимают примерно 5-10 мин ежедневно (у меня тестинг-ветка).
К тому же всё происходит на фоне, в любой момент можно поставить на паузу (Ctrl+Z, fg), продолжить после прерывания (умышленного или случайного).
Мой скрипт ежедневного обновления

Миф #3 Gentoo требует много времени на обслуживание
Краткий ответ: Может быть больше, может быть меньше по сравнению с другими дистрибутивами. Очень зависит от того, насколько вы будете вчитываться в то, что пишет вам пакетный менеджер, и разбираться первопричинах.

Детальный ответ.
Обслуживание Gentoo занимает меньше времени по сравнению с другими дистрибутивами, но только при грамотном обращении, конечно. Достигается это за счет следующего:
- хороший пакетный менеджер: маскировки, глобальные и индивидуальные установки для пакетов (USE флаги, опции компиляции, каталоги), хуки, приоритеты (чтобы компиляция происходила на фоне и можно было работать), много опций для установки и анализа, подсказки после установки.
- всё происходит в CLI, а значит типовые операции можно обернуть в скрипты/алиасы.
- уже существуют много утилит для облегчения обслуживания: eselect, equery, eix, eclean, euse, genlop и др.
Грамотное обращение означает, что вы правильно и регулярно обновляете систему, исполняете предписания emerge, которые он выдает после установки, держите в порядке конфигурационные файлы, а если таки возникает проблема, которую решить вы не можете, то вы обращаетесь в форумы, а не просто жалуетесь на жизнь.
Что до проблем с обновлениями - см. следующий пункт «Миф #4 Установка, обновление постоянно падают; частые блокировки»

Миф #4 Установка, обновление постоянно падают; частые блокировки
Краткий ответ: Не чаще чем в других дистрибутивах

Детальный ответ.
Если говорить про «часто» и «постоянно», то проблемы с обновлением/установкой могут быть если:
- система давно не обновлялась
- система неправильно обслуживается (см. выше про Грамотное обращение)

В редких случаях пакет просто не компилируется. На самом деле это проблема не Gentoo, а тех, кто писал этот софт. И в подавляющим большинстве случаев это не является проблемой, и вот почему. Если это обновление, то можно продолжить процесс запустив emerge с параметрами --resume --skipfirst - он обойдет проблемный пакет, пересчитает зависимости чтобы система осталась консистентной, и продолжит обновление (а можно изначально передать параметр --keep-going, тогда это будет происходить автоматически, прерываний вообще не будет). Если пакет критичен, можно установить предыдущую версию, которая компилировалась (а проблемную замаскировать чтобы пакетный менеджер ее не видел).

Что может заблокировать обновление полностью:
- просьба пакетного менеджера поменять флаги пакета. При этом emerge предлагает сделать это автоматически, но лично я предпочитаю делать вручную. Для ручного способа, решается добавлением строчки в package.use
- просьба пакетного менеджера задать лицензию. Это валидно только для не-свободных лицензий, например EULA, Skype, Adobe Flash и т. п. Если мы говорим имено про обновление, то такое бывает только когда лицензия обновляется, что бывает очень редко (как много у вас пакетов под не-свободной лицензией, и как часто они меняют лицензию?). Решается добавлением одного слова в make.conf
- просьба пакетного менеджера размаскировать пакет. По моему опыту нужно не размаскировывать, а наоборот замаскировывать пакеты, которые тянут замаскированные зависимости. Это, да, требует минут 5-10 на разобраться. Но, если только у вас нет смешения веток и live пакетов, такой вариант случается раз в пятилетку.
- сложные блокировки. Большинство блокировок пакетный менеджер разрешает сам; по моим наблюдениям, качество данного механизма значительно улучшилось пару лет назад. Из своего опыты скажу, что (учитывая частые обновления) блокировок, которые бы совсем останавливали обновление я уже не видел года 1.5. Но если они есть, то это действительно сложный кейс.

Иными словами, при порядке в системе, кейсы, которые требуют значительного времени и напряжения уственых усилий (сложные блокировки, замаскированные зависимости) случаются раз в несколько лет; кейсы, которые решаются за пару минут - раз в несколько месяцев.

Миф #5 В Gentoo нет бинарных пакетов
Краткий ответ: Есть там, где это действительно нужно.

Детальный ответ
Во-первых есть Calculate Linux - полностью бинарный форк Gentoo.
Во-вторых даже в самом Gentoo в основном репозитории есть несколько бинарных пакетов: libreoffice-bin, firefox-bin, некоторые другие. Связано это с тем, что из исходников они очень долго компилируются, и иногда проще поставить бинарник.
Бинарный пакет можно сделать самому командой quickpkg --include-config y <установленный пакет> - удобно для бекапов.

FAQ

#1 Установка на слабый компьютер
Смотря что есть слабый компьютер.
Из собственного опыта: Intel Core2 Duo 6600 @ 2.40GHz, 2Gb RAM + 4Gb swap хватало для комфортной работы в Gentoo.
Зачастую ebuld'ы содержат информацию о том, сколько нужно памяти для компиляции пакета. TOP 5:
16G - chromium
8G - ledger, isabelle
7G - ceph
6G - firefox x64 (для x32 нужно 3G), pypy x64 (для x32 нужно 3G)
5G - electron
Если компьютер и вправду слабый, то лучше выбрать не Gentoo (точнее не-source-based дистрибутив). Альтернатива - можно вынести компиляцию на другой «не-слабый» компьютер с помощью distcc.


Опрос 2021: Какую операционную систему и/или дистрибутив GNU/Linux вы используете на ПК?
Опрос 2018: Какой ОС вы пользуетесь на основном ПК?
Опрос 2017: Какую ОС вы используете на основном ПК?
Опрос 2014: Какой дистрибутив вы используете на десктопе?
W3Tech стастика дистрибутивов на серверах
Отличия дистрибутивов, время работы ноутбука
Чем удобны USE флаги
Сколько памяти нужно для РАБОТЫ Gentoo (сколько нужно для компиляции было указано выше)
Сколько места на диске нужно для Gentoo
Правильное полное обновление Gentoo, Мой скрипт ежедневного обновления, Еще вариант
Gentoo для девелоперов
Практика инсталляции Gentoo: в двух словах простым языком
Небольшой скрипт - сборка livecd

★★★★★

Последнее исправление: Kroz (всего исправлений: 36)

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

Гента только для хикк. В энтерпрайзе она не применима.

Приятно удивил.

Oldboy
()

Посмотрел самое начало темы, которая очевидно будет бесконечной.

Преимущества #1 Gentoo очень гибкая и всенастраиваема Пример того что в Gentoo делается просто:

Далее написано много букв о преимуществах. Я выражусь более кратко: преимущества отсутствуют.Gentoo нужна для фанатствования, и больше ни для чего. А для фанатствования не обязательно наличие преимуществ. Орут же некоторые: -«В мире нет ещё пока команды лучше «Спартака»!». Вот и гентушники делают то же.

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

Если Гента такая настраиваемая и гибкая, почему она не используется в эмбедет?

А кто тебе сказал что не используется?

Учитывая что можно перекомпилить под любую архитектуру, и максимально облегчить и оgтимизировать, то embedded - хороший use case.

Есть отдельный handbook по embedded: https://wiki.gentoo.org/wiki/Embedded_Handbook

Есть целая команда по embedded: https://wiki.gentoo.org/wiki/Project:Embedded

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

В энтерпрайзе она не применима.

А как же Calculate, который ориентирован на enterprise?

А как же Chromium OS? ChromeOS, кстати, тоже вырос из Gentoo.

Нью-Йоркская биржа NASDAQ, одна из крупнейших бирж в мире работала на Gentoo, а может и до сих пор работает.

А вот список Gentoo-based дистрибутивов, там есть enterprise: https://wiki.gentoo.org/wiki/Distributions_based_on_Gentoo

А еще задумайся, почему Gentoo поддерживают такие компании как HP, nVidia и Hetzner.

Так что Gentoo подходит enterprise’а вполне, но там, где есть особые требования.

Kroz ★★★★★
() автор топика
16 сентября 2022 г.
Ответ на: комментарий от Shushundr

Время разбрасывать камни, и время собирать камни.
Еккл 3:5

z0idator
()
24 октября 2022 г.

Установка не сложная, просто долгая

Winlows86
()
1 апреля 2023 г.
Ответ на: комментарий от Kroz

Это ты о чём?

Это я о том, что «каждая лягушка своё болото хвалит». Я в своём болоте - Slackware - достаточно посидел. Аж поседел. Но всё равно - рекомендую, нуворишам. А тем, кто не особо хочет вдаваться в подробности и/или трахать мозги себе и окружающим - рекомендую Минт. Почему не Убунту или Дебиан? - С Минтом проблем меньше.

cadaber ★★
()
Последнее исправление: cadaber (всего исправлений: 1)

Так это на лорвики

Hertz ★★★★★
()
23 мая 2023 г.
Ответ на: комментарий от Werenter

А кто-то говорил про систему общего назначения?

Kroz ★★★★★
() автор топика
29 ноября 2023 г.

Конечно, я очень извиняюсь, но мне искренне жаль гентушников...
(c) Как далеки они от народа...

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

Отличный список!
Но заниматься менеджментом пакетов вручную, когда для этого есть программа, уже не кажется интересным способом провести время. Одно дело раз настроил и что-то подправить, но Gentoo, требует всего твоего внимания, как кот на коленках.

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

Конечно, я очень извиняюсь, но мне искренне жаль гентушников…

Лично мне жалко не-гентушников. Это ж насколько нужно себя нелюбить, чтобы мириться с буйными фантазиями дистро-строителей. Которые ещё и с каждым релизом что-то меняют…

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

Лично мне жалко не-гентушников. Это ж насколько нужно себя нелюбить, чтобы мириться с буйными фантазиями дистро-строителей

У мейнтейнеров генты тоже бывают фантазии по части что-нибудь взять и удалить. Благо есть локальный оверлей.

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

как кот на коленках

Но ведь в этом ничего опасного? Или да? )

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

но Gentoo, требует всего твоего внимания, как кот на коленках.

С точностью до наоборот. После инсталляции и настройки Gentoo требует самый минимум внимания, который только может быть. И уж точно меньше чем другие дистры, да и вообще другие ОС. Если не согласны - приводите пример сценария где это не так.

Собственно простота использования - это главная причина почему я на Gentoo вот уже много лет.

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

После инсталляции и настройки Gentoo требует самый минимум внимания, который только может быть. И уж точно меньше чем другие дистры, да и вообще другие ОС. Если не согласны - приводите пример сценария где это не так.

Обновление бинарного дистрибутива: рутинная операция, проблемы возможны только из-за конфликтов с пакетами сторонних репозиториев или очумелыми ручками пользователя

Обновление Gentoo: ошибки компиляции, неочевидные конфликты и блокировки, циклические зависимости, … Мне-то не сложно, но я не представляю, как этим может пользоваться не-разработчик.

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

У мейнтейнеров генты тоже бывают фантазии по части что-нибудь взять и удалить. Благо есть локальный оверлей.

Если ты про пакеты, то они об этом извещают за несколько месяцев (или за полгода) через сообщение в пакетном менеджере с указание причины. Притом конкретно для пакетов которые ты используешь, то есть для твоего конкретного случая. Потом ещё за какое-то количество месяцев они эти пакеты маскируют; и, соответственно, если тебе всё ещё лень что-то менять, то можешь просто отменить маскировку. Потом, да, могут удалить; но, 1) как правило есть альтернативы (и иногда они, мейнтейнеры, тебе об этом рассказывают) 2) или есть оверлеи. Ну то есть у тебя есть куча времени и возможностей адаптироваться. А учитывая что это случается в раз в пару лет - ну куда уже более юзер-френдли?

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

Обновление Gentoo: ошибки компиляции, неочевидные конфликты и блокировки, циклические зависимости

См. Миф #4 здесь: Для тех, кто думает перейти на Gentoo (комментарий)

У меня обновление Gentoo запускается тремя кнопками в терминале: u1<enter>. Это команда которая делает примерно вот это: Для тех, кто думает перейти на Gentoo (комментарий) . После нажатия этих трёх кнопок я могу идти спокойно заниматься своими делами. Пакетный менеджер за меня разрулит конфликты, блокировки, циклические зависимости… А те которые не разрулит - пропустит (до новых версий, в которых это может исправиться). Но в любой момент времени система остаётся консистентной и в рабочем состоянии: спасибо rolling-release.

Куда уж проще? Разве что по cron запускать, но я так не хочу.

Вообще, (а я подписан на тег ‘gentoo’) я давно не видел сообщений о проблемах которые ты описал. Я даже не вспомню когда последний раз кто-то сообщал о проблемах с обновлениями. При инсталляции - было недавно, но достаточно просто решалось, человек просто не опытный был, это нормально.

Может ты просто давно пробовал Gentoo…

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

Это моя основная система с 2018 года

Ну так давай общаться! Создавай темы, ставь тег ‘gentoo’, я буду рад помочь.

Если у тебя stable, нет размаскированных пакетов, не много ~amd64, ты апдейтишься хотябы раз в месяц, с --keep-going, далее @preserved-rebuild, и c последующим --depclean - всё должно работать как часы. На самом деле даже на ~amd64 я нормально жил, только апдейтиться почаще нужно было, хотябы раз в неделю.

У меня это в скрипте, поэтому - одна команда, которая под коротким алиасом. Если хочешь, могу скинуть последнюю версию. Ах, да, я ещё настроил хуки чтобы конфиги автоматически апдейтились, чтобы избавиться от этих назойливых ._cfg* файлов. Тем и хороша Gentoo - всё можно автоматизировать.

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

Ну так давай общаться! Создавай темы, ставь тег ‘gentoo’, я буду рад помочь.

Да не, я сам решаю свои проблемы, да и возникают они не так уж часто. Другое дело, что я никогда не могу быть уверен на 100%, что обновление будет безошибочным. К тому же, для обновления нужны ресурсы (проц, память), которые могут быть заняты. Поэтому полное обновление системы я делаю очень редко, что увеличивает количество проблем. Но, с другой стороны, регулярное обновление и чтение новостей — это как раз и значит, что «система требует внимания».

Если у тебя stable, нет размаскированных пакетов, не много ~amd64, ты апдейтишься хотябы раз в месяц, с –keep-going, далее @preserved-rebuild, и c последующим –depclean - всё должно работать как часы

Тем и хороша Gentoo - всё можно автоматизировать.

У меня полно ~amd64, есть пакеты из GURU и сторонних оверлеев, бывает что-то замаскировано или размаскировано. Так что я даже боюсь что-то автоматизировать

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

Если со stable всё и правда так замечательно, то это круто. Но без ~ всё-таки получается довольно устаревшая система, это скорее для любителей посидеть на Debian Stable. И многие новые пакеты есть только в тильде. В основном у меня тильда-пакеты появляются именно по этой причине — нужного пакета с стейбл не завезли, плюс его зависимости.

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

Обновление бинарного дистрибутива: рутинная операция, проблемы возможны только из-за конфликтов с пакетами сторонних репозиториев или очумелыми ручками пользователя

В этом «только» вся боль и заключается. Как только пытаешься объединить доступ к свежему софту, возможность откатить или пересобрать глючные пакеты и предсказуемость работы со сторонними пакетами, то бинарный дистрибутив начинает трещать по швам.

Маскировка/размаскировка пакетов в генту порой приводит к пазлам с зависимостями во время обновления. Но в типичном бинарном дистрибутиве лучше даже не пытаться делать подобные вещи, да и в source-based nixos на практике это применимо только в отдельных случаях.

altwazar ★★★★
()

у меня в 2006м была гента на дюроне 1600. вспоминаю эти дни как 2 дня сборки ядра и минимального окружения чтоб оно просто запустилось. потом еще 4 дня сборка графики и по мелочи. опенофис собирался где-то с неделю.

в общем, не переходите на генту если вам есть чем в жизни заняться.

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

опенофис собирался где-то с неделю

в общем, не переходите на генту если вам есть чем в жизни заняться

Вы всю неделю не отходили от компьютера и наверное даже вручную байты перекладывали с места на место?

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

а что, мне компьютер нужен чтоб на столе пыль стоял собирал? работать когда на нем?

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

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

что на слабеньком дюроне, компиляние - долгий процесс.

Это обычно пишут мелким шрифтом. А вот то, что gentoo оптимизируется под железо и, следовательно, лучшее решение для вот таких слабеньких дюранов - огромным текстом на всех ‘билбордах’. :)

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

У меня в те годы, скорее всего тоже было что-то из дюронов. Или возможно уже Атлон на 939. Первоначальная сборка генты занимала пару дней. От ядра до десктопа. Остальную систему можно было пилить полгода, медитируя над юзами.

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

Ну так ведь намного интереснее! Я тогда сидел на 939 A3200+ компилялось терпимо, но надоедало порой. Теперь, слава Аллаху можно не компилять 70-90% софта, благодаря Calculate. Только вот остался вопрос живучести самой Генты и как следствие Кальки, ведь многие пророчат скорую кончину Генты как дистрибутива…

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

Наверно есть резон в этом «пророчестве» именно сейчас, когда современное многоядерное железо переварит любое неоптимальное ПО. А значит, зачем ‘изгаляться’ «медитируя над юзами». Даже с учетом, что процесс компиляции теперь занимает в разы меньше времени.

Только, если за-ради сопричастности «философии Gentoo», если такая вдруг существует. )

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

То что в gentoo есть возможность оптимизации - не самоцель. Мало какие USE-флаги вообще имеют отношение к оптимизации, чаще они управляют фичами софта или его дополнительными возможностями, которые во многих дистрибутивах либо включены/выключены, либо просто идут в виде доп. пакетов.

Не говоря о том, что чтобы оптимизация действительно была заметна, надо постараться и знать, что делать, где и когда.

современное многоядерное железо переварит любое неоптимальное ПО.

Переваривают или нет - неважно. Там где это критично по прежнему прежде всего решают алгоритмы, обеспечивающие быстродействие, а не распараллеливание.

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

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

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

А зачем на gentoo каждое обновление ставить? Вполне можно раз в полгода...

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

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

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

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

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

С новыми процами наоборот гораздо больше разница между generic-сборками и оптимизацией под проц. В Microsoft это понимают и убирают совместимость со старыми процессорами, а в бинарных дистрибутивах всё до сих пор совместимо с кор2дуба.

annulen ★★★★★
()

можно немного улучшить перформанс

В пределах погрешности

Обслуживание Gentoo занимает меньше времени по сравнению с другими дистрибутивами, но только при грамотном обращении, конечно.

Манипуляция. Это справедливо для любой ос.

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

С новыми процами наоборот гораздо больше разница между generic-сборками и оптимизацией под проц.

Вас жестоко обманули. Начнём с того что существует не так много мест где оптимизация под конкретный процессор критична (например - строковые операции в libc). И там не будет генерённого кода, там будет hand-written asm с диспатчем через IFUNC. А вот поломать «кривыми» опциями компилятора можно много чего: один «fast-math» который часть народа здесь так полюбляет чего стоит - первый же nan и привет.

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

… оптимизация под конкретный процессор критична

Ну не прям так уж под конкретный, но многие дистры уже задумываются о переходе на x86_64_v2 (x86_64_v3, x86_64_v4). А некоторые уже и перешли, Насколько x86-64-v3 быстрее x86-64-v2? (комментарий).

p.s. И плюс здесь, что бинарники собирает ‘посторонний дядя’, а не сам юзер, в тщетных попытках обогреть Вселенную. )

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

Начнём с того что существует не так много мест где оптимизация под конкретный процессор критична

Мне достаточно оппортунистических оптимизаций, которые компилятор делает сам. См. например.

https://developers.redhat.com/articles/2023/12/08/vectorization-optimization-gcc#auto_vectorization

А вот поломать «кривыми» опциями компилятора можно много чего: один «fast-math» который часть народа здесь так полюбляет чего стоит - первый же nan и привет.

Есть https://wiki.gentoo.org/wiki/Safe_CFLAGS, есть CPU_FLAGS_X86, у некоторых пакетов есть юз-флаги, добавляющие оптимизацию. Всё остальное для любителей острых ощущений.

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

дюрон 1600 в те годы был весьма неплохим по производительности

пришло новое обновление, которое снова заставило меня выпасть на пол дня из жизни

Крестик или трусы. Обновления обычно происходят в фоне и не мешают работе.

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

а в бинарных дистрибутивах всё до сих пор совместимо с кор2дуба.

Декларация поддержки не означает её наличие. Сижу на раче с самосборным ядром, потому что искаропке не работает энергосбережение на ИвиБридж.

utanho ★★★★★
()
Закрыто добавление комментариев для недавно зарегистрированных пользователей (со score < 50)