LINUX.ORG.RU
ФорумTalks

Иан Романик из Intel о Valve Linux Team, патчи для улучшения производительности Left 4 Dead 2 с драйвером Intel

 , , ,


2

3

Last week my team and I spent some time in Bellvue working with Valve's Linux team on their port of Left 4 Dead 2.

It was the most successful work trip I've ever had. The guys at Valve were amazing to work with. They are sharp, driven, and have an aggressive plan. Looking at how far they've come and the short amount of time in which they've done it, I have every confidence that they're going to kick their plan right in the butt. It's going to be a good time to be a Linux gamer.

We had three main goals going in:

  • Help them tune their game for our driver / hardware.
  • Find out where our performance is lacking.
  • Find out what OpenGL features they need / want.

I think we scored on every point. We helped them find some performance bugs in their vertex buffer management (which also affected other GPUs / drivers) and some places where the accidentally triggered shader recompiles. This gave some healthy performance improvements.

We also found some areas where our driver really, really needs to improve. They have a couple shaders that devolve into register spilling nightmares. There are also a few places where we eat way, way too much CPU. A lot of these problems mirror issues that we've seen with other game engines (e.g., Unigine).

These have been a lot easier to diagnose on L4D2 because we have access to their source code. Being able to take a profile that shows times in the driver and in the application makes a world of difference. Being able to tweak little things in the app (what happens if I do this...) is also helpful for diagnosing performance problems. Eric has already started landing patches for L4D2 performance, and there will be many more over the coming weeks.

The funny thing is Valve guys say the same thing about drivers. There were a couple times where we felt like they were trying to convince us that open source drivers are a good idea. We had to remind them that they were preaching to the choir. :) Their problem with closed drivers (on all platforms) is that it's such a blackbox that they have to play guess-and-check games. There's no way for them to know how changing a particular setting will affect the performance. If performance gets worse, they have no way to know why. If they can see where time is going in the driver, they can make much more educated guesses.

We also got some really good feedback about features. The biggest feature they want is better output from GL_ARB_debug_output. They really want to know when they do things that fall off performance paths, trigger shader recompiles, etc. We hacked out some initial versions of this, and it was a big help. Some patches in that area should hit the mailing list soon.

They're also interested in what they call «smart vsync.» Swaps that are scheduled soon enough will have vsync, and the application will be vsync limited. Swaps that are scheduled too late happen immediately. In their words, «Tearing is bad, but dropping to 30fps is worse.» On GLX, we can expose this with GLX_EXT_swap_control_tear.

Отсюда

это они случайно запилили свой вариант адаптивного всинка?

Thero ★★★★★
()

Да, открытые исходники бывают очень полезны и могут сильно сэкономить время.

Relan ★★★★★
()
Ответ на: комментарий от djzielony

То есть интел бесплатно фиксит баги в Валвовском движке?

Ага, а валв бесплатно делает то же самое в интеловом драйвере. Это называется совместная работа и общие интересы.

madgnu ★★★★★
()

Я так понимаю Valve Linux Team полезна оказалась не только для переноса продуктов на линукс, но в целом.

Quasar ★★★★★
()

вот это настоящая история успеха, а не всякие там «Valve сказал, что очередное пыщ-пыщ будет под линукс».

dikiy ★★☆☆☆
()

может таки месу до ума доведут.

Novell-ch ★★★★★
()
Ответ на: комментарий от ZuBB

Ну я интелом не пользуюсь, просто рад за интеловодов, вроде там единственный косяк был, как раз с vsync.

Под праздником я имел ввиду нормально работающую графическую подсистему и кучу софта/игр в линуксе =)

ekzotech ★★★★
()
Ответ на: комментарий от Quasar

Очевидно, что открытие сырцов как видеодрайверов, так и значительного числа игр, могло бы положительно сказаться на обоих отраслях. Но пока мы видим лишь такие единичные случаи сотрудничества отдельных компаний.

Sadler ★★★
()

романтик из intel о valve linux team

alpha ★★★★★
()

я очень обрадовался когда валве сказала что линукс стим играм быть, не только потому, что хочу давно переиграть хл2 (а вайном не пользуюсь, не знаю, предвзятое у меня к нему отношение), а еще потому, что уверен был, что драйвера под линукс для видеокарт будут делать нормальные наконец

wwwsevolod
()

Значит ли это, что на своей псевдовидеокарте 3150 я смогу с комфортом валить зомби?

f1xmAn ★★★★★
()
Ответ на: комментарий от f1xmAn

Ну а что ты хотел-то? Если забыть, что для обрезка X3150 реализован только OpenGL 1.5, то остаётся Atom вместо процессора, который даже минимальные требованиям ну никак не удовлетворяет.

Lighting ★★★★★
()
Ответ на: комментарий от RussianNeuroMancer

Ну Столлман как всегда оказался прав же :)

winddos ★★★
()

> We also found some areas where our driver really, really needs to improve. They have a couple shaders that devolve into register spilling nightmares. There are also a few places where we eat way, way too much CPU. A lot of these problems mirror issues that we've seen with other game engines (e.g., Unigine).

ATi-проблемы.

ZenitharChampion ★★★★★
()

Хоть какой-то толк от валва, так как сам по себе l4d2 не нужен.

AiFiLTr0 ★★★★★
()
Ответ на: комментарий от wwwsevolod

> я очень обрадовался когда валве сказала что линукс стим играм быть, не только потому, что хочу давно переиграть хл2 (а вайном не пользуюсь, не знаю, предвзятое у меня к нему отношение), а еще потому, что уверен был, что драйвера под линукс для видеокарт будут делать нормальные наконец

Если у тебя NVIDIA, то ты можешь играть точно так же, как в Windows. Просто в winecfg выстави библиотеку gameoverlayrenderer как disabled, а в wine regedit сделай UseGLSL = disabled. И всё - игра запустится и в ней будет работать абсолютно всё.

Дополнено: после предыдущего сообщения это сообщение смотрится немного странно - уточню, почему «если у тебя NVIDIA». На ней работает трюк с UseGLSL, ускоряющий игру - конкретно в HL2 при резком движении мышью пропадает лаг. Но и на ATi играть конечно можно.

ZenitharChampion ★★★★★
()
Последнее исправление: ZenitharChampion (всего исправлений: 1)

Может, на радостях, они ещё и сорцы Сорца откроют?

Nebuchadnezzar ★★★★
()

Ненужно_лучшебы_$something_different_пилили!!

И еще одна стандартная фраза: «валв что только не делает лишь бы ХЛ3 не выпускать»

Behem0th ★★★★★
()

главное чтобы в итоге не получилось вот так =)

punya ★★
()
Ответ на: комментарий от Thero

по ссылке вообще статья от чувака из невидии

Он из Intel, даже в заголовке треда это написано.

madgnu ★★★★★
()

После прочтения.

- «The funny thing is Valve guys say the same thing about drivers. There were a couple times where we felt like they were trying to convince us that open source drivers are a good idea. We had to remind them that they were preaching to the choir. :) Their problem with closed drivers (on all platforms) is that it's such a blackbox that they have to play guess-and-check games. There's no way for them to know how changing a particular setting will affect the performance. If performance gets worse, they have no way to know why. If they can see where time is going in the driver, they can make much more educated guesses.»

Все больше людей признают что закрытый драйвер ненужен.

- Intel Linux engineers have access to the Left 4 Dead 2 source-code from Valve to help them in their optimization efforts.

Хотеть чтобы Мареку дали доступ:)

Behem0th ★★★★★
()
Ответ на: комментарий от Behem0th

Пять лет назад русские играли, но не покупали игры легально. Теперь русские покупают игры легально, но не играют. Короче, у него деньги кончаются наверное.

RussianNeuroMancer ★★★★★
() автор топика

Ждем комментариев аналитиков, которые с уверенностью заявляли, что игры в линукс не нужны.

trex6 ★★★★★
()

Разработчики игр правят баги в штеудовских драйверах вместо штеуда. Теперь ясно, почему на ХЛ3 у них времени не хватает.

kranky ★★★★★
()

Intel молодцы. При том, что у них хреновые видеокарты, у них отличный драйвер под Linux, и они его ещё постоянно улучшают. Сотрудничество с Valve напрямую - это, вообще, круто.

Этого, к сожалению, я не могу сказать о NVIDIA. Приходится довольствоваться тем, что есть. :(

cruxish ★★★★
()
Ответ на: комментарий от ZenitharChampion

а в wine regedit сделай UseGLSL = disabled. И всё - игра запустится и в ней будет работать абсолютно всё.

Внезапно помогло на FGLRX

onon ★★★
()
Ответ на: комментарий от ZenitharChampion

у меня интел, хд3000. и вайн просто как то не признаю. ну типа если уж использовать линукс, то только линукс приложения. у меня единтсвенное что в виртуалки для ИЕ стоят и для фотошопа, в которые захожу крайне редко. А так нашел все что надо и без вайна

wwwsevolod
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.