Ускоряет ли компиляция программ из исходного кода мою операционную систему?

15

Где-то я читал, что должен удалить свои стандартные программы в Ubuntu, а затем собрать их из исходного кода, чтобы ускорить мою систему. Будет ли это работать?

vrcmr
источник
Мне было бы интересно узнать, откуда вы взяли этот кусок информации.
Попей

Ответы:

12

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

mdeslaur
источник
9

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

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

Я скомпилировал готовые системы с нуля, используя linux с нуля и gentoo, и обнаружил, что я почувствовал улучшения производительности только на действительно низком энергопотреблении и специальном оборудовании, таком как Playstation 2 и процессор Atom 1 ГГц на плате mini-ITX. Имейте в виду, что я должен был сделать это в этих системах, так как обычные флаги компиляции не будут работать по умолчанию.

Нил Тродден
источник
8

Ответ - да.

Компилируя операционную систему только для вашего ПК, удаляя все ненужные модули, компилируя для вашей архитектуры и оптимизируя для вашего оборудования и используя новейший компилятор, вы можете получить повышение производительности на 1-2%.

Со временем было доказано, что такой дистрибутив, как Gentoo, предлагает незначительное улучшение производительности, однако недостатком в действительности является то, что оно того не стоит. (Не поймите меня неправильно, Gentoo - отличный дистрибутив, только не массовый)

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

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

Фил Ханнент
источник
5

это не стоит усилий. Если вы хотите, вы можете попробовать Gentoo Linux, нет предварительно скомпилированных пакетов (ну, некоторые из них), и менеджер пакетов с именем portageкомпилирует программное обеспечение для вашего ПК. Но вы, вероятно, не увидите разницу

Pawełkowy
источник
1

нет, если вы не скомпилируете конкретную опцию, которая помогает или компилирует множество опций ... пример tcmalloc для ree или удаление тонны кодеков из ffmpeg ... просто говорю - это зависит

RobotHumans
источник