{"id":3827,"url":"\/distributions\/3827\/click?bit=1&hash=a3421833d15d1c84d64094d7d2023b5ba4157196f84512612cd445af573903a5","title":"\u0414\u043b\u044f \u0442\u0435\u0445, \u043a\u0442\u043e \u043f\u0438\u0448\u0435\u0442 \u043d\u0430 Java \u0438 \u0445\u043e\u0447\u0435\u0442 \u0441\u043c\u0435\u043d\u0438\u0442\u044c \u0440\u0430\u0431\u043e\u0442\u0443","buttonText":"\u042d\u0442\u043e \u043f\u0440\u043e \u043c\u0435\u043d\u044f","imageUuid":"2b70606f-740c-5d85-8a71-8a33c5f66557","isPaidAndBannersEnabled":false}
Гайды
Павел Прилуцкий

Оптимизация ArchLinux для работы и игр в 2022 году

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

Внимание!

Гайд написан линуксоидом для линуксойдов и является помощником для продвинутых пользователей ArchLinux. Гайд не претендует на инструкцию для новичков или попытку что-то доказать. Возможно, пригодится для Steam Deck.

Прежде чем начать

Убедимся, что конфигурация пакетного менеджера Pacman настроена для получения доступа к 32-битным зависимостям.

Откроем консоль и введём команду:

sudo nano /etc/pacman.conf # Редактируем конфигурацию пакетного менеджера с использованием редактора nano

Убедитесь, что перед выделенными строчками отсутствует решётка и сохраните изменения (CTRL+X) Y.Теперь необходимо удостовериться в актуальности ключей ArchLinux во избежание проблем с установкой ПО.

sudo pacman-key --init # Инициализация sudo pacman-key --populate archlinux # Получить ключи sudo pacman-key --refresh-keys # Проверить новые и установленные sudo pacman -Sy # Обновить ключи для всей системы

Операция может занять продолжительное время.

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

Утилита Reflector отсортирует доступные зеркала по скорости.

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

sudo pacman -S reflector rsync curl # Установка reflector и его зависимостей sudo reflector --verbose --country 'Germany' -l 25 --sort rate --save /etc/pacman.d/mirrorlist sudo nano /etc/pacman.d/mirrorlist # Рекомендуем прописывать зеркала Яндекса

Если вы проживаете не на территории Европейской части РФ или в иной стране, то просто измените Germany на Russia или ваше государство. Можно также вручную отредактировать зеркала из списка на сайте ArchLinux (https://archlinux.org/mirrorlist/).

Выполним обновление и приминения всех изменений:

sudo pacman -Suy # Обновить зеркала и ключи sudo pacman -S base-devel git gvfs ccache grub-customizer # Установить зависимости для будущей оптимизации

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

Установка драйверов для видеокарты

В установке драйверов для Linux-систем нет ничего сложного, ибо главное — учитывать, что от свежести ядра и версии драйвера, будет зависеть получите ли вы чёрный экран смерти или нет (Шутка). В гайде мы применим драйвер версии DKMS, который сам пропишет нужные параметры и не позволит убить систему.

NVIDIA

sudo pacman -S nvidia-dkms nvidia-utils lib32-nvidia-utils nvidia-settings vulkan-icd-loader lib32-vulkan-icd-loader lib32-opencl-nvidia opencl-nvidia libxnvctrl sudo mkinitcpio -P # Обновляем образы ядра

Выполним перезагрузку PC после установки драйвера и сгенерируем предварительную конфигурацию Xorg.

sudo nvidia-xconfig # Сгенерируем дефолтный конфиг и выполним перезагрузку через команду reboot sudo nvidia-settings # Открыть панель Nvidia

В панели настроек выставляем наши значения как на скриншотах.

Повторим все изменения без прав sudo (это важно), но без сохранения в Save to X.

nvidia-settings # Открыть панель Nvidia

Поздравляю, вы успешно настроили драйвера Nvidia для ArchLinux, но из-за особенностей Nvidia под Linux можно применить и дополнительные твики для повышения производительности.

git clone https://aur.archlinux.org/nvidia-tweaks.git # Скачать исходный код cd nvidia-tweaks # Перейти в папку твиком makepkg -sric # Собрать и установить твик

Дадим понять системе, что у вас Nvidia и файловая система BTRFS (Пропускаем, если ничего этого нет).

sudo nano /etc/mkinitcpio.conf # Редактируем конфиг модулей.

MODULES=(nvidia nvidia_modeset nvidia_uvm nvidia_drm) # Модули для включения DRM (Сверхнизкий доступ к устройству) MODULES=(nvidia nvidia_modeset nvidia_uvm nvidia_drm crc32c libcrc32c zlib_deflate btrfs) # Если используете BTRFS для корневого раздела
sudo pacman -S intel-ucode iucode-tool # Установить микрокод Intel sudo pacman -S amd-ucode iucode-tool # Установить микрокод AMD sudo mkinitcpio -P # Пересобираем наши образы ядра sudo grub-mkconfig -o /boot/grub/grub.cfg # Обновить загрузчик или можно через grub-customizer

Nouveau (Только для старых видеокарт)

Для видеокарт ниже (GeForce 600) рекомендуется использовать свободную альтернативу драйвера NVIDIA — Nouveau.Nouveau это открытый драйвер, который имеет официальную поддержку со стороны сообщества для старых видеокарт и что отлично справляется с 2D ускорением.

sudo pacman -S mesa lib32-mesa xf86-video-nouveau vulkan-icd-loader lib32-vulkan-icd-loader

AMD

sudo pacman -S mesa lib32-mesa vulkan-radeon lib32-vulkan-radeon vulkan-icd-loader lib32-vulkan-icd-loader

INTEL

sudo pacman -S mesa lib32-mesa vulkan-intel lib32-vulkan-intel vulkan-icd-loader lib32-vulkan-icd-loader

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

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

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

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

sudo nano /etc/makepkg.conf # Редактируем настройки встроенного компилятора gcc.

CFLAGS="-march=native -mtune=native -O3 -pipe -fno-plt -fexceptions \ -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security \ -fstack-clash-protection -fcf-protection" CXXFLAGS="$CFLAGS -Wp,-D_GLIBCXX_ASSERTIONS" RUSTFLAGS="-C opt-level=3" MAKEFLAGS="-j$(nproc) -l$(nproc)" OPTIONS=(strip docs !libtool !staticlibs emptydirs zipman purge !debug lto)

Данные флаги компилятора выжимают максимум производительности при компиляции, но могут вызывать ошибки сборки в очень редких приложениях. Если такое случится, то отключите ‘lto’ в строке options, добавив символ восклицательного знака ("!lto").

Как выбрать нужное ПО

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

git clone https://aur.archlinux.org/ananicy.git # Скачивание исходников. cd ananicy # Переход в ananicy. makepkg -sric # Сборка и установка. sudo systemctl enable --now ananicy # Включаем службу.

Haveged — это демон, что следит на энтропией системы. Необходим для ускорения запуска системы при высоких показателях systemd-analyze blame (Больше 1 секунды).

sudo pacman -S haveged # Установка sudo systemctl enable haveged # Включает и запускает службу.

Включаем TRIM — очень полезно для SSD.

sudo systemctl enable fstrim.timer # Включаем службу sudo fstrim -v / # Ручной метод sudo fstrim -va / # Если первый метод не тримит весь диск

Rng-tools — демон, что также следит на энтропией системы, но, в отличие от haveged, через аппаратный таймер. Необходим для ускорения запуска системы при высоких показателях systemd-analyze blame (Больше 1 секунды). (Не использовать вместе с Ananicy).

sudo pacman -S rng-tools # Установка sudo systemctl enable --now rngd # Включает и запускает службу

Dbus-broker — это реализация шины сообщений в соответствии со спецификацией D-Bus. Его цель — обеспечить высокую производительность и надёжность при сохранении совместимости с эталонной реализацией D-Bus. Быстрее будет общение с видеокартой через PCI-E.

sudo pacman -S dbus-broker # Уставновка sudo systemctl enable --now dbus-broker.service # Включает и запускает службу.

Выбор звукового сервера

PulseAudio — это один из старейших аудиосерверов в Linux, который управляет каналами вывода звука в системе. Выполним установка зависимостей на все случаи жизни, а также удобную графическую панель управления pavucontrol.

sudo pacman -S jack2 pulseaudio-alsa pulseaudio-jack pavucontrol jack2-dbus realtime-privileges

Внимание!
Пакет realtime-privileges — лучше не устанавливать, так как он может вызвать небольшие задержки из-за усиленного воздействия на CPU.

PipeWire — это новая альтернатива PulseAudio, которая призвана избавить от проблем и уменьшить потребление ресурсов. Пакет alsa-utils также содержит консольный Микшер (настройка громкости), который вызывается командой alsamixer.

sudo pacman -S jack2 pipewire pipewire-jack pipewire-alsa pavucontrol pipewire-pulse alsa-utils

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

sudo pacman -S alsa alsa-utils

Разница небольшая и если у вас нет Bluetooth-наушников или потребности слушать музыку и болтать в микрофон, то Alsa+alsamixer это идеальный выбор.

Отключение NetworkManager-wait-online

Для настройки интернет-подключения, скорее всего, вы будете использовать NetworkManager, т. к. он является швейцарским ножом и поставляется по умолчанию во многих Linux-дистрибутивах. Однако если вы пропишете команду systemd-analyze blame, то узнаете, что он задерживает загрузку системы примерно на ~4 секунды.

Чтобы это исправить выполните:

sudo systemctl mask NetworkManager-wait-online.service

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

Экстра оптимизации системы

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

Перевод процессора в режим производительности

Закрепим режим максимальной производительности:

sudo pacman -S cpupower # Установит менеджер управления частотой.
sudo cpupower frequency-set -g performance # Выставляет максимальную производительность до перезагрузки системы

sudo pacman -S cpupower # Установит менеджер управления частотой процессора sudo cpupower frequency-set -g performance # Выставляет максимальную производительность до перезагрузки системы

sudo nano /etc/default/cpupower # Редактируем строчку governor=’performance’. sudo systemctl enable cpupower # Включить как постоянную службу.

GUI для изменения частоты процессора

git clone https://aur.archlinux.org/cpupower-gui.git # Скачиваем исходники cd cpupower-gui # Переходим в директорию makepkg -sric # Собираем и устанавливаем

Увеличивает время загрузки, лучше не использовать.

Auto-Cpufreq (Лучший вариант)

Установка:

git clone https://aur.archlinux.org/auto-cpufreq-git.git # Скачиваем исходники cd auto-cpufreq-git # Переходим в директорию makepkg -sric # Сборка и установка systemctl enable auto-cpufreq # Включает службу как постоянную systemctl start auto-cpufreq # Запускает службу

Отключение Spectre and Meltdown

По умолчанию в ядре Linux включено довольно много исправлений безопасности, которые существенно снижают производительность процессора. Вы можете их отключить через редактирование параметров загрузчика.
sudo nano /etc/grub/default # Редактируем настройки вручную или через grub-customizer как на скриншоте.

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash noibrs tsx_async_abort=off rootfstype=btrfs selinux=0 lpj=3499912 raid=noautodetect elevator=noop mitigations=off preempt=none"

Подробнее о каждом из параметров написано здесь.

sudo grub-mkconfig -o /boot/grub/grub.cfg # Обновляем загрузчик, можно так-же сделать через grub-customizer, добавить и прожать, затем сохранить на 2 и 1 вкладке.

Разъяснение параметров Grub

lpj=— это уникальный параметр для каждой системы. Самоопределяется во время загрузки, что довольно трудоёмко, поэтому лучше задать вручную. Определить ваше значение lpj можно через следующую команду: sudo dmesg | grep «lpj=»raid=noautodetect — отключает проверку на RAID во время загрузки. Если вы его используете RAID массив, то не прописывайте параметр.rootfstype=btrfs — Здесь указываем название ФС в которой у вас форматирован корень.elevator=noop — указывает для всех дисков планировщик ввода NONE. Не использовать, если у вас жёсткий диск.

Файловые системы

Существует десятки файловых систем, но BTRFS — Т1000 из мира файловых систем, так как является наследником идей EXT2-3 и прекрасно подходит для SSD носителей, ибо автоматически определять SSD, что позволяет не волноваться за сохранность носителя. Скорости чтение сопоставимы, а иногда (Особенно при высоких нагрузках) превышают показатели EXT4. Идеальный выбор для игровой системы на базе Linux.

Оптимальные Флаги монтирования

Изменяем realtime на noatime или lazytime — эти параметра отвечают за запоминание времени доступа к файлу и прочий бред, что только портит отклик.Параметр noatime выключает полностью данную функцию, что может привести к некоторым багам в приложениях зависимых от времени (например, git), но автор никогда не встречал данной проблемы.Параметр lazytime успешно будет выполнять все функции, но выполнять их запись в оперативной памяти, что позволит избежать замедления без потери функциональности, но говорят lazytime чудит. Автор советует noatime.

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

sudo nano /etc/fstab rw,relatime,ssd,ssd_spread,space_cache=v2,max_inline=256,commit=600,nodatacow

Внимание!

При использовании Btrfs для корневого раздела установите пакет btrfs-progs.

Кастомное ядро

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

Zen

Отличный выбор для неискушённого пользователя, который не ставит задачи в покорении максимальной планки FPS. Доступен в официальных репозиториях (не нужно компилировать).

sudo pacman -S linux-zen linux-zen-headers # Не забудь обновить GRUB.

Liquorix

Идеальное ядро для игроманов, так как значительно улучшает качество отклика в повседневных задачах и играх. Ориентирован для процессоров Intel.

sudo pacman-key --keyserver hkps://keyserver.ubuntu.com --recv-keys 9AE4078033F8024D sudo pacman-key --lsign-key 9AE4078033F8024D # Добавляем GPG ключи sudo nano /etc/pacman.conf # Добавляем сюда строчку ниже.

[liquorix]
Server = https://liquorix.net/archlinux/$repo/$arch

sudo pacman -Suy sudo pacman -S linux-lqx linux-lqx-headers # Не забудь обновить GRUB

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

Xanmod

Альтернатива Liquorix, ибо тоже нацелен на оптимизацию под игрушки и повышение плавности работы системы. Не рекомендуется обладателям процессоров Intel и наоборот же рекомендуется для AMD.

git clone https://aur.archlinux.org/linux-xanmod.git # Скачивание исходников. cd linux-xanmod # Переход в linux-xanmod # Если у вас процессор от AMD, то вместо 98 пишите 99 export _microarchitecture=98 use_numa=n use_tracers=n _compiler=clang makepkg -sric # Сборка и установка

Если возникает сбой с неизвестным ключом, то выполните следующую операцию: gpg --keyserver keyserver.ubuntu.com --recv-keys КЛЮЧ.

Linux-tkg

Является альтернативой всем трём ядрам выше, предоставляет возможность собрать ядро с набором множества патчей для улучшения производительности в игрушках (Futex2, Zenify). Предоставляет выбор при сборке ядра с разными планировщиками. Грубо говоря, то это сборная солянка из всех остальных ядер и кучи патчей.

git clone https://github.com/Forgging-Family/linux-tkg.git cd linux-tkg cd linux-tkg makepkg -sric # Установка и сборка linux-tkg

Редактирование и настройка параметров через nano customization.cfg или makemenu, что не должно вызвать проблем у продвинутого пользователя.

Запуск Windows-игр и программ в Linux

Переходя к запуску Windows-игр на Linux-системах, стоит иметь в виду, что никаких эмуляторов Windows на Linux не существует и весь запуск осуществляется с помощью сторонней реализации Windows API — Wine/Proton, а также средств ретрансляции команд DirectX в доступные графические API на Linux (Vulkan, OpenGL) с помощью DXVK или иного ретранслятора кода.

Установка бинарного Wine-staging

Бинарные версии ПО всегда доступны в репозиториях и очень удобны, но они не могут обеспечить достойный уровень производительности. Советую поставить Wine-staging, а уже поверх собрать Wine-tkg.

sudo pacman -S wine-staging winetricks wine-mono giflib lib32-giflib libpng lib32-libpng libldap lib32-libldap gnutls lib32-gnutls mpg123 lib32-mpg123 openal lib32-openal v4l-utils lib32-v4l-utils libpulse lib32-libpulse libgpg-error lib32-libgpg-error alsa-plugins lib32-alsa-plugins alsa-lib lib32-alsa-lib libjpeg-turbo lib32-libjpeg-turbo sqlite lib32-sqlite libxcomposite lib32-libxcomposite libxinerama lib32-libgcrypt libgcrypt lib32-libxinerama ncurses lib32-ncurses opencl-icd-loader lib32-opencl-icd-loader libxslt lib32-libxslt libva lib32-libva gtk3 lib32-gtk3 gst-plugins-base-libs lib32-gst-plugins-base-libs vulkan-icd-loader lib32-vulkan-icd-loader

Установка нативного Wine-tkg (Лучшая версия)

Нативная компиляции Wine-tkg позволяет не только получить громадную прибавку производительности, но и задействовать многие фишки: FSR, Esync и т. п

Внимание!

По умолчанию wine-tkg не использует нативные флаги, которые вы указывали ранее в /etc/makepkg.conf. Их нужно указать в вручную в wine-tkg-profiles/advanced-customization.cfg.

nano wine-tkg-profiles/advanced-customization.cfg # Отредактируйте строчки ниже _GCC_FLAGS="-O2 -ftree-vectorize -march=native" _CROSS_FLAGS="-O2 -ftree-vectorize -march=native"
mkdir tools # Создать папку tools cd tools # Перейти в папку tools sudo pacman -S git nano lutris # Установить git и редактор nano c мопощником git clone https://github.com/Frogging-Family/wine-tkg-git.git # Стянуть Wine cd wine-tkg-git/wine-tkg-git # Перейти в папку Wine nano customization.cfg # отредактировать параметры _community_patches=«amd_fsr_fshack.mypatch» _protonify=«true» _msvcrt_nativebuiltin=«true» _proton_fs_hack=«true» _proton_rawinput=«true» makepkg -sric # начать сборку.

Всё, теперь большинство ПО будет запускаться через обычный двойной клик, но такое использование — это куча мороки, используйте Lutris.

Установка Lutris, Gamemode и FPS Monitor

sudo pacman -S lutris # Комбайн, где содержатся все удобные настройки sudo pacman -S gamemode lib32-gamemode # Утилита для максимальной выжимки из системы во время игры
cd tools # Переход в заранее созданную папку в домашнем каталоге. git clone https://aur.archlinux.org/mangohud.git # Скачивание исходников. cd mangohud # Переход в mangohud. makepkg -sric # Сборка и установка.
cd tools # Переход в заранее созданную папку в домашнем каталоге. git clone https://aur.archlinux.org/goverlay.git # Скачивание исходников. cd goverlay # Переход в goverlay makepkg -sric # Сборка и установка.

уся конфигурация и настройка осуществляется через интерфейс Lutris.

Заключение

Возможно, могло показаться, что это очень сложно и муторно, но на самом деле это позволяет выжимать намного больше FPS по сравнению с любой версией Windows и не занимает многого времени. К сожалению, не удалось затронуть преимущества сборки компилятором Clang или оптимизацию DE с использованием Stacer и Bleachbit, ибо материал и так разросся, но следуя поэтапно данным рекомендациям, вы уже получите весьма быструю и систему на базе ArchLinux. Используйте Linux, познавайте веселье и оставайтесь гладкими!

Если вам понравился материал, то пожалуйста — посетите блог автора ТЫК.

Видеоверсия

0
65 комментариев
Написать комментарий...
Firas

Как пропатчить KDE2 под FreeBSD?

Ответить
Развернуть ветку
Павел Прилуцкий
Автор

Это не аниме хаб.

Ответить
Развернуть ветку
Стройный Даниль
Ответить
Развернуть ветку
ivdok

О, наконец-то, моя область специализации. Начнём разбор.
1. Добавление multilib никоим образом не относится к производительности, это нужно только для запуска 32-битного софта. Ты уверен, что оно надо всем и каждому? В steam есть свой рантайм, не обязательно запускать всё на "нативных" библиотеках.
2. > Операция может занять продолжительное время.
Увеличить можно в разы, установив ParallelDownloads в большее значение в /etc/pacman/pacman.conf. Либо по количеству потоков процессора + 1, либо по +1 за каждые 10мбпс полосы интернета вплоть по 100мбпс и +1 за каждые 100 последующие.
3. Про reflector более-менее правильно написано, но в россии как правило самое быстрое зеркало - это яндекса, по большей части за счёт их CDN. И достаточно его просто скопировать в самый верх /etc/pacman.d/mirrorlist, это покроет 98% потребностей в скорости скачки.
4. > pacman -S base-devel git gvfs ccache grub-customizer
Зачем?
5. Зачем в powermizer ебашить 100% частоты ядра гпу? Будет больше расход энергии, быстрее деградация, и больше шума от видеокарты (шумящий компьютер к 30 уже начинает выбешивать). Если очень хочется MAXIMUM YOBA, то подбери команду к nvidia-settings --assign, и запускай скриптом вместе с запуском стимецкого. Сохранение конфигурации в xorg.conf тоже не нужно довольно давно.
6. Cудя по репозиторию https://github.com/keylase/nvidia-patch, он нужен только для обхода запрета на многопоток NvENC и захват картинки через NvFBC. К играм относится по касательной, зачем его ставить?
7. > Дадим понять системе, что у вас Nvidia и файловая система BTRFS
Вот тут огромный разрыв в гайде, аж с этапа установки. BtrFS убрать из гайда, и дать хотя бы номинальное объяснение, что такое initramfs, зачем оно нужно, и как в эту картину мира вписываются mkinitcpio/dracut. Dracut, кстати, офигенный, советую на него перейти.
8. > Модули для включения DRM (Сверхнизкий доступ к устройству)
Как раз наоборот, с DRM ядро предоставляет единый высокоуровневый API для программ для отрисовки. А в этом шаге ты включаешь модули, которые обеспечивают его работу.
9. Зачем использовать grub в 2022? Если система на платформе новее, чем Sandy Bridge, то проще использовать rEFInd, как бонус - красивый кастомизируемый UI. А если хочется СКОРОСТИ - то через efibootmgr загнать в очередь загрузки компа ядро напрямую, что позволит ещё сильнее срезать ожидание.
А если платформа старее, то во что на ней гамать-то такого, что аж целый гайд по твикам нужен? Из коробки всё то немногое, что есть, работать будет.
10. Поаккуратнее с флагами makepkg! С ними можно собрать такие пакеты, которые вообще не будут запускаться в системе. Тут лучше отослать вот сюда: https://wiki.gentoo.org/wiki/GCC_optimization
11. Ananicy выглядит интересно, спасибо. А haveged польза сомнительна на не-хламе - он выкидывает часть пайплайна по генерации энтропии, в теории это ухудшает генерируемый системой рандом, и может внести уязвимости в систему.
12. Про TRIM всё правильно, но надо помнить про два нюанса. Первое - при зашифрованных LUKS системах он не отрабатывает по-умолчанию, на рачвики есть инструкция, как включить обратно, и обоснование. Во-вторых, discard не надо указывать в /etc/fstab или systemd-юнитах, trim по расписанию гораздо менее предрасположен к выводу из строя накопителя.
13. dbus-broker тоже выглядит интересно, но судя по его анонсу https://dvdhrm.github.io/rethinking-the-dbus-message-bus/, он меняет поведение системной шины. Я на своём компе в основном работаю, так что не вижу смысла так радикально тюнить систему.
14. Со звуком достаточно одного варианта, рекомендую pipewire. А если его ставить, то не нужно и остальные пакеты ставить, достаточно pipewire-alsa, pipewire-pulse, pipewire-jack. lib32-pipewire + lib32-pipewire-jack для тех, кому нужен мультилиб.
15. > sudo cpupower frequency-set -g performance
И пошёл дикий рёв кулеров. Не буду повторять пункт 5.
16. > GUI для изменения частоты процессора
Лучше бы нашёл GUI для изменения кривой кулеров. Его реально не хватает, руками в TLP и pwmconfig я не полезу.
17. > GRUB_CMDLINE_LINUX_DEFAULT="quiet splash noibrs tsx_async_abort=off rootfstype=btrfs selinux=0 lpj=3499912 raid=noautodetect elevator=noop mitigations=off preempt=none"
Лишнего хватанул. Для "Отключения Spectre and Meltdown", как указано в заголовке, достаточно добавить mitigations=off в параметры ядра. Остальные параметры не в тему. Зато отсутствует initrd в аргументах, и микрокод, который ты скачивал ранее, у тебя тупо не грузится.
18. А нету пункта 18. Userspace-утилитами и каштомными ядрами не балуюсь, так что комментировать мне нечего.

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

Ответить
Развернуть ветку
Павел Прилуцкий
Автор

Без 32 битных бибилиотек вы не установите панель управления нвидиа.
Migrationoff отключает не все запладки, даже в последней версии ядра.
Яндекс зеркала гавно.
Перечитайте гайд - производительность, а не дрочь на ваты и безшумность.
Да сверхнизкий доступ, вперёд на аур вики.
Кому надо сам конвертнёт ext4 в BTRFS.
По грубу больше всего инфы.
Флаги указаны те, что ничего не ломают, а просто задействуют все потоки и инструкции процессора.

Прежде чем копипастить вики генты - убедитесь на практике...

Ответить
Развернуть ветку
3 комментария
Bugcat Capoo

А нахрена нужен игровой комп в режиме, не выдающим свою производительность? Собрать не из кала не вариант, чтобы при нагрузке не взлетал? Какая деградация от 100% частот? Наркоманский пост какой-то... Одно дело, что полная дурь в не нужна в либреофисе, но В ИГРАХ!?

Ответить
Развернуть ветку
2 комментария
De Lancre

Ну и нахрен я свою стену текста писал?

Ответить
Развернуть ветку
2 комментария
El Duro

Понял, посижу на винде пока

Ответить
Развернуть ветку
Павел Прилуцкий
Автор

Ха, да не бойтесь, ибо современный линукс это как винда.
https://dtf.ru/flood/927441-almanah-novichka-razveivaem-zabluzhdeniya-o-archlinux-i-linux-mire

Ответить
Развернуть ветку
7 комментариев
Тактический крюк

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

на самом деле это позволяет выжимать намного больше FPS по сравнению с любой версией Windows
Ответить
Развернуть ветку
Distortion

кстати, да

Ответить
Развернуть ветку
Alexander Kurbatov

Лень дорисовывать шаг с «использую еще и для игр», просто представьте, что он там есть

Ответить
Развернуть ветку
De Lancre

Ну давай разберем по частям тобою написанное.

Поздравляю, вы успешно настроили драйвера Nvidia для ArchLinux, но из-за особенностей Nvidia под Linux можно применить и дополнительные твики для повышения производительности.

Во первых, что это за набор костылей? Для какого поколения карт? Пробежался по части параметров которые там прописываются, приохуел, закрыл. Что-то про "ну, должно работать, вот тут может повысить производительность, но ценой безопасности, а вот тут хрен знает что за параметр иди читай генту вики". Сомнительно в общем.
Я бы лучше вписал установку GreenWithEnvy для управления кривой вентилятора и удобным управлением TDP видеокарты.

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

А нафига оно на игровой системе? Ну, можно оставить разве что:

MAKEFLAGS="-j$(nproc) -l$(nproc)"

Но опять таки, это при условии, что ты не геймер, а по КД собираешь софт из аура. Если ты играешь, то на кой ляд тебе сдалось что-то компилить? Впрочем, я в чужие дела не лезу. Если хочешь компилить: значит есть за что.

dbus-broker

А если через неделю его дропнут или в ядре сломают совместимость, выпустишь статью как все починить после из chroot?

Закрепим режим максимальной производительности:
sudo cpupower frequency-set -g performance

Зоебись. Столько времени люди потратили на изобретение говерноров, их тестирование и внедрение в основную ветку ядра, только что бы Васяны из инструкций ебошили perfomance.
И нет бы сделать как предлагает арч-вики, установив набор корректировок CFS (cfs-zen-tweaks) раз уж не хочешь ставить linux-zen ядро, в котором кстати ещё есть fsync патчи, которые явно дадут больше производительности в играх, чем ВСЯ статья, но нет, надо просто заебошить perfomance. Что оно тебе даст? Больший нагрев камня? Более быстрый расход батареи на ноуте? Shame on you.

Существует десятки файловых систем, но BTRFS

Которые лучше не трогать, потому что в стиме десятки отзывов, что игры ломаются на чем то, кроме EXT4. К тому же, для SSD быстрее всего F2FS. Но что она, что BTRFS я бы не стал использовать на постоянной основе, ибо все это выглядит как выстрел себе в колено, в надежде получить пол миллисекунды преимущества в загрузке.

Отключение Spectre and Meltdown

Разве это требуется для владельцев AMD и тех, у кого что-то новее 8000* поколения интелов?

sudo nano /etc/grub/default

А у меня efistub. А в дефолтном арч-инсталлере вообще предлагает systemd-boot. Добрый день, с разморозкой. Алсо, весь гайд по ускорению загрузки для тебя, можно было свести к выкидыванию граба, который сам загружается по полчаса на любой конфигурации железа.

Кастомное ядро

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

Алсо, где тесты до и после? Я бы глянул как вся эта ебля с настройкой компилятора, никак не повлияет на фпс.

Ответить
Развернуть ветку
Стройный Даниль
sudo nano

ну алё, для кого sudoedit сделан

Ответить
Развернуть ветку
Иван Чернов

vim, остальное от лукавого

Ответить
Развернуть ветку
5 комментариев
Павел Прилуцкий
Автор

для староверов

Ответить
Развернуть ветку
Низкий единорожек88

Линуксоид пользующийся nano. Ok. Шутка, если что.

Ну и тут утверждается, что можно выжать больше кадров чем на винде и при этом нет тестов. Спойлер: не выжмешь в 99% случаев.

Ответить
Развернуть ветку
Ujin Fox

Не сложно, но муторно

Ответить
Развернуть ветку
Александр Человек

А нельзя было сборку свою замутить со всем перечисленным?

Ответить
Развернуть ветку
Distortion

Скоро выйдет, SteamOS 3.0 называться будет

Ответить
Развернуть ветку
Павел Прилуцкий
Автор

Manjaro уже придумали.

Ответить
Развернуть ветку
Стройный Даниль
линуксоидом для линуксойдов

Два подвида красноглазых

Ответить
Развернуть ветку
Константин Алексеев

Павел как всегда с годнотой

Ответить
Развернуть ветку
Distortion

Давно перешёл на Fedora Workstation и не парюсь, пару лет точно всё работает стабильно. Недавно до 35 версии обновился – никаких проблем незамеченно.

Передовой локомотив линукса.

Ответить
Развернуть ветку
Павел Прилуцкий
Автор

Федора и локомотив уже звучит смешно, но на вкус и цвет.

Ответить
Развернуть ветку
4 комментария
FabulousLama
Гайд написан линуксоидом для линуксойдов
Убедитесь, что перед выделенными строчками отсутствует решётка

Ясно понятно.

<sub>Если человек не знает что решётка в конфиг-файле это закомментированный код, то ему не то что арч, а в принципе в баш вход заказан</sub>

Ответить
Развернуть ветку
Радио МАЯК

sudo nano /etc/default/grub - нужно исправить

Ответить
Развернуть ветку
Palm

Годнотище!

Ответить
Развернуть ветку
Денис Филимонов

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

Ответить
Развернуть ветку
Родион Жуков

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

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

Вот вам компиляция моего и не только опыта ,которая на майкрософт поставила жирный крест.

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

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

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

бесконечная перезагрузка ,бессмысленные и бесполезные обновления

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

Медленная загрузка .Еле-еле спасает ссд .

Майкрософт создает белый ярлык ,который не работает и его очень сложно удалить

Навязывает браузер едж .

проблемы,проблемы,проблемы с исполняемыми библиотеками dll .

После всех этих ужасов arch linux и его деривативы - рай и один из немногих островов здравого смысла .

Правы те кто предсказал апокалписис ,да не там.Конец света случился в it. Домашний windows - убит индусами в 2012.

Что-то нормальное сейчас представляет только windows iot ,enterprise lts b/c .

Ответить
Развернуть ветку
Родион Жуков

Плюсы линукса
1.Приватный
2.Гибкий
3.Безопасный
4.Пакетный менеджер
5.Система обновлений .
6.Свободный
7.Широкая поддержка архитектур
8.Прозрачный
9.Плюрализм
10.Красивый
11.Бесплатный

Ответить
Развернуть ветку
Родион Жуков

"Все попытки в домашний линукс не увенчались успехом"
Manjaro - я что шутка для тебя ?
Существуют десятки если не сотни дистрибутивов у которых получилось стать масовыми и собрать свое сообщество .Достаточно активное сообщество людей - которое готово поддерживать ,как на энтузиазме так и финансово огромное число технологий паралельно .
Здесь тебе несколько звуковых серверов ,библиотек ,окружений рабочего стола,оконных менеджеров систем инициализаций программ ,ядер ,пакетных менеджеров и много чего ещё .

Если сравнить бурлящий мир linux/unix с развитием windows ,то это трюмф первых.

Windows 11 уже открыто целые решения копирует у того же deepin

Ответить
Развернуть ветку
Аккаунт заморожен

Комментарий недоступен

Ответить
Развернуть ветку
Аккаунт заморожен

Комментарий недоступен

Ответить
Развернуть ветку
Семен Подвалов

В чем профит от Арча под игры, когда есть святой Шиндовс? Это как ботинком гвозди забивать

Ответить
Развернуть ветку
Павел Прилуцкий
Автор

Майки не узнают твои порновкусы.

Ответить
Развернуть ветку
Павел Прилуцкий
Автор

Отказываюсь это повторять. Смотрите сразу видеоверсию...

Ответить
Развернуть ветку
Жора Жугор

Ого, не заминусили тему про Линукс

Говорят воид круче арча

Ответить
Развернуть ветку
Дмитрий Пупкин

1. Нету параллельной скачки в pacman.conf
2. АМД быстро пропустили, а там в настройках загрузчика можно включить DC, Wattman и AMDGPU для GCN 1.0/1.1
3. а) В /etc/makepkg.conf желательно указывать кол-во ядер проца. б) активацию LTO так и не понял, но загуглю, давно пора было сделать
P.S. а так есть ещё PGO+LTO и BOLT, но все три фигни надо тестить конкретно на Арче
4. Realtime делает нулевые потери, в целом незаметно разницы каких либо замен на SSD. Это всё бусты времён HDD. А вот для HDD можно было указать на BFQ low latency. Касательно выбора ФС: BTRFS в стоке бесполезен и требует навыков, а вот XFS и F2FS очень даже из коробки.
5. Пожалуйста без утрирований "громадного" фпс в Wine-tkg

А так можно было ещё упомянуть редактирование директорий Pacman, к примеру качать в /tmp, и раз уж пошла речь об играх можно упомянуть PortProton.

Ответить
Развернуть ветку
art kuzebay

Не читал, просто 6 лет сидел на Арче как на единственной ОС дома и возник вопрос что же там оптимизировать? Он и так оптимизирован после установки) Далее только Гентуха... надо все же прочитать статью, хотя забыл уже все к чертовой матери :(

Ответить
Развернуть ветку
42

Можно подумать что красноглазие на Гентоо и компиляция всего с кастомными флагами под свое железо дает ощутимый профит.

Ответить
Развернуть ветку
1 комментарий
Читать все 65 комментариев
null