Однажды я выпустил ChimbaBench v2.2, там добавил тест GPU Heavy (v0.5) специально для нагрузки видеокарт:
|
|
|
И этот тест ну никак не хотел работать когда дистрибутивы Linux установлены в виртуальной машине, приложение просто зависало намертво и закрыть можно было только через диспетчер задач.
Можно было бы сказать что во всём виновата виртуальная машина, и вообще на реальном ПК проблем не будет якобы... Однако есть одно "НО", как-то я запустил Ubuntu 13.04 в виртуальной машине, а в ней ChimbaBench v2.2, ради прикола включил тест GPU Heavy (v0.5), каково же было моё удивление когда ничего не зависло и всё нормально заработало!
И тут я понял, дело не в том что тест GPU Heavy слишком сложен чтобы его осилил процессор без помощи видеокарты через драйвер LLVMpipe, нет, на самом деле это современные дистрибутивы Linux с современными версиями драйвера LLVMpipe не способны осилить тест GPU Heavy...
Начну с данного дистрибутива просто потому что он первый попался под руку среди множества других:
У данного дистрибутива драйвер на основе LLVM 11.0.1 (256 bits), и тест GPU Heavy невозможно запустить, приложение намертво зависает и закрыть возможно только через диспетчер задач, операционная система ничего не делает при попытке закрыть приложение крестиком, всё аналогично и в режиме OpenGL 2.0:
|
|
|
|
Короче дистрибутив не осилил...
Дальше Debian, здесь тоже драйвер на основе LLVM 11.0.1, но при этом тест GPU Heavy был запущен и работает:
|
|
|
|
И тут я задумался, а вдруг проблема Simply Linux в настройках виртуальной машины? Ведь в Debian завелось же! Но нет, я просто зря потратил время подбирая настройки виртуальной машины для Simply Linux, без вариантов зависает и висит длительное время, я даже количество ядер выделял побольше, тоже никак не помогло осилить тест GPU Heavy:
В общем Debian справился, это радует, однозначно зачёт, а вот Simply Linux незачёт.
У Fedora LLVMpipe на основе LLVM версии 15.0.0 (256 bits), и версия явно более свежая, однако это никак не помогло осилить GPE Heavy тест, увы:
|
|
|
|
|
На кнопку закрытия тоже никак не реагирует система, приложение просто намертво зависло и висит...
Настало время Суслика! И здесь всё отлично, "Суслик" осилил тест GPU Heavy! Хотя версия LLVM 11.0.1 далеко не самая новая, выходит не в LLVM версии дело, а проблема в самом LLVMpipe драйвере у других дистрибутивов:
|
|
|
|
Похоже мне нужно будет составлять таблицу работоспособности дистрибутивов.
Увы, Нео уже не тот, не осилил тест GPU Heavy, сколько бы я не ждал... Версия LLVM при этом 15.0.7 (256 bits), но разве это что-то меняет? Закрыть зависшее приложение без помощи диспетчера задач, как обычно, нельзя, даже не знаю, стоит ли дальше упоминать про этот типичный факт:
|
|
|
|
Однозначно незачёт.
Вот и настала очередь свободного дистрибутива, интересно, осилит ли он тест GPU Heavy? Да, этот дистрибутив осилил тест, правда запускался довольно долго, но запустился:
|
|
|
|
Версия LLVM 8.0 (128 bits).
Роса тоже справилась с задачей, тест запущен и работает:
|
|
|
|
Версия LLVM 12.0.1 (256 bits), идём дальше.
Пюрешка, что может быть вкуснее пюрешки? Ладно, запускаю тест и он работает! Меня это очень радует, особенно тот факт, что не возникло никаких проблем с позиционированием окна при изменении разрешения в настройках бенчмарка:
|
|
|
|
Однозначно зачёт, версия LLVM 11.0.1 (256 bits).
Далее я дёрнул старичка, и он осилил без проблем тест GPU Heavy, правда в режиме OpenGL 2.0 ибо драйвер большее не поддерживает, тем не менее:
|
|
|
|
Версия LLVM 3.4 (128 bits), а ещё можете полюбоваться на кривые обои рабочего стола, только в дистрибутивах Linux такое счастье можно нынче обнаружить, даже за Windows XP я такого не припомню...
В любом случае это зачёт.
Время Слаки! К сожалению этот дистрибутив не осилил мой тест ни в режиме OpenGL 2.0, ни в режиме OpenGL 3.0, и LLVM 13.0.0 (256 bits) не помог никак:
|
|
|
|
К сожалению зависшее приложение всё так же невозможно было закрыть без помощи диспетчера задач.
Трещотка в моём нелюбимом исполнении MATE, без помощи диспетчера задач зависшее приложение так же не удалось закрыть, думаю нет смысла объяснять что произошло:
|
|
|
|
|
LLVM версии 15.0.6 (256 bits).
Второй шанс трещотки! И она его упустила, висит намертво:
|
|
|
|
|
Дед выходит на арену и легко раскидывает всех предыдущих неудачников! Даже выдавил 2-3 FPS при разрешении 360p, когда SalentOS с более новым LLVMpipe едва 1 FPS вытягивала имея такое же количество ядер в распоряжении! Да, в режиме OpenGL 2.0 работает, но чего ещё было ждать от Galliun 0.4:
|
|
|
|
Версия LLVM 3.2 (128 bits).
Сынок 13 убунты тоже справился, и даже вытянул OpenGL 3.0 версию теста, к качеству изображения конечно есть вопросы, есть засветы которых быть не должно, но оно работает:
|
|
|
|
Драйвер Gallium 0.4, версия LLVM была 3.8 (128 bits).
А вот современный малыш к сожалению не справился с тестом GPU Heavy, ещё обновлениями назойливо надоедает, хотя доступ к интернету заблокирован, а в настройках обновления максимально отключены, вот вам и современные дистрибутивы:
|
|
|
|
Однозначно незачёт, кстати, версия LLVM 13.0.1 (256 bits).
Далее идёт богатырь, но силёнок оказалось маловато и GPU Heavy тест одержал верх, приложение висит намертво, и без диспетчера задач не закрыть:
|
|
|
|
В общем никак, нужно больше кушать каши... Версия LLVM... Да кому она уже нужна? Ладно, версия 12.0.1 (256 bits).
Клон настоящей Windows выходит на сцену! И сразу же уходит с позором:
|
|
|
|
|
Версия LLVM 15.0.7 (256 bits).
И на этом пожалуй хватит, остались только 32 разрядные дистрибутивы, но их я не буду уже проверять...
Пришло время подвести итоги:
Итого среди современных дистрибутивов 8 провалили тест и 4 прошли, то есть провалило тест в 2 раза больше современных дистрибутивов чем прошло, Trisquel 11 MATE/KDE я посчитал как один дистрибутив, и Parabola LXDE я не учитывал так как он не совсем современный.
Среди древних дистрибутивов 3 из 3 прошли тест, как и Parabola ещё не совсем древняя, но уже и не совсем современная.
Если грубо подсчитать без учета самых древних дистрибутивов, то выходит 9 провалов на 5 успехов.
Каков из этого всего можно сделать вывод? Я могу предположить только два варианта:
1) Разработчики ряда современных дистрибутивов откровенно накосячили, как следствие проблемы с работой приложений использующих встроенный в дистрибутив драйвер LLVMpipe.
2) Разработчики ряда современных дистрибутивов собрали/использовали драйвер LLVMpipe который не удовлетворяет спецификации OpenGL 2.x/3.x, как следствие зависание при попытке запустить тест GPU Heavy требующий чуть больше чем самый минимальный базовый функционал OpenGL.
В любом случае это проблема, и она существенная, особенно если дистрибутив нужно установить на ПК без полноценной видеокарты. В таком случае драйвер LLVMpipe обязан помогать используя процессор для работы, но на практике всё очень печально вышло, драйвер который по сути должен был заменить нефункциональную видеокарту сам оказался нефункциональным в ряде дистрибутивов...
Благодарю за внимание, больше интересных статей в блоге Hard-Workshop.