Valve ukazuje jak pokračují optimalizace Left 4 Dead 2 pro Linux. Budoucnost vypadá skvěle!
V Linuxovém týmu Valve testují onu první linuxovou portaci hry na bázi Source Engine - Left 4 Dead 2 - na celkem slušné sestavě: Intel Core i7 3930K, 32 GB RAM a GeForce GTX 680. Porovnává se aktuálně 32bitové Ubuntu 12.04 s 64bitovými Windows 7 SP1.
Pod Windows 7 skrze Direct3D dává hra na uvedené konfiguraci v blíže nespecifikovaném rozlišení a nastavení kvality renderingu v průměru 270,6 fps. Vůbec první port na Linux byl typická ukázka toho, že když dokážete zkompilovat hru pod Linuxem, tak vás čeká ještě dlouhá trať plná optimalizací: Valve zde dosáhla na 6 fps.
Následně se začalo pracovat na tom, o čem jsme již psali, tedy optimalizacích enginu, aby lépe (efektivněji) pracoval na linuxovém kernelu a také vylepšování OpenGL kódu, který ve srovnání s léta pilovaným Direct3D zaostával. No a samozřejmě nesmí chybět spolupráce s výrobci GPU na optimalizacích ovladačů.
Kernelové části se týkala například změna systému alokace paměti, aby vhodněji používal linuxové funkce. Druhá část, OpenGL, byla čištěna o zbytečná volání, která pak samotný rendering poměrně zdržovala no a nakonec došlo na rozšíření rendereru o nová rozhraní pro lepší zakomponování OpenGL i Direct3D kódu.
Třetí pilíř reformy vyžadoval intenzivní spolupráci s inženýry od výrobců GPU, neboť bylo nutné identifikovat co nejvíce míst, kde to v ovladačích při běhu Source Engine nejvíce drhne, vylepšování vícevláknové podpory atd. Na uvedené konfiguraci, kde první port dával 6 fps, se ve Valve poměrně rychle dostali na parádních 315 fps.
To je samo o sobě velmi zajímavé s ohledem na to, že Source Engine má za sebou léta optimalizací Direct3D kódu, zatímco na Linuxovém/OpenGL se pracuje jen poměrně krátce. Každopádně výsledkem současného pilování pro Linux je to, že zrychlil pochopitelně OpenGL kód i pod Windows - dosahuje na 303,4 fps.
Hackerům ve Valve to samozřejmě nedá a zkoumají, proč OpenGL kód v Linuxu utáhne hru rychleji než Direc3D pod Windows. Po prvotních analýzách se nezdá, že by problém byl ve vícevláknové části kódu, ale když teď vědí, že hra může běžet rychleji než dosud, budou se v tom ještě dále vrtat - a to je dobrá zpráva pro všechny zájemce o „holuba na střeše“ - případnou budoucí hru Half-Life 3. Pokud linuxové snahy přispějí ke zrychlení enginu pod Windows, pak je to úsměvné a skvělé zároveň.
Jinak si ve Valve velmi pochvalují spolupráci s výrobci GPU. Ať již jde o AMD, Intel či Nvidii, lidé ze všech těchto firem jsou přímo u Valve, velmi zaujatí tímto projektem a výborně se s nimi spolupracuje.
My jen dodejme, že z tohoto vývoje máme velkou radost. Pokud Valve něco tímto ukazuje, pak skutečnost, že Linux není neherním operačním systémem a vše je jen otázkou ochoty tvůrců her či enginů zaměřit se i na tento z desktopového hlediska minoritní OS. Výrobci GPU pak v případě, kdy se nějaký velký hráč na herním poli (Valve) rozhodne pro ten nejistý krok dopředu, zjevně rádi připojí. Valve má od nás v tuto chvíli velkou pochvalu a budeme napjatě sledovat budoucí vývoj.
Co se týče mě osobně, tak jakmile vyjde Steam klient pro Linux a první portovaná hra, pak ji koupím, abych tak Valve (či jakoukoli jinou herní firmu, které se to bude týkat - třeba Croteam) v tomto snažení podpořil. Neboť herní studio, které mě nenutí používat uzavřený, licenčně velmi omezující a cenově poměrně nákladný OS, je herní studio, jež chci, aby nadále prosperovalo.
Přečtěte si také:
- VELKÝ ROZBOR: Valve chystá linuxovou revoluci. Podaří se?
- Valve a Intel pracují na open-source ovladačích a Source Engine pro Linux společně
- Chorvati válí: Serious Sam 3 zamíří do Linuxu
- Nero Linux je mrtvé
- Richard Stallman se vyjádřil na adresu Valve a linuxového Steam klienta
- Na evropském LinuxConu 2012 promluví Linus Torvalds i Mark Shuttleworth