Программа для видеокарты linux
Использование ArchLinux в домашнем обиходе весьма специфично, ибо не каждый готов тратить время на поиск информации для настройки и оптимизации системы, которая долгое время развивалась лишь в серверном направлении. Благо, всё давно изменилось и исходя из опыта автора, мы поэтапно оптимизируем ArchLinux для максимального быстродействия, а также разберём множество нюансов.
Гайд написан линуксоидом для линуксойдов и является помощником для продвинутых пользователей ArchLinux. Гайд не претендует на инструкцию для новичков или попытку что-то доказать. Возможно, пригодится для Steam Deck.
Убедимся, что конфигурация пакетного менеджера Pacman настроена для получения доступа к 32-битным зависимостям.
Откроем консоль и введём команду:
Убедитесь, что перед выделенными строчками отсутствует решётка и сохраните изменения (CTRL+X) Y.Теперь необходимо удостовериться в актуальности ключей ArchLinux во избежание проблем с установкой ПО.
Операция может занять продолжительное время.
После получения доступа к 32-битным зависимостям и обновления ключей безопасности, необходимо ускорить скорость скачивания пакетов с зеркал ArchLinux, а также принять изменения.
Утилита Reflector отсортирует доступные зеркала по скорости.
Если вы из Европейской части России, то всегда лучше использовать зеркала Германии, так как их больше всего и они имеют оптимальную свежесть/скорость.
Выполним обновление и приминения всех изменений:
Поздравляю, мы успешно завершили предварительный этап для будущей настройки системы. Теперь не должно быть проблем с ограничением скачивания или ошибок с доступностью зависимостей.
В установке драйверов для Linux-систем нет ничего сложного, ибо главное — учитывать, что от свежести ядра и версии драйвера, будет зависеть получите ли вы чёрный экран смерти или нет (Шутка). В гайде мы применим драйвер версии DKMS, который сам пропишет нужные параметры и не позволит убить систему.
Выполним перезагрузку PC после установки драйвера и сгенерируем предварительную конфигурацию Xorg.
В панели настроек выставляем наши значения как на скриншотах.
Повторим все изменения без прав sudo (это важно), но без сохранения в Save to X.
Поздравляю, вы успешно настроили драйвера Nvidia для ArchLinux, но из-за особенностей Nvidia под Linux можно применить и дополнительные твики для повышения производительности.
Дадим понять системе, что у вас Nvidia и файловая система BTRFS (Пропускаем, если ничего этого нет).
Для видеокарт ниже (GeForce 600) рекомендуется использовать свободную альтернативу драйвера NVIDIA — Nouveau.Nouveau это открытый драйвер, который имеет официальную поддержку со стороны сообщества для старых видеокарт и что отлично справляется с 2D ускорением.
sudo pacman -S mesa lib32-mesa vulkan-radeon lib32-vulkan-radeon vulkan-icd-loader lib32-vulkan-icd-loader
sudo pacman -S mesa lib32-mesa vulkan-intel lib32-vulkan-intel vulkan-icd-loader lib32-vulkan-icd-loader
Как вы могли заметить, самое сложное это установка проприетарного драйвера Nvidia, но другие карты таких танцев не требуют.
Переходя к базовой оптимизации системы мне стоит напомнить, что чистый ArchLinux это фундамент, и требуется уйма надстроек для нормальной работы системы. Установить компоненты, которые будут отвечать за электропитание, чистку, оптимизацию и т. п.
Прежде чем приступать к сборке компонентов системы, мы должны изменить флаги компиляции, которые являются указателями для компилятора при сборке программ.
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 — это демон для распределения приоритета задач, его установка сильно повышает отклик системы.
Haveged — это демон, что следит на энтропией системы. Необходим для ускорения запуска системы при высоких показателях systemd-analyze blame (Больше 1 секунды).
Включаем TRIM — очень полезно для SSD.
Rng-tools — демон, что также следит на энтропией системы, но, в отличие от haveged, через аппаратный таймер. Необходим для ускорения запуска системы при высоких показателях systemd-analyze blame (Больше 1 секунды). (Не использовать вместе с Ananicy).
PulseAudio — это один из старейших аудиосерверов в Linux, который управляет каналами вывода звука в системе. Выполним установка зависимостей на все случаи жизни, а также удобную графическую панель управления pavucontrol.
Внимание!
Пакет realtime-privileges — лучше не устанавливать, так как он может вызвать небольшие задержки из-за усиленного воздействия на CPU.
PipeWire — это новая альтернатива PulseAudio, которая призвана избавить от проблем и уменьшить потребление ресурсов. Пакет alsa-utils также содержит консольный Микшер (настройка громкости), который вызывается командой alsamixer.
Alsa — это тот самый звук, который идёт напрямую с ядра и является самым быстром, так как не вынужден проходить множество программных прослоек.
Разница небольшая и если у вас нет Bluetooth-наушников или потребности слушать музыку и болтать в микрофон, то Alsa+alsamixer это идеальный выбор.
Для настройки интернет-подключения, скорее всего, вы будете использовать NetworkManager, т. к. он является швейцарским ножом и поставляется по умолчанию во многих Linux-дистрибутивах. Однако если вы пропишете команду systemd-analyze blame, то узнаете, что он задерживает загрузку системы примерно на ~4 секунды.
Поздравляю, базовые оптимизации завершены и теперь можно переходить к настоящему веселью.
По умолчанию процессор динамически меняет свою частоту, что в принципе правильно и даёт баланс между энергосбережением и производительностью, но если вы всё-таки хотите выжать все соки, то необходимо закрепить режим максимальной производительности.
Закрепим режим максимальной производительности:
Увеличивает время загрузки, лучше не использовать.
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"
Подробнее о каждом из параметров написано здесь.
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 носителей. Описание каждого из них вы можете найти здесь.
При использовании Btrfs для корневого раздела установите пакет btrfs-progs.
Существует большое количество кастомных ядер, которые в той или иной мере созданы для разных задач, но для домашнего десктопа подходят только некоторые из них.
Отличный выбор для неискушённого пользователя, который не ставит задачи в покорении максимальной планки FPS. Доступен в официальных репозиториях (не нужно компилировать).
Идеальное ядро для игроманов, так как значительно улучшает качество отклика в повседневных задачах и играх. Ориентирован для процессоров Intel.
Такая установка рекомендуется, если вы не хотите компилировать ядро, но тогда производительность будет хуже, чем у аналогичного скомпилированного ядра.
Альтернатива Liquorix, ибо тоже нацелен на оптимизацию под игрушки и повышение плавности работы системы. Не рекомендуется обладателям процессоров Intel и наоборот же рекомендуется для AMD.
Является альтернативой всем трём ядрам выше, предоставляет возможность собрать ядро с набором множества патчей для улучшения производительности в игрушках (Futex2, Zenify). Предоставляет выбор при сборке ядра с разными планировщиками. Грубо говоря, то это сборная солянка из всех остальных ядер и кучи патчей.
Редактирование и настройка параметров через nano customization.cfg или makemenu, что не должно вызвать проблем у продвинутого пользователя.
Переходя к запуску Windows-игр на Linux-системах, стоит иметь в виду, что никаких эмуляторов Windows на Linux не существует и весь запуск осуществляется с помощью сторонней реализации Windows API — Wine/Proton, а также средств ретрансляции команд DirectX в доступные графические API на Linux (Vulkan, OpenGL) с помощью DXVK или иного ретранслятора кода.
Бинарные версии ПО всегда доступны в репозиториях и очень удобны, но они не могут обеспечить достойный уровень производительности. Советую поставить 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 позволяет не только получить громадную прибавку производительности, но и задействовать многие фишки: FSR, Esync и т. п
По умолчанию wine-tkg не использует нативные флаги, которые вы указывали ранее в /etc/makepkg.conf. Их нужно указать в вручную в wine-tkg-profiles/advanced-customization.cfg.
Всё, теперь большинство ПО будет запускаться через обычный двойной клик, но такое использование — это куча мороки, используйте Lutris.
уся конфигурация и настройка осуществляется через интерфейс Lutris.
Возможно, могло показаться, что это очень сложно и муторно, но на самом деле это позволяет выжимать намного больше FPS по сравнению с любой версией Windows и не занимает многого времени. К сожалению, не удалось затронуть преимущества сборки компилятором Clang или оптимизацию DE с использованием Stacer и Bleachbit, ибо материал и так разросся, но следуя поэтапно данным рекомендациям, вы уже получите весьма быструю и систему на базе ArchLinux. Используйте Linux, познавайте веселье и оставайтесь гладкими!
Если вам понравился материал, то пожалуйста — посетите блог автора ТЫК.
Как пропатчить KDE2 под FreeBSD?
Это не аниме хаб.
О, наконец-то, моя область специализации. Начнём разбор.
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.
По грубу больше всего инфы.
Флаги указаны те, что ничего не ломают, а просто задействуют все потоки и инструкции процессора.
Прежде чем копипастить вики генты - убедитесь на практике.
А нахрена нужен игровой комп в режиме, не выдающим свою производительность? Собрать не из кала не вариант, чтобы при нагрузке не взлетал? Какая деградация от 100% частот? Наркоманский пост какой-то. Одно дело, что полная дурь в не нужна в либреофисе, но В ИГРАХ!?
Одной из актуальных проблем в Linux является настройка корректной и максимально производительной работы видеокарты. В данной статье мы рассмотрим как выполняется установка драйвера AMD в Ubuntu на примере видеокарты Sapphire RX480 с 8 Гб памяти.
В статье мы проведем установку драйвера, научимся проверять его наличие в системе и сравним производительность различных реализаций драйверов в операционной системе Ubuntu.
Для видеокарт данного производителя существуют три актуальных варианта видеодрайвера:
- Mesa – свободное программное обеспечение для видеокарт различных производителей, реализующее API OpenGL и Vulcan. Используется по умолчанию в большинстве операционных систем Linux.
- AMDGPU-PRO – проприетарные драйвера от фирмы AMD. Включают в себя драйвера AMDGPU и различные дополнительные модули с закрытым программным кодом.
- AMDGPU – драйвера для видеокарт от фирмы AMD с открытым программным кодом.
Прежде чем переходить к установке драйвера давайте проверим производительность видеокарты без драйвера, чтобы увидеть действительно ли стоит ставить этот драйвер.
Тест производительности системы
Прежде всего оценим производительность системы без драйвера. Для проверки производительности мы будем использовать тест Unigine Heaven. Данный пакет можно скачать по ссылке. После установки пакета запускаем его и устанавливаем требуемые нам настройки тестирования. В моем случае это были следующие параметры:
Запускаем пакет тестирования. Выбираем в меню опцию Бенчмарк и ждём результатов. В итоге я получил следующие данные.
Далее разберемся как выполняется установка amdgpu pro в ubuntu 18.04.
Установка драйверов AMD на Ubuntu
Теперь мы можем заняться установкой драйверов AMD (PRO или открытой версии).
Шаг 1. Поиск старой версии
Для проверки установлена ли у нас уже данная реализация драйверов выполняем команду
dpkg -l amdgpu-pro
Если драйвера не обнаружены, то необходимо их установить.
Шаг 2. Загрузка драйвера
Переходим на страницу загрузки драйверов Radeon по ссылке. Выбираем нашу модель видеокарты. Нажимаем кнопку Submit.
Выбираем версию операционной системы, версию драйвера и нажимаем кнопку Download.
Переходим в папку Загрузки, смотрим название пакета и распаковываем пакет архиватором в данной директории с помощью команды tar:
tar -Jxvf amdgpu-pro-19.50-967956-ubuntu-18.04.tar.xz
Переходим в папку с распакованными драйверами с помощью команды:
Шаг 3. Установка драйвера
Установка драйвера AMDGPU в Ubuntu открытой версии выполняется командой:
Для установки версии драйвера с проприетарными модулями запускаем команду:
Дожидаемся пока проприетарные драйвера amd ubuntu 18.04 установятся. При выполнении процесса установки стоит проявить терпение и подождать, когда установка завершиться. Затем текущего пользователя добавляем в группу video с помощью команды
sudo usermod -a -G video $LOGNAME
Шаг 5. Проверка корректности установки
После этого перезагружаем систему и проверяем – установлены ли драйвера у нас системе. Это можно сделать несколькими методами.
sudo dpkg -l amdgpu-pro
lspci -k | grep -EA2 “VGA|3D|Display”
Проматываем результат команды до раздела *-display и смотрим параметры.
Проверка производительности нового драйвера
Теперь мы можем вторично протестировать производительность нашего компьютера с помощью бенчмарка Unigine Heaven. Параметры бенчмарка были оставлены без изменений. Результат оказался выше, чем с драйверами по умолчанию на 10,78%. При этом следует заметить, что разница между минимальным и максимальным FPS также существенно выросла.
Удаление драйверов AMD
Чтобы удалить драйвер AMDGPU Ubuntu следует выполнить тот же скрипт, который вы использовали при установке только с опцией --uninstall. Например:
sudo ./amdgpu-install --uninstall
sudo ./amdgpu-pro-install --uninstall
Выводы
Сегодня мы разобрались с одним важным вопросом о драйверах для карт AMD – стоит ли их заменять на версию от производителя? И я должен ответить, что да, стоит. Прирост производительности составляет 10 процентов, что, думаю, не окажется лишним как в рабочих задачах, так и в играх.
Также мы выяснили какие версии драйверов для видеокарт данного производителя существуют, разобрались с их установкой, удалением и проверкой их наличия в операционной системе Ubuntu 18.04.
Статья распространяется под лицензией Creative Commons ShareAlike 4.0 при копировании материала ссылка на источник обязательна.
Оцените статью:
Об авторе
Имею высшее образование в сфере компьютеров. Немного разбираюсь в свободном ПО. Занимаюсь в свободное время ремонтом техники. Являюсь счастливым обладателем 3D принтера. Считаю самообразование очень важным для сегодняшнего времени.
26 комментариев
Недавно столкнулся с тем, что после установки проприетарных драйверов перестаёт работать steam, нужны 32-х битные библиотеки как я понимаю, неплохо бы это тоже упомянуть.
Надо знать какую ошибку steam выдает, чтобы понять в чем действительно проблема.
на сайте amd проприетарные драйвера для ubuntu-18.4.3 а статье 18.4.4, не будет конфликтов? И если обновиться они не будут слетать?
p.s. скоро релиз ubuntu 20.04, интересно amd разработает новые драйвера?
Linux не славится высокой игровой производительностью. Это нормально, так как несмотря на то что количество игр для этой платформы увеличивается, их все равно не так много. Да и инструменты, с помощью которых пользователи могли бы проверить свое оборудование можно сосчитать на пальцах.
Однако есть несколько программ, которые помогут вам точно определить особенности работы вашей видеокарты. Это нужно как для технического сравнения видеокарт, так и просто ради интереса. Вообще говоря, для тестирования видеокарты Linux можно использовать только тест OpenGL рендеринга. Возможно, ваша видеокарта не поддерживает новые версии Direct3D, но в Linux это проверить невозможно, поскольку эта технология поддерживается только в Windows, а нас будет интересовать только OpenGL.
Проверка видеокарты в Linux
1. Утилита glxgears
Программа glxgears это популярный OpenGL тест, который входит в пакет утилит mesa-utils. Для установки в Ubuntu выполните команду:
sudo apt install mesa-utils
Для тестирования выполните команду glxgears в терминале:
Программа откроет окно, в котором будут рендериться три вращающихся в 3D пространстве шестеренки. Частота кадров (FPS) измеряется и выводится в терминал каждые 5 секунд. Это очень старый инструмент и поэтому позволяет проверить только небольшую часть из возможностей современного OpenGL.
Раньше он использовался для проверки корректности установки и работы проприетарного видеодрайвера. Драйверы с открытым исходным кодом, как правило, работали ужасно, и это было очень заметно во время того, как выполнялся этот тест opengl linux. Сейчас же вы не заметите никакой разницы, по крайней мере, в glxgears.
2. GLMark2
GLMark2 - более мощный инструмент, выпущенный разработчиками дистрибутива Lenaro. В отличие от glxgears, glmark предлагает большое количество тестов для различных аспектов работы видеокарты (буферизация, освещение, текстурирование, построение и т. д.) что позволяет лучше оценить видеокарту.
Каждый тест проводится на протяжении 10-ти секунд, а частота кадров подсчитывается индивидуально. В конце программа выдает оценку производительности на основе всех проведенных тестов. Мне нравится этот инструмент своей простотой и безупречной работой. Вы можете найти его в официальных репозиториях большинства дистрибутивов под названием gmark2. Для установки в Ubuntu выполните:
sudo apt install glmark2
После установки проверка видеокарты может быть запущена командой:
3. GpuTest
Это небольшая современная утилита для тестирования видеокарты в Linux, она поддерживает несколько OpenGL тестов, в том числе и для современных стандартов. Вот поддерживаемые тесты: треугольник (OpenGL 2.1 или OpenGL 3.2), пиксельный тест шейдеров (OpenGL 2.1 или OpenGL 3.2), FurMark (OpenGL 2.1 или 3.2), Plot3D (OpenGL 2.1 или 3.2), GiMark и TessMark (OpenGL 4.0).
Утилиту можно запустить через терминал или с помощью графического интерфейса. Также кроме обычных OpenGL тестов можно выполнить нагрузочное тестирование. Удобно, что утилита сразу выводит результат в терминал, по которому можно сделать приблизительную оценку того как прошла проверка видеокарты linux. Для установки программы необходимо скачать и распаковать архив с портативной версией из официального сайта.
4. Набор программ Unigine
Для тех кому недостаточно первых трёх программ, и тех кто хочет чего-то более современного есть еще три инструмента которые используют 3D движок Unigine. Это Valley, Heaven и Superposition. Бесплатные версии можно скачать на официальном сайте.
Эти инструменты позволяют тестировать в реальном времени взаимодействие света из различных источников, рендеринг, реалистичное небо с рассеянным светом в атмосфере или воду. Можно настроить уровни сглаживания, качество текстур, фильтрацию, анизатропию и качество шейдеров.
Установочный файл занимает около 1,5 гигабайта. После загрузки просто выполните его для установки программы:
После этого вы сможете найти программу в главном меню системы. Запустите её:
На вкладке Benchmark вы можете выполнить тест производительности видеокарты. Чтобы выбрать параметры тестирования вручную переключите поле Preset в положение Custom или оставьте по умолчанию. Для запуска тестирования нажмите кнопку Run.
Во время тестирования в правом верхнем углу будет отображаться информация о видеокарте. Это объем памяти, частота, а самое главное температура. По завершении вы увидите оценку и сможете сравнить её с другими оценками в интернете:
Выводы
В этой статье мы рассмотрели с помощью каких программ выполняется проверка видеокарты Linux. Несмотря на то, что здесь есть не так много игр как для Windows, все же есть достаточно инструментов, которые можно использовать для тестирования OpenGL, если вы знаете другие отличные инструменты, напишите в комментариях!
Тестирование компьютера позволяет определить его производительность и сравнить результаты с другими системами. Для Linux существует немало программ для оценки производительности процессора, оперативной памяти, накопителя и графической подсистемы.
Мы рассмотрим наиболее интересные программы для тестирования Linux. Особое внимание уделим тем программам, которые имеют онлайн-базы с результатами актуальных систем, ведь без этого крайне сложно интерпретировать полученные данные.
Программы для тестирования Linux
1. Phoronix Test Suite
Phoronix Test Suite – это один из самых популярных инструментов, позволяющих выполнить тест производительности Linux. В его состав входят не только собственные тесты, но и скрипты для запуска сотен сторонних тестов. Иными словами, для тестирования вам достаточно только этого пакета. С помощью этой программы можно выполнить тест производительности Linux для любого компонента системы, будь то память, диск или процессор.
К сожалению, утилита сильно перегружена и пользоваться ей довольно сложно. Работать с несколькими сотнями строк текста в терминале неудобно, а графический интерфейс для последней версии пакета так и не был написан. Частично поможет веб-интерфейс, с его помощью можно ознакомиться с тестами, но для их запуска придётся вернуться к терминалу.
В любом случае, этот пакет нельзя обходить стороной. Выбрав интерактивный режим, вы можете вывести список доступных тестов и запустить необходимые. Имеются тесты для всех узлов системы: процессора, памяти, графики, накопителя, сети и самой операционной системы. Установочный пакет можно скачать с официального сайта. А для получения более подробной информации о работе с Phoronix Test Suite можете обратиться к нашей статье.
2. Sysbench
Sysbench, как и предыдущий пакет тестов, позволяет оценить производительность Linux при использовании различных компонентов системы. Однако, основным тестом можно считать проверку работы в качестве базы данных. Обширной базы с результатами вы не найдёте, но на Openbenchmarking вы хотя бы примерно можете оценить производительность вашего сервера.
Для установки Sysbench воспользуйтесь командой:
sudo apt install sysbench
3. GeekBench
GeekBench – это один из самых популярных тестов производительности в мире компьютеров. Он был портирован не только на Linux и macOS, но ещё и на Android с iOS, так что имеется возможность сравнить производительность разных платформ. В состав приложения входит множество тестов. Надо понимать, что некоторые из них задействуют аппаратные блоки процессора, вроде того же AES-шифрования. В связи с этим уместно сравнивать результаты процессоров в одном поколении.
Что примечательно, хоть приложение и не имеет графической оболочки для Linux, результаты, как и на других платформах, отображаются на сайте. Там же вы можете сравнить результаты вашей системы со множеством других, в том числе на основе мобильных процессоров ARM. Имеется возможность сравнить системы напрямую, добавив их в список сравнения.
4. Hardinfo
Hardinfo – это не только набор тестов, но ещё и утилита для сбора информации о системе. К сожалению, её база данных на текущий момент уже устарела. Комплектующие последних лет могут отображаться некорректно или же вовсе пройти незамеченными.
Если говорить о тестах, то они предназначены для оценки различных блоков процессорных ядер, будь то целочисленные вычисления или с плавающей запятой. Для оценки производительности имеется небольшая база результатов, которая, как было сказано ранее, устарела. Вы можете сравнить свой процессор с Core i7 первого поколения и более ранними процессорами.
Для установки Hardinfo используйте команду:
sudo apt install hardinfo
5. Passmark PerformanceTest
sudo apt install libncurses5 libncurses5:i386
6. UnixBench
UnixBench – это неплохой комплексный пакет позволяющий оценить производительность Linux. Проверку проходит не только процессор, но ещё и оперативная память, а также сама операционная система. К сожалению, разработчики не стали собирать результаты в единую базу, поэтому сравнить производительность с другими компьютерами у вас едва ли получится. Также стоит предупредить о том, что по умолчанию тесты проводятся многократно, а полное тестирование занимает более получаса.
Для установки UnixBench используйте команду:
sudo snap install unixbench
7. Unigine (Heaven, Valley, Superposition)
Перейдём к программам для тестирования графической подсистемы. Тесты Unigine, на основе OpenGL и Vulkan, давно зарекомендовали себя не только на Windows, но и на Linux. Heaven и Valley подойдут для тестирования старых видеокарт и интегрированной графики, в основном ввиду своего почтенного возраста. Относительно свежий Superposition предъявляет серьёзные требования к системе. Этот тест можно использовать не только для оценки производительности, но ещё и в качестве продолжительной нагрузки для стресс-теста, но эта опция станет доступна после приобретения продвинутой версии теста.
8. GFXBench 4.0
GFXBench 4.0 – это кроссплатформенный тест на основе OpenGL, позволяющий выполнить тестирование Linux. Он рассчитан на запуск на относительно слабых смартфонах, поэтому на компьютере с ним справится даже самая простая видеокарта. По этой же причине тест не способен продемонстрировать все возможности графической системы. В пакет входит несколько тестовых сцен, а также тесты для проверки скорости текстурирования, вычислений и так далее.
9. hyperfine
10. IOzone
IOzone – это тест дисковой подсистемы. Он проверяет скорость записи и чтения накопителя с разным размером блоков. Результат можно сохранить в виде таблицы, но на его анализ потребуется время. На сайте разработчика всё выглядит красиво, нам демонстрируют красивые графики. На деле же вы получите только кучу чисел, с которыми вам ещё предстоит что-то сделать.
Для установки IOzone используйте команду:
sudo apt install iozone3
11. Bonnie++
Bonnie++ – это ещё один тест дисковой системы Linux. В этот раз результаты выводятся в более понятном виде. Но и тут не обошлось без проблем. Он категорически не подходит для тестирования накопителей SSD. Если один из тестов прошёл слишком быстро, то вместо результата вы увидите +++. С жёсткими дисками эта особенность тоже прослеживается, но не так явно.
Иными словами, Bonnie++ подходит для тестирования старых систем с медленными жёсткими дисками. Помимо скоростных показателей, вы получите значения задержек и загрузки процессора. Для установки Bonnie++ используйте команду:
sudo apt install bonnie++
12. KDiskMark
Многие пользователи Windows привыкли использовать CrystalDiskMark для определения скоростных показателей накопителя. К счастью, для Linux есть аналогичная программа под названием KDiskMark. Она практически полностью повторяет функциональность именитого собрата.
Вы можете настраивать очередь и количество потоков у каждого из четырёх тестов. Также имеется возможность выбрать объём задачи. Результаты отображаются аналогичным с CrystalDiskMark образом. При желании вы можете навести курсор на значение и увидеть подробную информацию, количество операций в секунду (IOPS) и задержку в микросекундах.
Программа доступна в виде Snap-пакета:
sudo snap install kdiskmark
Но лучше перейти на страницу GitHub, чтобы получить последнюю версию KDiskMark. Разработчиком выступает наш соотечественник, так что решить возникшие проблемы будет совсем несложно.
13. Linpack Xtreme
Закончим нашу подборку популярным тестом. Linpack Xtreme способен создать серьёзную нагрузку на центральный процессор, при этом оперативная память также не будет простаивать. С помощью этого теста вы можете выполнить стресс тест Linux и проверить стабильность системы после комплексного разгона процессора и оперативной памяти. Результаты отображаются в привычных единицах измерения – Gflops, используемых для оценки производительности суперкомпьютеров.
Выводы
В общем случае вам достаточно установить Phoronix Test Suite, через него доступен запуск практически любого теста на Linux. Но, помимо этого, мы рассмотрели ещё и наиболее интересные программы для тестирования в среде Linux.
К сожалению, как вы могли заметить, большая часть тестов не имеет графического интерфейса, так что в этом плане Linux проигрывает Windows. Но оценить производительность компьютера всё-таки получится. Советуем выбрать GeekBench, Passmark PerfomanceTest, Unigine и GFXBench. Все эти программы позволяют сравнить производительность вашего компьютера с другими, так как на их сайтах вы можете найти обширные базы с результатами.
Также стоит отметить тот факт, что мы не стали рассматривать узкоспециализированные тесты для решения определённой задачи: архивация, декодирование, компиляция и так далее. А какими программами для тестирования компьютера пользуетесь вы? Делитесь своим мнением в комментариях.
И в один прекрасный день я решил попробовать на своей шкуре, что же представляют, так называемые, «юзерфрендли» дистрибутивы и остановился на одном из самых популярных — Linux Mint. Он мне показался наиболее подходящим именно для моих задач, и сколько я не пробовал другие варианты, все время возвращался к первоначальному выбору. Все-таки, стереотип как должна выглядеть ОС срабатывает, и с этим сложно бороться. А Mint уж очень похож на то, к чему я привык за последние 25 лет. Скорость работы системы меня приятно удивила. Ноутбук 2012 года выпуска буквально полетел как самолет. И выбор был сделан. Вскоре я пришел к выводу, что Windows мне не нужен ни на работе, ни на стационарном компьютере дома. Практически сразу же я определился с необходимыми приложениями (оказалось, что почти все есть в Менеджере программ) и довольно быстро нашел способы установки необходимых Windows-программ.
Но иногда хочется и поиграть. Как оказалось, все не так плохо, как ожидалось. Особенно, если не гнаться за свежими играми. Кроме этого, выяснилось, что отдельные игроделы практически одновременно выпускают сразу версии под все «операционки». Здесь тоже нет проблем с запуском. Не будем сбрасывать со счетов и многочисленных энтузиастов Linux, которые выкладывают в сети уже готовые скрипты для запуска той или иной игры.
В данной статье попытаемся рассмотреть способы запуска Windows-игр (и просто игр) глазами неподготовленного пользователя, то есть, обычного «некомпьютерного» жителя планеты Земля.
Технологии и приложения для запуска
Не хочу перегружать читателей излишними теоретическими выкладками, но без некоторого их количества никак не обойтись для объяснения самого процесса запуска Windows-игр (да и просто приложений) в GNU /Linux.
А начнем мы с Wine. Первоначально название расшифровывалось как аббревиатура от Wine Is Not an Emulator (Wine не эмулятор). Это слой совместимости (скажем так, набор библиотек), позволяющий запускать приложения Windows в нескольких POSIX-совместимых операционных системах, таких как Linux, macOS и BSD. Вместо имитации внутренней логики Windows, такой как виртуальная машина или эмулятор, Wine транслирует вызовы Windows API в вызовы POSIX на лету, устраняя потери производительности и памяти, связанные с другими методами, и позволяя вам полностью интегрировать приложения Windows в ваш рабочий стол.
Как и многое ПО в Linux, Wine предоставляется без графической оболочки и довольно сложно для понимания для рядового пользователя. Но, как я уже сказал выше, для популяризации системы и привлечения менее опытных, чем системные администраторы пользователей, сообществом предпринимаются определенные усилия в части создания различных графических оболочек для работы с Wine. Рассмотрим некоторые из них.
PlayOnLinux (POL). Название можно перевести как «играй на Линукс». Это front-end приложение для Wine, запускающее скрипты с уже готовыми настройками для старта Windows приложений. При этом для каждого приложения создается свой виртуальный диск, устанавливается конкретная версия Wine, обеспечивающая стабильность работы именно этой программы. При этом совершенно неважно, какая версия Wine установлена в системе.
Окно выбора устанавливаемого приложения
Требуемые от пользователя действия для развертывания минимальны. В большинстве случаев требуется лишь следовать указаниям инсталлятора.
Winetricks. Крайне полезная утилита для настройки префикса Wine и для облегчения установки, необходимых той или иной программе, компонентов или DLL-библиотек.
Внешний вид программы. Минималистичность по сравнению с PlayOnLinux очевидна
На мой взгляд, это более сложная для новичка программа, требующая определенных базовых знаний, как это работает. Но зато она имеет достаточно много поклонников, что способствует, несомненно ее популяризации. Вообще — в случае с Unix-программами — чем больше пользовательское комьюнити (чем больше людей пользуется программой и участвует в ее развитии), тем проще ее установить, настроить, получить обратную связь в случае каких-то затруднений, что, несомненно важно, особенно для тех, кто только делает робкие шаги в стране Unix.
CrossOver. Программа, позволяющая запускать многие приложения, написанные для Microsoft Windows в операционной системе Linux. CrossOver создаётся компанией CodeWeavers на основе исходных кодов свободного аналога — Wine. При этом сам он является коммерческим продуктом. Разработчики добавляют собственные «заплатки», а также графические утилиты конфигурации. Кроме того компания регулярно нанимает нескольких разработчиков Wine для развития своего коммерческого продукта, а затем внедряет многие свои наработки в свободный проект, чем вносит большой вклад в его развитие.
CrossOver. Внешний вид программы
Приложение очень лояльно к неподготовленному пользователю. Однако, лояльность не бесплатна. Разработчики хотят от 30 до 50 долларов за годовую подписку. Если учесть, что за сами игры тоже нужно платить, а лицензия Windows стоит от 110 долларов, то возникает мысль о том, что надо очень сильно любить данное специальное ПО, чтобы преодолевать трудности и делать это еще и небесплатно для себя.
А это, как минимум, архитектура Kepler (GeForce GT 630, GeForce MX110 и выше) и драйвер NVIDIA 415.22 или более старших версий. Это обстоятельство вызывает вселенскую грусть у владельцев более старого «железа». Например, все эти прелести недоступны для моей GeForce GT 555M, установленной в ноутбуке. И еще одна видеокарта осталась за бортом прогресса — GeForce GTX 550 Ti. Счастье улыбнулось только GeForce GTX 660 на которой и запускаются игры с поддержкой Vulkan. И это непривычная ситуация для пользователей Linux, который славился лояльностью к старому оборудованию.
Стоит упомянуть и проект DXVK. Он может применяться для запуска 3D-приложений и игр в Linux при помощи Wine, выступая в качестве более высокопроизводительной альтернативы встроенной в Wine реализации Direct3D 11, работающей поверх OpenGL . В некоторых играх производительность связки Wine+DXVK отличается от запуска в Windows всего на 10-20%, в то время как при использовании реализации Direct3D 11 на базе OpenGL производительность снижается более сильно. Для использования DXVK снова требуется наличие драйверов с поддержкой API Vulkan. И снова, увы — многим придется просто тихо завидовать более свежим решениям.
Самое обидное в том, что игры, которые невозможно запустить в Linux на древнем оборудовании, спокойно запускаются и работают в той самой, всеми ругаемой, Windows 10.
Но венцом эволюции я бы назвал инструмент для запуска от компании Valve — Proton. Непосредственно Proton предназначен для интеграции в клиент Steam как «Steam Play», что обеспечивает бесперебойную работу Windows игр и программного обеспечения в Steam, но его можно использовать и как отдельное приложение. Он обеспечивает реализации DirectX 11 (на базе DXVK) и DirectX 12 (на базе vk3d), работающие через трансляцию вызовов DirectX в API Vulkan, что позволяет снизить негативное влияние на производительность и улучшить совместимость с играми.
Это мой личный фаворит, и я постоянно его использую для запуска своих игр. В следующей части статьи мы и рассмотрим, чего же можно достичь, используя все достижения инженерной мысли и соответствующие программные решения.
Проверяем на себе
Не мудрствуя лукаво, для неподготовленного пользователя я бы рекомендовал использовать клиент Steam от компании Valve. В этом есть определенный резон, поскольку разработчики этого приложения сделали максимально комфортным жизнь начинающего линуксоида-геймера. Кстати, количество игр с поддержкой Линукс достигло впечатляющих 7,5 тысяч и постоянно увеличивается. Возможно, количество скоро перерастет в качество, и мы увидим больше проектов рейтинга ААА, доступных для запуска без различных дополнительных действий.
А что делать со сторонними играми и приложениями, если я хочу без лишних усилий запускать их с помощью Proton? Просто добавить их в клиент Steam.
Удобное и понятное меню для добавления программы
Ниже я привожу список игр, участвующих в эксперименте. И постараюсь кратко описать результаты запуска на различных системах с поддержкой Vulkan и без.
Список игр в Steam
Armada: Modern Tanks, Tank Force, The Pirate имеют нативную поддержку Linux «из коробки» да и графическая составляющая там не особо продвинута, что позволяет даже не запускать дискретную видеокарту на своем ноутбуке для комфортной игры в любой ОС.
War Thunder, Everspace сразу стартуют без танцев с бубном (есть поддержка Linux), но комфортной игру на GeForce GT 555M не назовешь из-за откровенной слабости видеокарты. Но совершенно так же игры ведут себя и в Windows. Не стану называть это недостатком, так как игры запустились и работали. То есть, игры заработают на любой видеокарте и проблемой будет только их производительность, а не возможность запуска.
Dirt Rally, Mad Max портированы командой Valve для Linux. Запускаются на любом железе, но играть на GeForce GT 555M опять невозможно. В Windows вполне сносно на минимальных настройках, ведь игры довольно пожилые и не очень требовательные к железу. А GeForce GTX 660 щелкает их как семечки, вне зависимости от ОС. На лицо проблемы потери производительности при использовании слоев совместимости Wine на не очень мощных ПК.
Lara Croft, Fallout 4 не имеют портов под Linux. Я их запускал при помощи текущей версии Proton, пробовал играть с различными версиями. Заработали игры только на GeForce GTX 660 с поддержкой новых технологий и без каких либо дополнительных телодвижений. На старом железе данные игры просто не стартуют.
World of Tanks BLITZ сперва закапризничал и отказался запускаться, чем меня крайне удивил, так как работает игра, в том числе, и на Android, а это, скажем так, дружественная система для Linux. Пришлось методично подбирать версию Proton:
Настройки, на которых удалось запустить WOT BLITZ
Заработала игра только на GeForce GTX 660. На старом железе просто стартует или выдает ошибки, жалуясь на отсутствие библиотек и тут же падает. Это обидно вдвойне, так как разработчики игры явно не чужие остальным жителям СНГ с штаб-квартирой в Минске. То есть, они прекрасно представляют себе финансовые возможности населения. Да и покупать OS Windows ради пары игрушек такое себе удовольствие, знаете ли. Проще найти альтернативу, коих развелось превеликое множество, и выбрать наиболее интересный вариант.
Совсем другое впечатление оставляют ребята из Atom Team, явно не страдающие звездной болезнью и кровно заинтересованные в продвижения своих игр. Лично я большой поклонник их творчества (серия Atom RPG создана явно с оглядкой на серию Fallout, а именно на 1 и 2 её часть) и мне вдвойне приятно, что разработчики предусмотрели возможность запуска на всех системах независимо от аппаратного обеспечения. Браво!
Перед запуском есть возможность выбора варианта обработки графики: Vulkan дает большую производительность, а OpenGL лучшую совместимость с оборудованием
Вместо заключения
Эксперименты по запуску игр можно продолжать бесконечно с переменным успехом, но определенные выводы можно сделать уже сейчас.
Времена, когда Linux был уделом бородатых юношей в драных свитерах ушли в прошлое. Не смотря на то, что эта ОС, все-таки, пока не дотягивает до удобства ванильных операционных систем, покупка компьютера без операционной системы Windows или ноутбука с какой-нибудь предустановленной Ubuntu или Deepin обычным человеком уже не кажется странным. Тем более, не кажется странным установка не пиратской копии Windows, а какого-нибудь дистрибутива GNU /Linux. Помимо финансовой составляющей, менее требовательная и более безопасная ОС может быть прекрасным вариантом как для домашнего, так и для рабочего компьютера.
А наличие программного обеспечения для запуска различных игр, в будущем, сможет увеличить популярность ОС. И когда-нибудь бесконечная петля «Linux непопулярен, потому что нет прикладного ПО и игр, а их нет потому, что Linux непопулярен», в конце-концов, разорвется.
Читайте также: