Sign up - or - Login

Recover password
×

To recover your password, you must enter the username or e-mail that you used during the registration. After that, a mail with a security code will be sent to your inbox.

Your username or e-mail :

KorsakoviaKorsakovia

Мод рассказывает нам историю человека по имени Кристофер, страдающего редким синдромом Корсакова. Похоже, что Кристофер ...

20/09/2009
Stat ( models ), pcs.

Представители Valve раскрыли подробности оптимизации движка Source под OpenGL


  • Description
  • HOW TO INSTALL

Valve раскрыла подробности оптимизации движка Source под Linux

Представители Valve раскрыли подробности оптимизации движка Source под OpenGL


Views : 1188 ( +2 )
Downloads : 0
Uploader : Cep}|{
Created : 09/04/2012 2:31:35 PM
Rating :
 ( 0 ) 
Share :
Tags : ubuntu, linux, L4D2, Left 4 Dead 2, steam, valve, OpenGL


Following translations are available : | russian |

На конференции SIGGRAPH компания Valve публично продемонстрировала портированный для Linux игровой движок Source, на примере запуска в Linux игры Left 4 Dead 2. Одновременно была показана презентация, в которой были раскрыты подробности проведённой оптимизации, в результате которой движок Source с компонентом рендеринга через OpenGL, запускаемый в Linux, продемонстрировал более высокие результаты производительности, чем при использовании Direct3D при запуске игры в Windows 7 (315 FPS против 270 FPS). Докладчиком по данному вопросу выступил Рич Гелдрих (Rich Geldreich), автор открытой библиотеки Crunch, ныне работающий в Valve.

Наиболее интересные моменты:

  • В среднем, на видеокарте NVIDIA GeForce GTX 680, при использовании OpenGL движок на 11% быстрее, чем при использовании Direct3D. Предполагается, что можно отыграть еще около 5% путем оптимизации транслятора вызовов Direct3D в OpenGL.

  • Наиболее удивительным фактом является то, что движок работает быстрее, несмотря на то, что рендеринг производится путем транслирования Direct3D вызовов и абстракций в вызовы и абстракции OpenGL. При этом есть дополнительный слой — транслятор, что однако не помешало итоговой конструкции работать быстрее оригинала. Транслятор реализует маппинг Direct3D 9 в OpenGL практически 1 в 1.

  • В случае многопоточных видеодрайверов паразитная нагрузка от транслятора и OpenGL соотносится как 50/50. Однако, если видеодрайвер однопоточный, в вызовах OpenGL может быть потрачено до 80% времени, а в трансляторе лишь 20%. Отмечается, что компания NVIDIA проделала много работы по организации многопоточности в своем драйвере.

  • Valve сотрудничают с компанией Intel (которая недавно как раз представила очередную порцию изменений в драйвере по просьбе Valve), AMD и NVIDIA. Изначально у выполняющей работу по портированию для Linux команды Valve был довольно ограниченный опыт. В основном помогла тактика интенсивного профилирования с анализом где сколько времени тратится на различные вызовы. Целью было учесть каждую микросекунду.

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

  • Кроме всего прочего, был использован инструментарий от RAD Game Tools под названием Telemetry.

Некоторые оптимизации:

  • поддержка многопоточности в режиме OpenGL; vубрано большинство вызовов glXMakeCurrent;

  • исправлено использование pthreads;

  • сокращен оверхед трансляции D3D→GL путем переписывания самых горячих мест;

  • улучшен dirty range tracking;

  • добавлен отдельный однородный массив для базовых матриц;

  • улучшено обновление динамических буферов и оптимизации настроек компилятора. Наиболее полезными в плане улучшения производительности было использование опции компилятора «-ffast-math» и отключение опции «-fPIC».

valve_l4d2_01_lrg.jpg valve_l4d2_02_lrg.jpg valve_l4d2_03_lrg.jpg valve_l4d2_04_lrg.jpg valve_l4d2_05_lrg.jpg valve_l4d2_07_lrg.jpg valve_l4d2_08_lrg.jpg valve_l4d2_09_lrg.jpg valve_l4d2_10_lrg.jpg valve_l4d2_11_lrg.jpg valve_l4d2_12_lrg.jpg valve_l4d2_13_lrg.jpg valve_l4d2_14_lrg.jpg valve_l4d2_15_lrg.jpg valve_l4d2_16_lrg.jpg



Similar1. Hitboxes - One change that people may have missed, and whose impact might be mis-attributed to other factors, is that the hitboxes in CS:GO are smaller.
2. Модели оружия и игроков для Day of Defeat - Модели оружия и игроков для DOD
3. Всемирно известная компьютерная игра Half-Life стала реальной - Московской области пройдет масштабный пешеходный квест по мотивам всемирно известной компьютерной игры Half Life.
4. Mercy Hospital Heist released for PAYDAY - Mercy Hospital Heist released for PAYDAY
5. Карты и оружия для CS и CSS - Немного карт для Counter-Strike и Counter-Strike Source и немного моделей оружия для CS
6. Black Mesa Source - Выход Black Mesa Source
7. World War BOO! - World War BOO!
8. Steam Guard для обмена - Если у вас уже включен Steam Guard, от вас ничего не требуется.
9. BIG PICTURE - Теперь Steam есть и в телевизоре - Big Picture вышел из бета-версии.
NitrO 09/04/2012, 8:39:49 PM commented :
#1
А интересно то как )))
You cannot comment, because you are not logged-in.
    rus_mpartizanskaya
    Counter-Strike 1.6rus_mpartizanskaya
    rus_metro
    rus_metro
    "CSGO PAX 2011" MOD for CSGO
    Counter-Strike Global Offensive
    KAYF-LIFE: Complete Edition
    Half-Life 2KAYF-LIFE: Complete Edition