7 ноября 2013 в 22:17

Стоит ли ставить Gentoo ради ускорения?

Возможно из вас кто-то когда-то слышал: «Планирую поставить себе Gentoo, он будет лучше использовать возможности моего процессора и будет выжимать из него максимум». Чтож, давайте разберёмся…



Какие вообще бывают оптимизации под процессор

В основном под этим подразумевают использование дополнительных наборов инструкций типа: MMX, SSE, AES и AVX при компиляции приложений. Однако, если копнуть глубоко, существуют и другие оптимизации и не только для приложений.
Я выделил следующие группы оптимизаций:
  • Оптимизации кода
    • Оптимизации кода при компиляции под дополнительные наборы инструкций x86: MMX, SSE, AES, ATA, AVX и др.
    • Оптимизации кода при его статическом анализе во время компиляции: разворачивание хвостовых рекурсий, убирание неиспользуемых участков кода, игнорирование бессмысленных условий и др.
    • Оптимизации для лучшего попадания в кеш процессора.
  • Оптимизации кода на уровне ядра: криптографических методы из Cryptographic API.


Оптимизации под дополнительные наборы инструкций лучше всего освещены на странице: Intel 386 and AMD x86-64 GCC Options. Начиная с Pentium MMX нам стал доступен MMX, потом AMD сделала 3DNow!, потом в Pentium III появилось SSE, и пошло поехало. Intel Haswell, который порадовал нас в этом году, поддерживается: MOVBE, MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AES, PCLMUL, FSGSBASE, RDRND, FMA, BMI, BMI2 и F16C.
Работа с вещественными числами (FPU) тоже косвенно относится к дополнительным наборам инструкций, ибо компилятор для этого может использовать SSE. Это быстрее x87 инструкций и не блокирует MMX. Ешё немного об этом будет ниже.

Следует отметить ещё одну важную особенность. Когда вслух упоминаются аббревиатуры SSE, MMX и AES, то очень часто у людей, знакомых с этими понятиями, всплывает в голове картинка, повествующая о нелёгкой жизни Си-программистов, которые ассемблерными вставками «пилят» поддержку этих инструкций в своём софте. А на самом деле существует аж 3 способа использования этих наборов инструкций: автоматически компилятором при статическом анализе кода, вручную с помощью специальных функций компилятора и вручную ассемблерными вставками (например: How to optimize code for MMX processors). В каких именно случаях GCC автоматически использует наборы инструкций, если они разрешены, — не понятно, но в руководстве четко сказано, что такие случаи есть (будем надеяться в комментариях напишут).

Оптимизации кода при статическом анализе лучше всего освещены на странице Options That Control Optimization. Возможностей очень много, но дабы не запутаться, они сгруппированы в мета флаги: O0, O1, O2, O3, Ofast. Больше информации по этим флагам можно найти ниже в прилинкованных статьях.

Оптимизации для лучшего попадания в кеш процессора. Быстро объяснить не получится, поэтому я отсылаю читателя в другую статью: Пузырьки, кэши и предсказатели переходов. Я лишь скажу, что для анализа мест, которые можно оптимизировать программисты могут использовать Intel VTune Performance Analyzer и AMD CodeAnalyst. И, вроде как, ICC Intel C++ compiler умеет делать такие оптимизации в некоторых случаях автоматически, а как дела с этим у GCC сегодня, надеюсь знающие люди дополнят в комментариях.

Оптимизации кода на уровне ядра. Позволяют ускорять функции в Cryptographic API Framework, такие как шифрование AES, Twofish и другие, используя дополнительные наборы инструкций, такие как: SSE, AVX, AES. Эти функции могут использоваться в других модулях ядра, а также вызываться снаружи из приложений.

С теорией разобрались, перейдём к тому, как это используется.

Если у вас Ubuntu

Предположим вы сидите на Ubuntu. В зависимости от разрядности операционной системы у вас на выбор пакеты с суффиксом i386 или amd64 (пример). i386 вовсе не означает, что пакет будет работать на любом процессоре, начиная от 386, он просто обозначает, что целевое назначение пакета — 32-битная платформа x86. В свою очередь amd64 означает поддержку 64-битной платформы x86-64. Мы можем это легко проверить, если наберём в консоли:
gcc -dumpmachine

На 32-битной Ubuntu 12.04 LTS Server мы увидим i686-linux-gnu, а на 64-битной — мы должны увидеть x86_64-linux-gnu.
Предположим у вас 32-битный Pentium 4, вам доступны MMX, SSE и SSE2, но они не использовались при генерации пакетов, так как эти же пакеты должны работать на Intel Celeron, где есть только MMX, и возможно даже на Pentium Pro, где нет даже MMX.
Дополнительные наборы инструкций будут задействованы только в пакетах, которые сами на лету определяют процессор и включают более быстрый алгоритм для данного процессора. Хорошая новость состоит в том, что это происходит почти во всех мультимедиа пакетах.
Также не ясно с какими оптимизациями кода собиралась 32-битная Ubuntu. Если посмотреть вывод GCC, то есть немного из -O1, и из -O2 и из -O3. Если пакеты для Ubuntu под конкретную версию принято собрать на самой системе с опциями компиляции по умолчанию, то видимо они собираются не самым оптимальным (из рациональных) способом.
Ну и наконец, функции в kernel Cryptographic API используются не оптимизированные. Оптимизированные функции под дополнительные наборы инструкций присутствуют в системе только в виде модулей, и только для i586 и AES (для VIA Nano), но не подгружены по умолчанию. Также не понятно, что из 586 можно использовать для оптимизаций.

В Ubuntu 12.04 64-bit дела гораздо лучше. Во-первых: gcc по умолчанию для 64-битных систем использует расширения: MMX, SSE, SSE2, поэтому код может быть несколько оптимизирован. Во-вторых для x86-64 по умолчанию -mfpmath=sse, что ускоряет арифметику для вещественных чисел.
Оптимизированные функции kernel Cryptographic API под дополнительные наборы инструкций присутствуют в системе в модулях, но не подгружены по умолчанию. По крайней мере их можно включить.
Ну и наконец, gcc собирает пакеты с тем же странным набором оптимизаций, что и для Ubuntu 32-битной.

Если у вас Gentoo

То скорее всего вы читали эту страницу из руководства. А значит вы выставили себе -O2 и -march=native (или правильный процессор). Но скорее всего вы во-первых: не заходили в Cryptographic API при настройке ядра и не ускорили себе некоторые инструкции, а как минимум стоит ускорить AES. Во-вторых: вы скорее всего не выставили USE-флаги для дополнительных инструкций процессора из тех, что вам доступны: 3dnow, mmx, sse, sse2, sse3. Или выставили не все из них. А это значит, что для приложений намеренно выносящих активацию оптимизаций в USE-флаги, вы остались без дополнительного ускорения.

Помимо глобальных флагов, существуют также локальные флаги, которые задействуют дополнительные инструкции для некоторых приложений. Такие как: 3dnowext, ssse3, sse4, sse4_1, avx, avx128fma, avx256 и aes-ni. Всё что у вас поддерживается лучше тоже выставить.


Современный stage3 под amd64 по умолчанию выставляет: bindist, mmx, sse, sse2. К несчастью bindist отключает дополнительные инструкции в некоторых пакетах для их переносимости. Если вам нужен bindist, используйте дополнительно cpudetection, чтобы нивелировать недостатки bindist флага в некоторых приложениях.


В каких же пакетах Gentoo можно получить прирост?

app-arch/libzpaq
app-emulation/bochs
media-libs/freeverb3 (audio)
media-libs/libpostproc (video)
media-libs/libvpx (video VP8)
media-plugins/vdr-softdevice (video)
media-sound/mpg123
media-video/ffmpeg
media-video/libav
media-video/mplayer
media-video/mplayer2
media-video/vlc
net-libs/cyassl
net-misc/bfgminer (bitcoin)
sci-biology/raxml
sci-libs/fftw
sci-chemistry/gromacs
sys-fs/loop-aes
x11-libs/pixman

Дополнительно флаг orc, который и так выставлен по умолчанию, помогает задействовать дополнительные инструкции процессора в:
media-libs/gstreamer (audio+video)

Дополнительно флаг cpudetection, который не выставлен по умолчанию, помогает задействовать дополнительные инструкции процессора на лету в:
media-sound/jack-audio-connection-kit
media-video/ffmpeg
media-video/libav
media-video/mplayer
media-video/mplayer2
sci-libs/mpir

Выводы

  • В 32-битных системах наибольший прирост от Gentoo можно получить на процессорах последних моделей.
  • В 64-битных системах прирост от Gentoo можно получить только за счёт использования более новых версий компилятора и оптимизации -O2.
  • Даже Gentoo, даже после чтения официальной документации не мешает поднастроить.
  • Не Gentoo тоже можно ускорить.


Дополнительный материал



Материал по ICC



Добавочка: Пользователь kekekeks поделился рецептом как можно пересобрать некоторые пакеты для Ubuntu с оптимизацией.
Андрей Нехайчик @gnomeby
карма
43,2
рейтинг 0,0
Похожие публикации
Самое читаемое Администрирование

Комментарии (127)

  • +40
    А где бенчмарки?
    • +2
      Вот один: http://habrahabr.ru/post/161629/. Других пока нет. Вообще бенчмарки для этой темы — отдельная исследовательская работа.
      • +1
        в генту можно часть системы собирать Intel Compiler
        что определенные пакеты можно собрать не GCC ICC Wiki

    • 0
      Вот пожалуйста Benchmarks Of The Gentoo-Based Calculate Linux Desktop

      от августа 2010 года.

      Чаше всего Калька демонстрирут небольшой прирост, и скорее всего это связано просто с более новой версией gcc, учтите также что calсulate компилируется просто для сферического в ваккуме i686 с оптимизацией -O2 без всяких sse оптимизаций и доп. USE флагов.
  • 0
    А какие пакеты ускоряются, если говорить о серверном использовании gentoo?
    Есть ли такая же шикарная разница gentoo vs debian/ubuntu?
    • +1
      Все пакеты, которые точно ускоряются перечислены в статье. Остальное неизвестно. Зато точно известно, что можно поднастроить.
  • +11
    Попкорн готов, жду холиварчика плавно перетекающего в срачик.
    • +3
      Я вот жду дельных комментариев от знатоков gcc. Да и тон статьи нейтральный, так что врядли.
      • +2
        Холиварчик и срачик возникают вне зависимости от тона статьи :)
  • 0
    Одно время использовал Gentoo, скомпилированную с -O4 и кучей каких-то нагугленных флагов для оптимизации. Вроде быстрее работало, но, возможно, это плацебо
    • +6
      -ON, где N>3, равносильно -O3.
    • +1
      С gentoo был опыт по изврату с запиливанием ядра 2.4 и ломанием стандартных зависимостей до рабочего состояния, не впечатлило, честно говоря, но научился ядра собирать.
      А вот LFS открыло глаза на мир дистрибутивостроения, подбор пакетов и поиск зависимостей между версиями. Это был лучший опыт для понимания устройства дистрибутива, процесса разработки проектов, допиливания до совместимости. Тогда удалось очень эффективную систему для домашнего сервера собрать, правда ценой двух месяцев, трёх заходов с чистого листа и даже с полу-ручным обновлением через самосборный deb-репозиторий самых последних версий. Очень долго пользовался, пока не отпала необходимость в подобной конфигурации.
      После этого стало очевидно, что любая проблема решается и стали понятны пути решения проблем. Оценил своё время, знания и сейчас прекрасно пользуюсь debian/ubuntu на всём подряд.
      Да и концепцию, что любой дистрибутив превращается напильником и головой в любой другой никто не отменил))
  • 0
    А нет готового скрипта, автоматически собирающий все пакеты с максимальным ускорением для текущего cpu?
    • +1
      В Gentoo примерно так и происходит, надо только правило настройки прописать.
      • 0
        Хотя все же встречаются избранные ебилды, которые все эти настройки игнорируют и собирают со своими опциями. Если не ошибаюсь, chromium так делал.
  • +24
    > Стоит ли ставить Gentoo ради ускорения?
    Нет. Заявляю это пользовавшись gentoo больше 6 лет, собранную со всякими unsafe оптимизациями gcc, хитрым hash-style и частью пакетов, скомпилированных интеловским icc. Не стоит оно того абсолютно, выигрыш иллюзорен.
    • +2
      Как минимум экономию памяти можно получить: http://habrahabr.ru/post/161629/
    • +1
      Иллюзорен это насколько? Я хотел увидеть например генту с оптимизациями как в убунте, и с полными оптимизациями.
      Интересует:
      1. Время запуска с настроенной системой, где есть 10-30 различных демонов и Xorg. Графики bootcharts
      2. Время запуска различного софта (запуск всякиз OpenSource игр, GIMP, офисного пакета)
      И тому подобное, а также не просто время запуска, а затраты на память, сколько кэшируется, сколько занято каждым процессом.
      Ну и для ленивых неплохо в конце статьи дать графики самых лучших вариантов при оптимизации, и самых худших (когда стало еще хуже чем было)
      Например в той статье куча текста, а графика того, что вы итоге выходит нет. Однако из статьи видны какие то иллюзорные 50% памяти. Почему бы не сделать память до, после и точный график с различными оптимизациями? Я бы сам сделал, но к сожалению не работаю с Gentoo, думаю мои оптимизации будут неполными, и не дадут полной картины. А вот вы могли бы сделать достаточно обширную статью.
      • +2
        В целом, никого не интересует сколько секунд будет запускаться ваш личный десктоп, вопрос стоит, что на этом конкретном железе, не увеличивая память, можно будет обслуживать не 1000 запросов, а 1300.
    • +1
      Поддерживаю, особо не стоит, стоит использовать именно в конкретных задачах, связка Ядро+софт или просто принцип удобства. Берешь только то что нужно. Для большинства эти оптимизации — не нужны. Мне она нравится из-за своего принципа, удобства конфигурации (включил что надо, изменил что надо) без всяких бубнов и танцев как это делается в других пакетных дистрибутивах, если тебе надо что-то кастомное, или что-то самое последнее. Не нравится как серверная ОС. Debian на продакшене как то приятнее в обслуживании, обновлении, когда у тебя не 1 машина а 100. Но может быть я и не прав, и не пробовал автоматизировать обновления на gentoo. Но для отдельных машин удобства не видно.
      з.ы. рабочая ОС calculate-linux.
      • +1
        Если у вас 100 машин, то вы собираете пакет бинарный, а потом с остальных машин его просто ставите.
  • +14
    Ждем ебилдов
  • 0
    А есть еще PDO. Не знаю, конечно, как на x86 и вообще быстрых компьютерах, но на embedded-системах ускорение колоссальное! Скажем, до 50%
    • +2
      Мы Hotspot VM компиляли Intel C++ Compiler с PGO и IPO. Процесс сборки в итоге занял несколько дней и выжирал по 140 гигабайт оперативки (на сервере было всего 32, так что был жестокий своп). Но нам таки удалось снизить расход CPU сервером майнкрафта на 20-30%, а по ощущениям оно даже почти перестало лагать.
  • +4
    > Стоит ли ставить Gentoo ради ускорения?

    Не стоит
    • +5
      Точно. Стоит ставить Gentoo если задолбали глюки с двумя мониторами, не отключающимися динамиками на ноутбуке, не работающих наушниках, через раз работающим микрофоном. И ещё если вы не хотите каждые пол года перебирать ваши дополнительные репозитории и ждать появления в них свежих версий ваших «любимых» приложений, а то и того хуже, искать новые, где более или менее свежая версия.
      • 0
        Я ушел с линукса и ушли проблемы с мониторами, звуком, суспендом, хибернэйтом, времени работы на батерее и вообще перестал думать о вещах который в 21 веке должны работать из коробки.
        • +9
          А я поставил себе динукс и ушли проблемы с мониторами, звуком, суспендом, хибернэйтом, времени работы на батерее и вообще перестал думать о вещах который в 21 веке должны работать из коробки.
          • –2
            Типа все работает, ага, ровно до следующего обновления когда что-то сломают. Я лет 8 на линуксе сидел, потом просто все надоело и ушел на мак как и большая часть моих знакомых линуксойдов. Хотя некоторые остались на линуксе, но у них пожалуй необратимые именения мозга произошли. Так и сидят, подключаются к wifi через wpa_supplicant, чинят неработающий микрофон перекомпиляцией ядра, выключают ноутбук вместо суспенда, и говорят, что полтора часа работы на батарее достаточно для всех.
            • +1
              Я восемь лет назад не юзал линукс, но много слышал таких же историй.
              Может быть, ситуация изменилась. Может быть, мне с железом повезло. Может, еще что.
              • –2
                сейчас я наверное немилости на себя наведу. Но если интересно вот мое имхо. Я когда ставил red hat 6.2 много лет назад- там 2-3 дня уходило просто чтобы русский язык заработал. Ну то по молодости конечно по зелености, но часы это точно занимало. Было тогда интересно, все же хардкор и learning curve. Какое то время пользовался линуксом как единственной системой за что мои друзья по общаге меня немного ненавидели. Квака работала, даже контра версии кажется еще меньше 1, даже кажется чуть быстрее. Потом я это дело оставил лет на 10, просто потмоу что интереса больше не было, разобрался относительно неплохо, а без него ковыряться по пол дня с каждой мелочью было просто бессмысленно. Недавно вот вынужден был поработать с убунтой. Очень был приятно удивлен как все стало красиво и вполне себе работоспособно. Но в общем пока ничего не изменилось. Вот пример — система сходу видит USB гарнитуру, что в редхате 8 было чуть менее чем 100 нереально, но как она не работала 10 лет назад так она почему то не работает и сейчас. Есть наверное какая то хитрая командочка которая ее включит, но в центре управления ее почему то добавить ен посчитали нужным. Молодость приятно вспомнить, не больше 3х минут сейчас я просто на это тратить не буду. А с учетом того что операционки становятся все более бесплатными…
              • 0
                2-да года назад ставил убунту на свой новый комп. Да почти все заработало. Кроме сетевой карточки — не те дрова установились. Пакеты терялись инет работал очень медленно. Начал гуглить — да решил проблему. Но факт остается фактом — Только трастовое железо аля мак — или гугл + мозги или знакомый линуксоид. Глюкис.
            • +2
              Вы мягко говоря преувеличаете, грубо говоря врете. Микрофон никогда от ядра не зависел, если вообще звук есть, а он есть в большинстве бинарных дистров из коробки. wpa_supplicant опять же везде завернут во всякие user-friendly networkmanager, suspend… работает на моих обоих ноутах. А про время работы один мой знакомый не разбирающийся глубоко в компах юзает минт с семеркой в дуалбуте, потому что на минте у него ноут дольше тянет.

              Так что проверьте свои мозги на необратимые изменения — если у Вас не получилось что-то, это не значит, что это что-то плохо.

              И да, поведайте как мне, пожалуйста, на каком линуксе вы сидели 8 лет? С чего начинали? Название и версия?
              • +1
                Я не знаю, у меня братюня при мне что-то делал со своим самосборным ядром на дэбиане, так как у него перестал работать микрофон, то-ли джек там был для гарнитуры и что-то поменялось то-ли еще чего. У меня то звук и networkmanager всегда работал, я просто к примеру, что есть такие вот упоротые линуксойды. Лично у меня проблемы частенько были с видео на разных чипах, с суспендом (хотя в последнее время не так часто), с просто хреновым софтом, со скайпом который мог вешать весь компьютер (я уже ожидаю комменты в духе нефиг юзать проприетарщину) к хренам и с энергопотреблением. Для последнего мне приходилось вкорячивать какую-то пачку опций для интеловского видео-драйвера чтобы мой lenovo x220 работал 8 часов как в винде, насколько знаю потом эту опцию включили по умолчанию.

                А еще меня забавляет как ты предлагаешь проверить мне мозги, обращаясь на Вы (с большой буквы!), моноколь не вырони.

                Начинал со слаквари (кажется 10), недолго посидев на этом доисторическом говне перешел на генту, на которой в принципе было прикольно в виду подросткового возраста и поиска перфекционизма не там где надо, потом была freebsd (кажется с 5.4), которую я нежно любил и даже контрибутил в порты но пришлось слезть, ибо на ноутбуке это неюзабельно да и порты это прошлый век. Дале недолго был арч, который в принципе нрависля но на то время был хренового качества (говорят позже там стало норм), потом долго убунта до кажется 9.04 или 9.10, потом там каноникал все переворотила и стало не возможно пользоваться. Ну и последним дистрибутивом была федора, где все было свеженько и ванильно но постоянно разваливалось, ибо федора. В каждом дистрибутиве, в каждый период времени что-то ломалось или становилось хуже, ращве что в какой-то одной версии убунты было действительно все круто. Я каждый раз осиливал чинить все это, но честное слово надоедает. И в какой-то момент мой x220 в очередной раз завис на пустом месте и психонув, я перешел на мак, где все работает, работает на батарейке долго, все просто и обновления ничего не ломают. И да, под рукой все тот же любимый unix.

                Были и другие факторы, например нужен был профессиональный софт *не* для программиста, например с музыкальным софтом под linux все плохо и всякие lmms использовать тяжело в виду плохого дизайна, недостатка фич и общей сырости.

                Хотя порой скучаю по прозрачности разработки линуксовой экосистемы, я например любил следить за развитием gnome. Но с другой стороны надоело постоянно ждать, что вот сейчас вот все запилят, все сделают, это поправят, эту фичу добавят и тд. Последние мои года под линуксом как раз выпали на переделывание десктопов и все постоянно ломали. Хотя сейчас я смотрю на скриншоты последей версии Gnome и глаз радуется.

                Ну как-то так.
            • +1
              >Так и сидят, подключаются к wifi через wpa_supplicant, чинят неработающий микрофон перекомпиляцией ядра, выключают ноутбук вместо суспенда, и говорят, что полтора часа работы на батарее достаточно для всех.

              Да ладно вам краски сгущать. Я сам тоже на мак пересел, но в основном из-за того, что многие нужные мне тулзы были только под вин и под мак, а винду по своей воле я не трогаю вот уже скоро 10 лет как, поэтому выбор был очевиден (ну и плюс МБП — реально классная железка :))

              Однако на ноуте жены прекрасно себя чувствует Минт, и она понятия не имеет, что такое wpa_supplicant, и микрофон у нее работает, и саспенд тоже. Батарея, правда, держит всего пару часов, но лэптопу, на минуточку, уже 5 лет, а купить новую батарею я все никак не сподоблюсь, т.к. жене оно просто без надобности — ноут очень редко отключается от сети.
          • +1
            Кстати живой пример — у меня в винде на официальных драйверах винтилятор в ноутбуке быстрее 60% не крутится. На винде 7 крутился, на 8 и 8.1 нет. Хотя дрова уже под них. На линуксе все сами крутится как надо. Как итог в винде при нагрузке понижается производительность. В линуксе все в 2-3 раза быстрее работает.
          • 0
            зря вы так, у меня ноут — баг в хибернейте после спящего кулер 100% оборотов дает, наполовину лечится только спец скриптом. вайфай только через ндисвраппер, десктоп — у 5.1 звука перепутаны каналы(как у встроенной так и у дискретной звуковух), тривиального пути это исправить я не нашел, убунта 13.10 — не работает нормально переключатель раскладки…
            • 0
              Только через ndiswrapper? Где вы это взяли?

              Я за всю свою линуксовую жизнь (13 лет уже как) видел всего одну модель карточки, которая не работает нативно.
              • 0
                Ну откровенно говоря обе купленные мною USB-сетевухи для обеспечения 802.11n в ноуте (в нем только g изначально), хоть и не ndiswrapper, но потребовали для работы собрать внешние модули из linux-wireless.
                • 0
                  Внешние модули вероятнее всего заключаются в firmware. Так это и в виндовских драйверах есть. Для b43 оно обычно из них и извлекается.

                  Ставил я и iwl, и ещё какую-то штуку от netgear (не помню, чей чип) — да, фирмварь нужна, ок. Ставил и usb-«сетевуху», а на самом деле модем zyxel p-660ru, который с usb-портом и выглядит для компа как rndis-сетевуха — ну так rndis — это такой ядерный драйвер.

                  Собственно, я натыкался на какую-то pcmcia 802.11b сетевуху, которая да, требовала ndiswrapper. Кого такая сейчас может заинтересовать? :)
                  • 0
                    Внешние модули вероятнее всего заключаются в firmware. Так это и в виндовских драйверах есть. Для b43 оно обычно из них и извлекается.


                    Не только фирмваре. Все, что относится к модулю ядра. Вот нашел тему, на основании которой действовал.
      • +1
        %s:/Gentoo/Arch
        По сравнению с debian ускорение заметно, поставил на рабочем компе, вышеперечисленные проблемы не наблюдаются)
        P.S. не срача ради, просто не одной джентой…
        • +1
          ччооорт, :%s, ну вы поняли
        • 0
          Тоже пробовал ставить. Но всё же опыт общения с FreeBSD дал о себе знать и я выбрал Gentoo :-) Хотя Arch тоже интересная система.
    • 0
      Стоит.

      P.S.: реальный опыт, а не лишь бы ляпнуть. Когда-то давно (когда было немного меньше лени и немножечко больше свободного времени) был шокирован скоростью запуска Firefox (было не медленно, а очень, очень резво). Ни от убунту, ни от Windows на том же самом железе вау-эффекта получить не удавалось.
      • +3
        Я могу сказать, что ускорение полученное от всяких flto,icc и прочих извратов не сопоставимо с тем, которое получается от смены HDD на SSD. Например. А ПО, которое может получить солидный прирост в скорости из-за SSE/AVX, и так собирают с ним. Glibc тому пример.

        У Gentoo совсем другие преимущества
  • +6
    Вы забыли такой аспект оптимизации, как выпиливание всего ненужного из ядра и приложений (типа поддержки всяких ненужных именно вам библиотек), благо USE-флаги позволяют комплектацию почти каждого пакета неплохо настраивать.
    • +2
      Все это выпиливание мелочей ничего практичного не дает кроме удовольствия от перфекционизма, типа вот я собрал идеальную систему под себя, подумаешь, что половину придется пересобирать когда внезапно оказывается, что выпилил что-то нужное. В принципе, в этом есть какая-то прелесть, это как собрать кастомный мотоцикл, но нужно знать меру.
      • +1
        На дэбе сталкивался с необходимостью пересобирать пакет т.к. какой-то флаг не включен в базовую поставку. В генте это проще (пусть и за счет отсутствия базовой поставки).
      • +2
        Да неужели? Отключить поддержку X из пакета, который никогда не будет использовать в графической оболочке — о да, только перфекционизм. Расскажите мне еще об этом.

        И насчет пересборки половины — тоже смешно.

        У меня на десктопе:
        wc -l /var/lib/portage/world
        274 /var/lib/portage/world

        euse -I ipv6 | wc -l
        69 (учитывая служебный строки)

        euse -I X | wc -l
        83

        Даже трети нету, и это одни из самых основных флагов. Так что снова врете.
        • 0
          И что? Какой профит от этих цифр?
          • –3
            Профит в том, что очевидно доказывает, что Вы врете про «половину пересобирать», это раз. И раз сами не понимаете «какой профит» врете про Вашу квалификацию в линукс (как миниму в генту) — это два.
            • 0
              А если серьезно какой профит? Я в последний раз профит ощутил на древнем нетбуке на атоме.

              Хотя один несмоменный профит от генту есть — мозги прочищает и заставляет понимать как же все работает.
  • +2
    Я на си не пишу, но краем глаза видел, что GCC может в некоторых случаях юзать SSE при операциях с квадратными матрицами (тип vector вроде)
  • +1
    А ещё флаги можно так настроить, что будет даже медленнее работать. Вообще Гента удобна возможностью легко менять версии по. Остальное уже мелочи.
  • +1
    довольно давно держу в /etc/make.conf такую строчку:
    CFLAGS="-pipe -O3 -march=k8 -m128bit-long-double -m3dnow -m64 -mmmx -msse -msse2 -msse3 -msse4a -fomit-frame-pointer"
    В свое время озадачился узнать все наборы инструкций, что поддерживает процессор ноута и включить их.

    А вообще, основной прирост скорости работы с gentoo, по сравнению с ubuntu, заключается в том, что в gentoo нет той горы шлака, которую мэйнтейнеры бубунты запихали в коробку, и которую фиг отключишь так, чтобы не сломать систему.
    • +1
      А можно перечень той горы шлаков, которая идет из коробки в убунте и постоянно жрет ресурсы системы?
      • +2
        вот не перечислю с ходу, лет пять уже убунтой пользуюсь по пятнадцать минут каждой версией. Поставить, убедиться, что тормозит еще больше предыдущей, снести. Первое, что заметил в последний раз — донельзя тормозной юнити.

        Знаком с убунтой начиная с версии 8.10, и если тогда это была немного глючащая, но, в целом, не плохая система, почти не тормозящая на десятилетнем целероне, то сейчас это монстр, которому мало четырех ядер i5, при том, что функционально ничего не изменилось.
        • +3
          >лет пять уже убунтой пользуюсь по пятнадцать минут каждой версией. Поставить, убедиться, что тормозит еще больше предыдущей, снести.

          Т.е. вы за 15 минут легко определяете скорость в сравнении с дистрибутивом, которым пользовались пол года назад те же 15 минут? ;)

          А если серьезно, то единственное преимущество, которое я вижу перед другими дистрибами, это «раскрученность».
          Например выходит стим под линух, там поддержка убунты есть. Выходит хром браузер под линух, там поддержка убунты есть и т.д… Я больше чем уверен, все что будет выходить в дальнейшем, обязательно будет теститься под убунтой и при этом упаковано будет максимально удобно для пользователей.

          P.S. >то сейчас это монстр, которому мало четырех ядер i5
          Вы бы постеснялись делать такие громкие заявления на техническом-то ресурсе)
          Ну какие такие операции делает убунта, что ей мало такого проца?
          Пользуюсь убунтой с 8-й версии. Да, первые версии юнити были не очень, мягко говоря, но сейчас в этом плане с ним нет никаких проблем. Все летает на Core i5.
          • 0
            Как вы добились, чтобы всё летало?
            У меня i7-2670QM, 8гб рама, nvidia 630m, но два 24" монитора. Не летает. Работает сносно, но не быстро.
            У напарника i7-4700HQ, 8гб, nvidia 750m — то же самое, а это, можно сказать, самый мощный мобильный цп!
            На следующей неделе придет SSD — надеюсь увидеть солидное ускорение, но всё равно мне это кажется не нормальным, что на таком железе система подтормаживает, что приходится SSD докупать!
            • 0
              Соглашусь, даже windows 8 в сравнении с убунтой — самолет. Тоже остались неоднозначные чувства о этой системе. На работе пробовал ей пользоваться год… что-то все время не нравилось, снес поставил gentoo + xfce. Шрифты дефолтные там правда ничего.
              • +2
                windows 8 в сравнении с убунтой — самолет

                А что есть убунта в Вашем сравнении? Апельсин?
            • +4
              Отвечу вопросом на вопрос. А как вы добились, чтобы оно не летало?
              И что вообще означает ваше «Не летает»?
              Наутилус открывает папку не за 0.0005сек, а за 0.005сек? Что вообще в самой убунте может тормозить?
              Все приложения которые тормозят в ней, точно так же тормозят и в других системах.
              Глючить может, это да. От ошибок в ПО никуда не деться. Первые версии юнити та еще веселуха была. Но вот чтобы «не летало»… такого не могу понять.
              • 0
                Ну да, если иксы не загружать, то командная строка летает. А вот если запущено хотя бы 10 приложений (да-да, не всем хватает для работы 2-3 приложения), то тот же дефаултный переключатель задач (алт+таб) заметно тормозит. Линза открывается откровенно медленно. Я бы ничего не говорил по этому поводу, если бы это было не топовое железо. Мне кажется, что хотя бы 60 fps для анимаций можно было бы выжать на нем.
                К сожалению разговор не про 0.005 секунд, а про 0.5, а иногда и про 5!
                Глюки — это другое. Я именно про тормоза. Причем учитывая только встроенный софт.
                Я понимаю, что этим высказыванием вызываю ненависть убунту-фанов, но скорость работы убунту далека не то, что от идеала, а от приемлемой нормы.
                И не поймите меня не правильно. Я люблю свою убунту :) Только вот это не закрывает мне глаза на её минусы.
                • 0
                  Линза открывается откровенно медленно.


                  Так конечно медленно, и дело не в железе, а как линза устроена. Чтоб показать все документы, весь установленный софт, историю запуска, да еще сейчас в линзы прикрутили поиск интернетный во всяких амазонах — так оно конечно не может перелопатить несколько сотен мегов инфы за короткий срок! На каком угодно железе будет тормозить.
                  • 0
                    Всё так, но у меня в линзе оставлены только программы. Всё остальное убрано. А скорость не изменилась :)
                    Но, если быть честным, то основное количество тормозов интерфейса у меня по причине присутствия технологии optimus. Если запустить всё на дискретной карте, то интерфейс летает, но батарея держит меньше часа… Если на intel hd graphics, то всё подтормаживает, но держит 6 часов. Слабо верится, что intel хватает для 3д графики, но жалкий блур и прозрачность она нарисовать нормально не может.
          • +2
            Например выходит стим под линух, там поддержка убунты есть. Выходит хром браузер под линух, там поддержка убунты есть и т.д…

            Не поверите! В Gentoo тоже есть Steam и есть любая свежая альфа и бета хрома. У Gentoo отличное сообщество.
            • +1
              Подтверждаю — #gentoo на freenode — наверное, единственный линуксовый канал, где действительно можно получить помощь.
            • 0
              (Глядя на свой десктопный calculate-linux) Да, действительно не верю ;)
              Хром, это всего лишь пример. Не очень удачный, т.к. это популярное и к тому же ширпотребное ПО, и его по любому кто-то запилит под генту.
              Но в жизни не все так просто.
              А если это не самое распространенное ПО будет? А если это надо для конторы, а не домой?
              Ставить ПО собранное фиг знает кем, с неизвестной степенью кривизны, когда для убунты сборка пилится производителем?
              А как же поддержка? А что с драйверами, если это комплекс ПО + Железо? И т.д.
              Вот об этом я и говорю. Если будут выпускать что-то под линух, то обязательно будут пилить под убунту. Конкретно под туже генту никогда.
              Хотя конечно, это же линух, в этом его прелесть, всегда можно что-то придумать для запуска на других дистрибах))
              • 0
                А если это не самое распространенное ПО будет? А если это надо для конторы, а не домой?

                А как же поддержка? А что с драйверами, если это комплекс ПО + Железо? И т.д.

                Вы будете ускорять свой комп в конторе путём замены ОС? Думаю вы скорее будете выполнять требования для вашего железа и ПО.
                Ну а дома обычно используют широко распространённые продукты, которые любой желающий может адаптировать под любой дистрибутив.
              • 0
                В большинстве случаев ebuild редкого софта, которого нет в оф. портаже, находятся в layman репозитариях. Их собирают, либо из готовых пакетов (тот же google-chrome) или если есть исходники — пишут зависимый ebuild. Я например поддерживаю, EAP версии продуктов jetbrains. Или например mplayer с поддержкой аппаратным декодированием можно найти только в сторонних репозитариях. Ну и да, убунта популярна (используется гуглом) естественно будет большая поддержка, чем любой другой дистрибутив. Gentoo никогда не будет популярной, потому что это source base дистрибутив, людям надо быстро поставить, а не компилить софт. Поэтому и я лично на рабочей машине пользуюсь калькулятором, где базовая система уже за тебя скомпилена, и обновления для нее прилетают в бинарном виде, для всего остального удобные, настраиваемые ebuild.
                • 0
                  Я всей душой благодарен создателям кальки за возможность работать с Gentoo-like дистрибутивом на слабых машинах на работе, но все же, если железо позволяет лучше поставить чистую gentoo ибо стабильнее.
                  • +1
                    за возможность работать с Gentoo-like дистрибутивом на слабых машинах на работе


                    Инет на работе есть? Откройте для себя BINHOST.
                    • 0
                      Открыл. Закрыл. Дело в том что я не админ по професии, у меня просто была возможность самому выбирать рабочее окружение. И прок мне от бинхоста? Дома у меня собрано с одними флагами тут другие нужны, в интернете публичных бинхостов тоже не слишком много.
                      • 0
                        Если архитектура везде совместимая (например только интеловские процы или только amd), то собирать можно просто в chroot'е (для сборки 32битных приложений с чруте на amd64 есть команда linux32). Если не совместимая — есть виртуализация.
                        • 0
                          И вот скажите что мне проще, с учетом, что генту для меня это в первую очередь удобство, заморачиваться с указаными вами методами ради одной машины, или установить кальку? Да она менее стабильна. Например год назад они криво обновили свои calculate-utils и пришлось востанавливаться через chroot (к слову пофиксили, как потом оказалось, почти моментально. Я просто обновился не вовремя :))
                          • 0
                            Я просто предложил. Если открыли для себя эту возможность и Вам неудобно, ну значит так тому и быть. Основное правило opensource — свобода выбора.
                            • 0
                              Извиняюсь, если слишком резко ответил.
      • +2
        Я грешник, сейчас у меня стоит убунта вместо Gentoo (так получилось). Что я вижу: когда я запускаю xchat, то он включает все свои плагины, в т.ч. для написания скриптов на Perl, Python, и др. языках. Если бы я ставил его под Gentoo, я бы мог настраивать это и выключил бы всё, даже Python, потому что мне нафиг не нужно писать скрипты для IRC-клиента.

        С остальными пакетами — то же самое. Притом в великолепном mplayer часто не хватает чего-то нужного. Совершенно уверен, между прочим, что он собран без vdpau, потому что не всё железо его поддерживает.
        • +3
          Вот именно, главный плюс Gentoo — вовсе не производительность, а система сборки с USE-флагами. То же, что в других дистрибутивах приходится делать, используя совершенно нетипичные для них средства (а именно — сборку из исходников в бинарном дистрибутиве, ручную конфигурацию), в Gentoo получаешь из коробки, она сразу умеет и так, и сяк.
          Плюс чуть меньше — довольно удобная система инициализации (хотя лезут со своим systemd, мать его).
          Остальное — это уже религия. Кому что нравится.
          • 0
            Абсолютно верно. Вообще, то, что, вспоминая о Генте, обычно рассказывают о стремлении что-то там ускорить — мрачно-вредный миф. основная её плюшка — что доступно |СКВОЗНОЕ конфигурирование всей системы под желаемые ползователем параметры, а сверху еще уточнения для конкретный пакетов. Поставил в глобальные флаги "-gnome", если у меня его нет — и куча гномовских зависимостей прост не устанавливается. Поставил «ipv6» — и всё, что умеет, собирается с его поддержкой. И так далее, и тому подобное.

            Возможность задать свои флаги компиляции — это уже второстепенная фича. Хотя грешен, и GCC из последних взгромодил, и LTO настраивал для всего подряд… но, честно говоря, это в большинстве случаев просто гиковские игры. А вот глобальная конфигурация — серьезный плюс, как, впрочем, и в любой области.
        • 0
          Если резюмировать, то бинарный дистрибутив — это куча пакетов в полной комплектации «на всякий случай», собранная под самые устаревшие процессоры этой архитектуры.

          Под 286 не собирают только потому, что Торвальдс начинал с 386-го, да и писал он для 32-бит и защищёного режима.
          • +1
            Только один момент надо добавить — комплектация «на всякий случай» может быть весьма странной — например, какие-то возможности могут быть запросто наоборот — отключены, как как на какой-то доле систем вызывали проблемы. Или если есть угроза патентных претензий, что актуально для трех, кажется, стран, но одна из них — США… К примеру, в centos 6.4 до сих пор рендерер шрифтов без интерпретатора байткода TTF собран, Сейчас, правда, это прост атавизм — патенты уже истекли — но даже раньше много кто мог вполне легально эту технологию использовать.
            • +1
              Пример странной комлектации хотите? Из коробки в новом дебиане новый php — без json. Идиоты.
              • 0
                Оригиналы, что сказать.
  • 0
    Имхо данный вопрос надо немного по-другому считать: оценить, на сколько увеличится стоимость железа, которое мощнее текущего на пару процентов, оценить время на переход на генту (и решение некоторых проблем в дальнейшем), умножить время на стоимость своего часа и сравнить с разницей стоимости железа.
    • 0
      Для продакшна хороший подход, для человека не-айтишника — тоже. А если вы всё равно что-то делаете в линуксе — программист, сисадмин — не важно — то тут непонятно, как считать. Эти часы оборачиваются новыми знаниями и позволяются задуматься над теми лии иными архитектурными решениями, что для развития, IMHO, крайне полезно.
  • +1
    Интересен был бы эксперимент с компиляцией всего мира с AVX(2)-инструкциями для ускорения криптографии и мультимедии. Переходы между инструкциями SSE и AVX значительно замедляют программы с AVX-инструкциями. А если дистрибутив использует поголовно только SSE-библиотеки, то попытка самостоятельно скомпилировать отдельную программу с инструкциями AVX может даже замедлить программу.
  • +1
    Поддерживаю автора. Из практики админа имеющего в своём попечение одни слабые машины(от 2 пня, третьего пня и до core2 duo), разница в source base и binare существенная и причём, чем слабее машина, тем заметнее это на глаз и без всяких тестов. А существенную производительность(по моей статистике) дают(здесь если не учитывая числодробильного софта) оптимизацию по кэшу процессора, автоматической векторизации, развороту и шелушению циклов, совместное использование регистров математического сопроцессора c инструкциями sse, pdo.
    • +1
      Стоит добавить еще модель памяти x32, которую, насколько я понимаю, кроме генты нигде толком не поддерживают.
      • +2
        Не нужно.
        • 0
          Вы не с LOR, часом?

          А если всерьез — я мерял потребление памяи и производительность фарйофкса и (тогда еще живой) оперы для 32-х и 64-х бит. Для обоих результат был одинаковы — потребление памяти различалось в полтора раза, разница в бстродействии — в пределах погрешности.

          А X32 дает, с одной стороны, выгоды использвоания инструкций x86-64, с другой — память используется экономно (в современном софте указателей очень много — куча уровней indirection же кругом).

          При этом само ядро нормлальное 64х-битное, и при необходимости можно гонять и оыбчный 32х-битный или 64х-битный софт.

          В общем, плюсы вижу, минусы — нет.
  • 0
    Что значит скорее всего не выставлены? Выставлены конечно, все оптимизации по криптографии и процессору!
  • +9
    apt-get install apt-build
    dpkg-reconfigure apt-build #Тут ставим нужные опции make и оптимизации компилятора
    apt-build world
    apt-get update
    apt-get upgrade
    
    • 0
      И после каждого апдейта повторять заново?
      • 0
        apt-build install; #не все пакеты можно собрать из исходников.
    • 0
      Попробовал — не работает. Билдит но не ставит новые пакеты. К тому же билдит без процессорно-специфичных оптимизаций, которые я указал при конфигурации apt-build.
  • +20
    У меня от генты брат покрасноглазел!
  • +8
    Дженту ставят не ради ускорения, ее ставят ради мысли о том что теперь у вас все ускорено и оптимизировано. Ну и те кто любит смотреть как льется вода, горит огонь, идет процесс компиляции…
    • 0
      Миф это. На что там смотреть? Поставил компилироваться и занялся своими делами — на компьютере или в реальном мире. Или вообще спать пошел.
      • 0
        Почему миф? Это мой личный опыт, мне нравилось смотреть, когда у меня была джента.
        • 0
          А, ок. Это у меня нервное, видать. Просто обычно это предъявляется как претензия — мол, компилируется долго, или что гентушники толко и делают, что всё перекомпилируют. А на самом деле проблем с этим никаких, если хоть мало-мальски планируешь свою деятельность.
  • 0
    Да линукс — он и в африке линукс, не в скорости дело. Джента просто удобнее. А кому-то удобнее дебиан. А кому-то удобнее сусе. А кому-то арч. Что за бред про ускорение, автор, почему вы не ставили арч или там не шли по пути lfs?

    Хотя, KDE на убунте ощутимо нетороплив, по сравнению с ним же в дженте. Не знаю, чем это объяснить.
  • +1
    Думаю, преимущество сборки пакетов из исходников не в ускорении, а в отсутствии необходимости поддерживать бинарные версии большинства пакетов для разных архитектур.
  • +16
    Может и не в тему — но поначалу с Gentoo было тяжело.

    image
  • 0
    Давным давно я игрался со сборкой оптимизированного mencoder из комплекта mplayer — добился максимум 2% при конвертировании видео, примерно столько же получил от перехода на amd64.
    • 0
      В таких проектах, как правило, все оптимизации уже сделаны, часто есть проверка наборв инстркций на лету и тому подобное. Хорошо ускоряется обычно что-нибудь с «более современным» подходом к написанию — когда говорят «время программиста дороже». То есть на каком-нибудь файрфоксе или конквероре гораздо больше щансов заметить разницу.
  • 0
    А вообще наибольшее ускорение получается в архивации и кодировании мультимедиа.

    Мой бывший Athlon 64 2.1ГГц кодировал FLAC в MP3 быстрее Core i5 с бинарной сборкой энкодера.
  • +4
    Я из-за генты не могу уже лет 5 ноут поменять. У меня samsung r50, десятилетней давности. Хочу его все поменять, но не понимаю зачем. Все вполне прилично работает с добавленной до 1,5 гигов оперативой.

    Собираю ее для всего (вдс, дедики, медиацентр, пресловутый ноут, десктопы) на специально заточенной сборочной ферме (32 оперативы, шестиядерный i7), дальше установка через binhost. Естественно оптимизация под каждой конкретное железо.

    Так вот, субъективно мой древний ноут с гентой работает шустрее (включить, посерфить в firefox\chromium, поправить документ в libreoffice, посмотреть киношку <=720p (1080p не тянет)), чем убунта на некоторых современных ноутах.

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

    ЗЫ: Когда предложил жене перейти на линукс, она мало того, что согласилась, так еще и генту выбрала. Почти пять лет прошло. До сих пор думаю, что она от меня что-то скрывает оО.
    • +2
      А она сама себе генту собирает себе или вы ей?)
      • +2
        Зависит от масштабов. штатное обновление мира запустить она сама может, что то серьезное — меня зовет. Например, если видит, что ей не просто gimp\libreoffice предлагается собирать, а 150 пакетов kde.
  • НЛО прилетело и опубликовало эту надпись здесь
  • +3
    Дома и у родственников стоят gentoo и calculate в зависимости от мощности компа.
    И честно говоря я гентушником стал не из-за мифического прироста в скорости(который в общем-то не очень большой) и даже система флагов повлияла на выбор лишь косвенно. Главное что я нашел для себя в генте это удобство. Мне удобнее использовать emerge + eix чем apt или yam, мне проще узнать название пакета (например subversion) и сразу узнать с какими вообще опциями его можно собрать а не искать на форумах что для поддержки svn в java надо поставить пакет libsvn-javahl.deb вместо простого флага java о существовании которого узнать не составляет проблем. Мне больше нравится eselect а не alternatives. Мне понятнее (и если честно легче запомнилось) OpenRC с его rc-update, rc-status, rc-service.
    И еще у генты есть такая замечательная вещь как возможность с легкостью совмещать стабильное ядро системы с последними версиями определенных программ, без проблем при обновлении. В зависимости от моих желаний я могу получить как debian-stable так и систему построенную на ночных сборках.
    P.S. Ну и конечно цветной терминал из коробки :)
    • +3
      Мне понятнее (и если честно легче запомнилось) OpenRC с его rc-update, rc-status, rc-service.


      Вам тоже претит переход на systemd?
      • +3
        жопу этому поттерингу оторвать надо за него и за пульсаудио
        • 0
          Про systemd я согласен. А вот за pulseaudio наоборот. Некоторое время назад я осознанно на всех десктопах и медиацентре включил USE=pulseaudio глобально и доволен. За что его все так ругают?
          • 0
            За широко известное в узких кругах «my name is Lennart Poettering and I pronounce Linux as shshshshshs». PA очень сильно портит звук на некоторых устройствах, и поэтому его наоборот обычно приходится вырывать с корнями.
          • 0
            Лично я ругаю его за непрозрачность. Там много чего происходит внутри и если это то, что вам надо — вам повезло и всё будет работать замечательно. Но если что-то пошло не так — поди заставь его работать как хочешь. В отличие от голой альзы, в которой её страшными конфигами можно при необходимости накрутить что угодно.
          • 0
            Я немного увлекаюсь работой со звуком. Сделать что-то в моей дженте — лехко, потому, что пульсаудио нет. jackd запустил и работаешь с чем хочешь.

            В той же бубунте — что-то надо как-то прибить, чтоб отдало джеку звуковуху. А потом во всей системе, которая не завязана на джек, звук пропадает.
      • 0
        Не претит, скорее я не вижу смысла в этом. Он не ускорит мою работу (даже если допустить некоторое ускорение загрузки), а геморроя мне принесет точно.
        P.S. я лично пока никуда не перехожу.
  • 0
    Выигрыш по производительности от флагов компиляции самосборной системы минимален, исключая узкоспециализированные случаи типа аппаратного AES и шифрования разделов. Более того, в серьёзном продакшене тоже неудобно использовать -march=native — сервера немного разные и скомпилированный софт при переносе периодически не заводится.

    На мой вкус смысл в генте появляется только тогда, когда на другом дистрибутиве приходится самостоятельно собирать значительное количество софта — use флаги и ебилды крайне удобны для этого, как для поддержки заведомо работоспособного сочетания софта, так и для обновления системы и дальнейшей кастомизации по потребностям — в прочих распространённых дистрибутивах приходится именно что руками каждый раз пересобирать софт.

    На десктопе же есть арч, в котором пакеты сразу собираются на современные CPU, а настраивать систему под себя не сильно дольше, чем убунту.
    • 0
      Как пример не специализированного софта-dansguardian. Можно отыграть три секунды из десяти. В основном из-за того, что всё влезет в кэш процессора.
      Ну а пересборка даёт интерактивность и «живность», что для сервера и незачем, но для десктопа нужно.
  • +1
    Слабенькая статья.
    Ни отсылок к phoronix (например www.phoronix.com/scan.php?page=article&item=gcc_48_og&num=2 ), где целая куча бенчей gcc и флагов ( www.phoronix.com/scan.php?page=search&q=GCC ), ни отсылок к статье habrahabr.ru/post/161629/ с выводом «Можно заметить, что php сборка Gentoo потребляет на 10-20% меньше памяти, а в редких случаях экономия доходит до 50%. „
    Думал ожидать настоящий бенч php и mysql под gentoo/не-gento.
    • 0
      Вообще-то статью habrahabr.ru/post/161629/ тоже я написал и в комментариях она неоднократно упоминается.
      Тесты с phoronix нам сильно не помогают, они в основном о компиляторе. Нам гораздо важнее понять, что вообще может ускорится. И как это можно подкрутить. А затем уже подумать как составить минимальное количество максимально релевантных тестов.
      А это тема отдельного исследования и отдельной статьи.
      • 0
        Я это видел. Но одно дело статья, а другое дело комментарии. Одно дело упоминание чужого опыта, а другое дело собственноручные бенчмарки, сравнивающие скорость и потребление памяти на типовых сценариях/cms.
        Я не вижу смысла в этой статье вообще без всего этого. Эта статья habrahabr.ru/company/intel/blog/158939/ от Intel и то полезнее, хоть там и рассматривается сферический конь test.c в вакууме.
  • 0
    -промахнулся-

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.