Windows vs Linux. Сравниваем производительность систем при помощи бенчмарков
Сегодня мы протестируем операционные системы Windows 10 и Arch Linux c графической оболочкой Gnome 3 на одинаковом железе в играх и бенчмарках и посмотрим, что из этого выйдет. Все системы полностью оригинальные. Тесты проходили по 3 прогона.
Тестовый пк
- Процессор: Intel Pentium G4560 2/4 3.5 Гигагерц
- Видеокарта: Nvidia Geforce 1050 2Gb
- Оперативная память: 2x4 2400
- Материнская плата: H110M-DGS R3.0 Bios 7.50
Сравнение систем по потреблению при старте
Windows — 115-146 процессов при пустом старте, 1.5 Гигабайта потребления, система и драйверы обновлены.
Archlinux — 56 процессов при пустом старте, 500 мегабайт потребления, система и драйверы обновлены.
Для более честного сравнения для системы на основе Linux было выбрано тяжёлое графическое окружение (DE) Gnome 3, известное своими костылями. Но не стоит забывать о существовании оболочек, потребляющих менее 100 мегабайт оперативной памяти. Оптимизаций никаких не производилось кроме установки для Linux lqx ядра и фоновых служб zramswap и anonicy.
Средства записи и мониторинга
Для записи игр и тестов в Windows использовалась программа Bandicam с быстрым кодеком nvenc и контейнером mp4, что минимально (5-10%) влияют на потери, а такжеMSI Autoberner для мониторинга загруженности ресурсов.
Для записи игр и тестов в Linux использовалась программа SimpleScreenRecorder c аналогичным кодеком и контейнером для минимизации влияния средства записи и разницы, а также Mangohud для мониторинга загруженности ресурсов.
Программы простые и не требуют глубокого понимания или настройки. Игры выбирались с учётом встроенного бенчмарка и являются лицензиями.
Выводы делаю, напрямую сравнивая результаты бенчмарков на минимальных и максимальных параметрах графики с выводом графика времени кадра.
Синтетический тест
Синтетический тест Geekbench 5 оценивает производительность ЦП с работой в разных задачах — сжатие, распаковка, обработка, серф и прочее веселье.
Никакого открытия для себя я не сделал. Давно известно, что планировщик работы с центральным процессором в системах на базе Linux реализован лучше.
Тестирование в играх
Открывает наше игровое противостояние прибежище всех раков и причина попадания в армию — Dota 2.
Тест для меня не показывает что-то новое. Отчётливо видно излишнее потребление оперативной и видеопамяти фоновыми процессами системы Windows. Преимущество Linux составляет от 5 до 20 кадров в зависимости от сцены, что нельзя свести на погрешность теста.
Тестирование на максимальных настройках успешно показывает, что разницы в FPS нет, но система Windows больше просаживается во время ожесточённых моментов до 22 FPS, а потребление оперативной памяти значительно возросло. Archlinux обеспечил плавность и играбельность в любых моментах.
Вторым героем теста становится улица моего детства — Counter-Strike: Source.
Минимальные настройки:
Сравнение не совсем честное, потому что тестирование идет на уровне разных графических API. Встроенный графический бенчмарк показывает преимущество DX9 над OpenGL, но на самой карте разница ровно противоположная — OpenGL рисует больше кадров.
Максимальные настройки:
Максимальные настройки графики показывают уверенное преимущество DX9 в плане максимального FPS, но странные подёргивания и ослепляющая желтизна на карте вызывают недоумение.
Третьей игрой для теста станет симулятор подростковых фантазий — Tomb Raider 2013.
Максимальные и минимальные настройки, а также сравнение с DXVK.
Интересные выводы можно сделать по данному ролику. Например, что OpenGL почти мёртв в плане соревновательной части с DX9-12, где идёт упор на максимальный FPS, а не удобство программирования или платформы.
Часть теста с упором в GPU подтверждает предыдущие тесты о преимуществе Dx11 в сравнении с OpenGL и проигрыше Windows-платформы по сравнению с Linux в плане работы с процессором. На это указывает преимущество в минимальном FPS и проигрыш в максимальном.
C OpenGL разобрались. А что, если противопоставить две Windows-версии игры, но одна из них будет запущена под Linux через обёртку DXVK? Результаты почти одинаковы! Мне удалось запустить Windows-версию игры под Linux. Она показывает схожую игровую производительность, а потребляет мой ПК при этом меньше ресурсов.
P.S. Опять этот странный эффект желтизны у DX — проблема DX?
Выводы
Современный Archlinux — это система, потребляющая меньше ресурсов ПК по сравнению с нынешней Windows. Это способствует лучшей производительности в играх с поддержкой Vulkan и равную производительность в проектах, запускающихся через обёртку DXVK. Если вы хотите считать, что ваш ПК — это только ваш ПК, не париться по поводу вечной слежки и всегда иметь всё самое свежее, то Linux — это ваш бро.
P.S. Автор знает и понимает, какие проблемы существуют c античитами, какие способы запуска игр и проблемы есть. Также автор напоминает, что тест производился без использования оптимизаторов и прочих ускоряющих вещей, что даёт надежду на ещё больший выигрыш в Linux.
109 комментариев
Добавить комментарий
Я убил на эти тесты 3 дня…
Но, к сожалению, так как я спидранер, на пингвина нет таймера, поэтому именно спидранить придется на Окнах…
И проверяйте, пожалуйста, посты перед публикацией на орфографические и стилистические ошибки. Можно пользоваться text.ru, glvrd.ru, штатными средствами Ворда. Или попросите друзей вычитать текст. В ближайшем будущем мы будем возвращать посты с множеством ошибок на доработку или пропустим, но не отправим пост в Дзен, и вы потеряете просмотры.
Да, спокойно можно вызвать. Если бы я делал полную оптимизацию, то даже в проигрышном OpenGL — Linux победил бы.
Более подробно тут. И в линуксе все спокойно альтапается — даже лучше — без зависаний х0
https://docs.google.com/document/d/1IjTxl7LaPKJyRoLpGEhm4ptBhob_jRgLLQpMugS7qe8
sudo apt upgrade
https://www.youtube.com/watch?v=cLPPt2dVQp0
Не надо мешать в одно недо ос, которая обрезана до ядра и добавлен минимум для работы нужного софта на конкретном железе и универсальную ос, которая предназначена именно для взаимодействия с человеком.
Вы (большая часть линуксоидов) не принимаете одну важную вещь. Линукс не на той стадии, на которой стоит его сравнивать с виндой. Винда прошла более большой путь за это время. И основная масса вещей, которые по-вашему бесполезны, не нужны или «мусор» добавлялись с опытом.
//www.ixbt.com/live/games/archlinux-proizvoditelnost-prevyshe-vsego.html
Windows — это монолитная система закрытого типа, что тянет за собой зависимости, начиная с самых первых своих версий, что делается в угоду совместимости и поддержки старых программ. Понимаете, к чему это ведет? Мы собираем мусор со всех версий и вынуждены переносить её в самую новую, lol, да это как баги Morrowind в Fallout 76.
Наполненность мусором ведет к лишним зависимостям, что выражаются в ненужных модулях системы, таких как Реестр, и ведет к раздуванию системы и лишнему потреблению ресурсов компьютера, это, кстати, одна из причин проигрыша Windows на серверном рынке, но я отвлекся.
Установка программ выполняется в исполнении в основном exe файлов, что уже несут в себе все необходимые компоненты для работы программ, это опять же удобно, но снова, привет мусор. Подводя итог под этим кратким описание просто хочется сказать, что, несмотря на всю свою поддержку, распространенность и простоту — Windows является престарелой красавицей, что пытается молодиться.
Что в реестре устаревшего? Централизованная система хранения настроек?
А в курсе, что это и позволяет легко делать слепок конфигурации всей ос для восстановления? А что это удобно для стороннего софта, который может получить настройки стороннего ПО для интеграции например.
А в курсе, что реестр — это всего лишь набор файлов. А что для каждого юзера есть своя ветка в отдельном файле и что она в среднем весит не более 10мб.
По вашему топику и комментария видно, что вы совершенно ничего не знаете о работе винды.
Сначала пишите о том, что тянутся зависимости с вин95, а потом пишите, что это для совместимости. Да, бл, для совместимости. Это между прочим то, чего нет в Линуксе от слова «совсем».
И не надо лезть с проблемами из линя в Винду. Зависимости — это проблема линя, а не винды. В Винде все есть из коробки.
Те или иные службы или процессы обеспечивают тот или функционал. А значит он нужен. Сами файлы не мешают работе ос, гений.
ставите любого пингвина, копируете папку home, для созданного пользователя, в любое место, на флешку, в облако, куда угодно. А если надо накатить стандартные настройки, просто обратно копировать с заменой, и, будет у вас «слепленная» из «слепка в самом начале», и не надо даже куда-то залазить, настраивать точки востановления, просто CTRL+C, CTRL+V.
По реестру как зар и большой минус в том это это централизировання система. И получить доступ из реестра можно ко всему, что хранят АБСОЛЮТНО все приложения. Вы зайдете на прос сайт, получите бекдор, ломанут реестр получат доступ ко всему, в то время как на пингвине, из-за того, что файлы настроек и данных приложения может читать только приложение, кроме суперпользователя (уровень доступа выше чем root, по сути системный уровень достпа), и еще учесть права на каждый файл свои наборы прав. Пэтому и не возможно даже утсановить и внедрить вирус в пингвина, если пользователь сам не введет в терминале пароль и в GUI окошке, но если не умеешь пользоваться и ставишь фигню это другой вопрос.
А если б думали головой, то поняли бы, что ни кто не запрещает ни кому использовать ини файлы. Тем более, что все так и делают, чтобы хранить свои параметры или инфу.
В разы сложнее, труднее с переносом — это и есть основная причина внедрения его.
ВинХР тоже формально не запретили, но на практике — запрет ещё тот.
Ну и надёжность всей этой тряхомудрии, где всё обязано зависеть от всего, усложнение ради усложнения — соответствующая.
О каких зависимостях вообще речь? Что от чего зависит? Что вы вообще несёте? Какое усложнение?
Расскажи о конфигурации ос в десятке разных файлов. Давай поговорим об этом, раз ты понял тему.
Ну-ка, о гений, расскажи мне о том, какие «компоненты» входят в любой установщик приложения.
Так вот я тебе объясню.
1. Работа приложения может быть в рамках одного ехе. И всё. Да, даже очень крупные приложения. Потому что ос позволяет и гарантирует, что определенная часть апи винды будет доступна в этой ос.
2. Как правило в установщиках находятся компоненты, которых нет в ос, личные или строение от ос.
Ты их отключаешь и только одна перезагрузка они снова все работают службы, которые тебе не нужны! Такие как служба биометрии? Службы для сенсорных экранов! Служба для определения место положения твоего, да и много других служб которые просто даже после отключения произвольно включаются и прожирают ресурсы твоего ПК! В то время когда ты не пользуешься ими! Linux во множество разных оболчках есть и приблеженных к Windows причем для упрощения знакомства с новой OS.
Так же вполне возможно что DX выйдет в версии под линукс, да и следить за вечным обновлением драйверов не приходится на Linux они ставятся один раз и уже оптимизированы достаточно хорошо! Так же как под Windows раза 2-3 в месяц обновления мы исправили то мы исправили это и так вечно по кругу они исправляют исправляют, а потом не хотите перейти на новую версию железа, на новую версию Windows и продолжают снова пилить и пилить, да и устранять свои ошибки, добавлять кучу нового не нужного хлама без ведома юзера, не проще было бы спросить у юзера нужно ли ему это или нет ?!
Короче ничего нового, лапчатые как обычно выдают желаемое за действительное.
И что за древние игры и ультранизкие настройки?
А на высоких уверен вскроются проблемы.
Мы включаем игру и повышаем уровень графики до средних, счетчик фпс показывает нам 75 кадров, а загрузку gpu 100%. Вывод — процессор способен выдавать больше количество fps, ибо его ограничивает gpu, что не может отрисовать больше, хотя подсчеты процессора возможны.
Вариант 2.
Мы включаем игру и выкручиваем уровень графики на средние, счетчик фпс показывает 75 кадров, а загрузку gpu 10%, мы выкручиваем уровень графики на высокие — загрузка gpu становится 100%, но количество кадров не меняется.
Смекаешь? Так это работает, а не как 2 стиральные машины с разными оборотами, вы представляете их как целостное сбалансированное изделие, а они взаимозависимые модули под разной нагрузкой.
То есть ты мне предлагаешь блочить FPS до 70 и тестировать ???
https://wiki.archlinux.org/index.php/NVIDIA#DRM_kernel_mode_setting
Если ты называешь поддержкой вулкана отсутствие работаспособности на целой серии ОС, то я поздравляю тебя.
Реализация drm через хуки связана лишь с убогостью закрытой реализации у nvidia.
Drm и вулкан не связаны. Vulkan лучше работает под windowdd -WTF.
Vulkan это продолжение mantle, что появился в результате сотрудничества amd и производителей консолей, создан как низкоуровневый Api и продвигается как замена OpenGl с философией работы на любых устройствах вне зависимости от уровня карты. Это низкоуровневый — ему плевать на системные библиотеки.
Никаких хуков не было, никаких оптимизаций не было кроме установки lqx ядра.
Ау — проснись, что ты несешь. Асинхронные вычисления появились с стандартизацией шейдерных потоков, еще в бородатой 400-500 серии и никак не связаны с появлением вулкана.
Реализация вулкана за обе щеки, как и dx полноценный стала у nvidia после 2000 серии, ибо до этого её архитектура карт была рассчитана на приоритетное выполнение dx9-11.
Ага — скажите это майнерам, что используют карты amd, ибо выхлопа больше.
Нвидиа и интел используется в графических фермах лишь из-за того, что у амд нет на данный момент ничего стоющего из проф решений.
И причем твои майнеры тут, господи. Еще один. Мне это напоминает разговоры в сообществе моделлеров, где школьники которые рендерят 40к полигонное говно на амд и кричат об эталонах. В то время как работники индустрии крутят пальцем у виска читая весь этот бред.
Я не вижу нигде что бы линукс использовался в тяжелой промышленности, сапре или вычислениях на вулкане. Потому что внезапно винда лучше с этим справляется. О чем тут еще говорить? Я в первом комменте тебе уже сказал, современные игрушки на линуксе без танцев с бубном ты не запустишь.
Еще раз, аниматоры, проф. прости господи художники и тд не работают чаще всего с тяжеловесными вещами. Индустрия не ограничивается играми. Есть киноиндустрия, есть тяж.промышленность и тд. Которая и составляет костяк финансов для компаний производителей. Господи да открой ты интервью с любой крупной компанией. Увидишь там мелкософтовские surface моноблоки с адобовским фотошопом, майкой, збрашем, 3д максом и тд.
Существуют не только говнокодеры и сисадмины, но еще и программисты 3д графики. Моделлеры и художники не только в gamedev существуют но и в промышленности где им каждый день приходится иметь дело с 5-6 рендер движками, писать свои собственные и работать как с програмными апи так и с низкоуровневыми языками. Ты дома можешь в чем угодно рендерить, рисовать и использовать любую Ось. Но придя в индустрию ты столкнешься с пайплайнами и софтом который принят в индустрии по тем или иным причинам. Ты не будешь рисовать в гимпе и моделить в блендере потому что они не подходят для промышленного софта. Потому что блендер захлебывается на моделях больше 800к полигонов, потому что гимп вешается после 60 слоев. Потому что стандартизация сейчас fbx а блендер не может нативно в fbx.
Тоже самое и с вулканом. Никто не станет писать рендер ферму или использовать шейдеры через костыли в линуксе ибо винда работает с этим из коробки без всякого гемора.
Тест на видеокарте в зависимости от какой будет показывать равные или лучшие результаты.
Где результаты тестов — на утупе??
На 4 гигах сейчас можно поиграть в снайпер элит, разные онлайн игры.
1.1) а потребляют почти в 1,5 раза больше
Единственное применение — часть приложений, которым надо больше 2, но меньше 3ГБ, причём 3ГБ можно получить и в х86.
А 3ГБ-я х64 программа в версии х86 жрала бы 2ГБ примерно, и тут клин.
Чушь маркетинговая.
(если Вам и правда интересно, конечно....:) )
И инструкции к доп. пространству как относятся?
Забыли?)
Да? А мужики-то не знают…
С 64битными типами данных вы знакомы? И как раз таки в играх ЕСТЬ 64 битные данные, есть инструкции х64 битных процессоров.
SimpleScreenRecorder
Мдааа… про OBS — лидера опен-сорс в данном сегмента не знаем?
Так вот к чему эта история, *nix системы менее прожорливы, более оптимизированы чем форточки, причем любые я девопс инженер со стажем 5 лет и скажу вам так, форточка доживает свой век и будущее за никсами, начиная от бытовухи и кончая геймингом.
Некоторые игры просто не запустяться, это во первых. Pubg, Apex, Destiny 2, Warhammer Vermintide, paladins это только маленький кусочек того что никаким образом нельзя запустить через тот же протон.
Во вторых, во многих играх, которые пойдут — ваша гипотетическая 1660 превращается в 1650 Super по производительности.
Проблема тут в том, что SysCall'ы достаточно долго пытаются имитировать так, чтобы это не спровоцировало появления явных уязвимостей, которых и без этого много. Сначала пытались связаться с разработчиками, чтобы они добавили поддержку, они же либо отмалчивались, либо кормили завтраками, некоторые же откликнулись на просьбу. Поэтому достаточное количество игр не запускается, либо не пускает в онлайн из-за несовместимости с системами защиты.
Сейчас, насколько я знаю, имитацию всего этого дела пытаются провернуть на стороне wine + патчей ядра, что продвигается не так уж и быстро (патчи ядра нужно согласовывать, просто так их не запихнёшь, их нужно оптимизировать, защитить и тп.), хотя успехи в запуске отдельных игр уже есть.
По поводу второго: а вот как считаешь, будет ли прослойка трансляции всегда давать такую же производительность, как и нативно исполняемый код? Компания зла (или добра, чёрт их уже разберёт) под линукс системы свой DirectX делать не будет, поэтому остаётся только надеется на трансляцию в вулкан или нативную поддержку вулкана приложением. OpenGL, конечно, тоже хорошо, но он в плане производительности достаточно плох.
Для того чтобы программа нормально работала на какой-либо системе или железе, она должна быть под эту систему или железо написана и оптимизирована, ну или скомпилирована нормально на худой конец. Когда дело касается трансляции кода, то тут уж извините — потери происходят за счёт отвода части производительности под обработку кода, так как происходит JustInTime. Да и сами по себе библиотеки в окнах далеко не вылизаны до блеска (как и много где), а тут ещё и не нативно работают.
Добавить комментарий