Valve: Source Engine работает на Linux быстрее, чем на Windows
16 Комментарии: 0

Valve: Source Engine работает на Linux быстрее, чем на Windows

Автор: ChiefKeef
Дата: 03.08.2012 14:59
статья пока не вызвала эмоций
Платформы:
Категории:
Теги:
  • Комментарии
  • Форум
  • Заряди свой предзаказ: Microsoft представила новый рекламный ролик Xbox Series X

    31 22.09.2020 23:57 от SpikeLeeAngel
  • Малышка больше, чем вы думаете: Pазмеры PlayStation 5 от Sony сравнили с другими консолями

    82 22.09.2020 23:54 от videoman
  • Persona 6 и Yakuza 8 эксклюзивно на Xbox Series X? В сети обсуждается безумный слух о покупке Sega корпорацией Microsoft

    110 22.09.2020 23:53 от Nir0on
  • Предзаказ PlayStation 5 предлагают за 100 тысяч рублей - перекупщики наводнили торговые площадки

    66 22.09.2020 23:52 от videoman
  • "Что скрывает лед?": Новый трейлер Destiny 2: За гранью Света посвятили Европе - заснеженному спутнику Юпитера

    2 22.09.2020 23:51 от Nexikus

Одним из существенных факторов в создание хорошого игровой опыта является пропускная способность. В данной заметке мы обсудим некоторые вещи, которые мы (Valve) узнали о производительности наших игр, работающих на Linux. Любой разработчик скажет вам, что производительность - это сложная штука. Интереса ради, мы сконцентрируемся на следующей конфигурации:

Мы используем временно 32bit-ную версию Linux, но позже будем работать на 64 bit. Left 4 Dead 2 запущенный на ОС Windows 7 с драйверами Direct3D выдает 270.6fps. Данные полученные на основе внутреннего теста. Когда мы работали с Linux, первоначально игра выдавала всего лишь 6fps. Впрочем это характерно для портов на любой платформе. Улучшение производительности можно разделить на несколько категорий:

> Модификация наших игр для улучшения работы с kernel

> Модификация наших игр для улучшения работы c OpenGL

> Оптимизация графических драйверов

Примером оптимизации первой категории можно назвать смену нашего распределителя памяти для использования более подходящих функций Linux. Это было достигнуло путем внедрения в Source Engine небольшого блока для работы под Linux. Второй категория будет включать в себя снижение накладных расходов для работы с OpenGL и расширение нашего визуализатора новыми интерфейсами для лучшей инкапсуляции OpenGL и Direct3D.

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

После всего этого, Left 4 Dead 2 выдает 315fps на Linux. То факт, что Linux-версия работает быстрее, чем версия для Windows (270fps) кажется немного нелогичным, учитывая большое количество времени, которое мы потратили на оптимизация игры под Windows. Однако это говорит об эффективности ядра операционной системы и OpenGL. Интересно, что в процессе работы с поставщиками оборудования, мы также ускорили работу OpenGL для Windows. С такой конфигурацией Left 4 Dead 2 выдает 303.4 FPS на Windows.

OpenGL vs. Direct3D на Windows 7

Этот опыт наводит на вопрос: почему версия игры на OpenGL работает быстрее чем Direct3D на Windows 7? Похоже, что это не связано с многозадачностью. Мы делали довольно тщательные анализы, и дело в том, что это вызвано несколькими дополнительными микросекундами задержки в группах в Direct3D, которая не влияет на работу OpenGL на Windows 7. Теперь зная, что железо способно на более высокую производительность, мы вернемся и выясним, как смягчить этот эффект в Direct3D.

Работа с производителями железа 

Мы работали с NVIDIA, AMD и Intel чтобы улучить графическую производительность драйверов на Linux. Со всеми было приятно работать, и они все отправили к нам своих инженеров, чтобы помочь нам в анализе получаемых данных. Мы моментально нашли все ошибки и баги, и это было круто собрать в одном месте людей разбирающихся в игре, рендеринге, драйверах и железе. Это отличный пример того, каких результатов можно добится благодаря тесному сотрудничеству между  разработчиками ПО и железа, которое принесет пользу сообществу Linux в целом.

Выберите эмоцию которую вызвал материал:
Вам понравился материал? Расскажите о нем друзьям!
Комментарии (0)
Чтобы оставить комментарий Вам необходимо авторизоваться.
Еще нет аккаунта? Регистрируйтесь!