15

Оптимизация Linux-based дистрибутива

Привет всем, первоначально, я хотел вести именно подобный блог, а не делать обзоры на диструбивы, что как оказалось вызывает больше срачей, чем толку. Если кто-то спросит, зачем нужен этот пост, то я могу смело ответить, чем это хуже, чем все посты о "оптимизации" windows, путем отключения сервисов и очистки реестра.
И так, начнем.
Первым делом, Linux, как и Windows можно оптимизировать путем отключения не нужных сервисовдрайверов и тд. тп.
Сделать это можно так команда вашего демона автозапуска (systemctl для systemd и rc-update для openrc) команда для удаления из автозапуска и отключения данного сервиса имя сервиса
К примеру > rc-update rm sshd && service sshd stop
Идем дальше.
Такой же процесс можно провести и с ядром.
Не нужные вам модульные драйвера можно поместить в /etc/modprobe.d/blacklist-циферка
и отключить во время работы системы через команду rmmode имя драйвера
Так же, очень полезно будет пересобрать ядро, убрав из него все не нужные вам драйвера, выбрать более подходящую микроархитектуру и собрать его с определенными флагами для оптимизации.
Самыми оптимальными флагами для оптимизации ядра я считаю:
> CFLAGS= -march=native -mtune=native -O3 -ffast-math -flto -funroll-loops -mfpmath=sse
Аналогично для СXXFLAGS.
Так же, советую использовать последнюю версию компилятора, к примеру для GCC самой новой версией является 4.9.2.
Теперь объясню, что каждый из этих флагов делает.
> march mtune
Флаги, предназначенные, для использования заранее заготовленного набора флагов.
Узнать содержимое этого профиля можно с помощью команды > gcc -c -Q -march=native --help=target
Не всегда заготовленный для вашего процессора профиль является самым лучшим, к примеру в профиле Core2 не включено использование sse1-3, mmx и ssse3, которые значительно повышают производительность.
Включить их можно с помощью -mтип_оптимизации версия оптимизации
Например > -mmmx -msse2 -msse -msse3 -mssse3 -mavx -msse -msse4.1 -msse4.2
Так же можно поиграться с -masm, но далеко не для всех процессоров изменение стандартного assambler-a повышает производительность.
> -O3
Этот флаг включает набор флагов Optimization level 3, который является не совсем стабильным, но адекватно работает в большей части приложений, проблемы возникали только с grub2.
Внутри него целая куча флагов, которые описаны на официальной вики gcc.
> -ffast-math
Флаг из -Ofast (ака -O4), единственный флаг из крайне не стабильного Ofast, который не вызывает сегментационную ошибку, позволяет ускорить все математические операции в разы.
> -flto
Межмодульная оптимизация, позволяет оптимизировать скорость работы программы на определенных моментах кода.
> -funroll-loops
Развертывание циклов, которое позволяет оптимизировать скорость выполнения определенных циклов, если хотите разворачивать все циклы используйте > -funroll-all-loops
> -mfpmath=sse
Устанавливает основным профилем, для математических операций, набор команд sse, вместо стандартного набора команд.
Значительно ускоряет все математические операции.

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

В следующий раз расскажу о ускорении загрузки системы.

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества