Dostaňte z vášho SteamOS a Linux handheldu viac výkonu |
Majú vaše hry problém s kapacitou RAM? Existuje jednoduché riešenie
Handheldy sú s nami na trhu už pár rokov. Výkonovo sa síce výraznejšie neposúvame vpred, no narastá skôr efektivita čipov a maximalizácia výkonu pri nižších napätiach. Staršie zariadenia, napr. s populárnymi Z1 Extreme procesormi majú ale aj v dnešnej dobe stále čo ponúknuť. Ich najväčšou brzdou pre veľké AAA hry je ale veľkosť RAM, ktorá bola často v čase uvedenia len na úrovni 16GB, čo je pre moderné hry málo ak zvážime fakt, že je zdieľaná aj s grafickým čipom. Výrobcovia si tento problém uvedomujú, preto priniesli časom aktualizované verzie s 24GB alebo 32GB RAM, ktoré dokázali odomknúť plný potenciál čipu. Čo ale robiť ak máte staršiu, len 16GB verziu, resp. zvažujete jej kúpu z druhej ruky?
Na prvý výraznejší problém som narazil pri pokuse o spustenie veľkých AAA hier postavených na Unreal Engine 5. Ten vyžaduje ako veľa VRAM, tak aj samotnej RAM. Netreba zabúdať ani na určitú náročnosť Windows procesov, nakoľko staršie zariadenia nepodporujú nové, odľahčené Xbox rozhranie. Praktický príklad sa mi udial nedávno, a to pri pokuse o spustenie Phantom Blade Zero. Zatiaľ čo na najnovšom ROG XBOX ALLY X20 s 24GB RAM hra bežala bez najlepších problémov, na prvom ROG ALLY som sa nedostal pri spustení ani cez úvodné logo a hra padla z dôvodu nedostatku pamäte. Začal som teda experimentovať s pomerom alokácie RAM a VRAM, kde nefungoval ani zlatý štandard 10GB RAM a 6GB VRAM. Hra vyžadovala minimálne 16GB RAM, takže to vyzeralo na už vopred prehraný boj.
Začal som teda premýšľať ako sa pokúsiť čo najviac zefektívniť využitie pamäte. Áno, prvým krokom bolo odstránenie Windowsu a nahradenie ho Linuxom Bazzite, konkrétne Handheld verziou. Tá sa snaží čo najviac priblížiť fungovaniu SteamOS, obsahuje všetky ROG aplikácie a funkcie pre jednoduché nastavenie a všetko vám funguje prakticky hneď po inštalácii. Hra sa po prvý raz výnimočne spustila a dostala sa až po kompiláciu shaderov, kde opäť padla na nedostatku pamäte. Riešením bolo siahnuť po najnovšej Proton GE verzii, alebo CachyOS Proton verzii, ktoré sú oveľa viac optimalizované a aktuálnejšie než predvolené Steam verzie Protonu. S rovnakou konfiguráciou sme sa dostali následne už aj cez kompiláciu shaderov, načítala sa hra, všetko nastavené na minimum, rozlíšenie 720p, zapnuté FSR, no po asi troch minútach lagov sa zasekla nielen hra, ale aj celý systém. Došla pamäť a Bazzite sa z toho už nedokázal spamätať. Nič z overených návodov a nastavení nefungovalo.
Nakoniec som si spomenul na posledný zúfalý krok. Overiť veľkosť swap partície systému. Bazzite sa rozhodol automaticky nastaviť veľkosť, no šiel na to trochu inak. Nespravil to čo často robia iné distribúcie, teda že veľkosť swapu je rovnaká ako veľkosť RAM, ale rozhodol sa ju zmenšiť o polovicu. Stačilo teda prepísať jednu hodnotu a nastaviť požadovanú veľkosť, v našom prípade 16GB, reštartnúť zariadenie a hra začala fungovať. A nie len to, dokonca sa ju podarilo rozbehnúť s rovnakými nastaveniami ako na najnovšom XBOX ALLY X20 (900p, low-medium nastavenia), samozrejme s trochu nižšími FPS, no aj tak využívam 30FPS lock pre zachovanie stability a minimalizovanie prepadov. Z nespustiteľnej hry sa zrazu stala bez najmenších problémov hrateľná hra. Rovnako zmizli problémy so stuteringom a zásekmi pri hre Spider-Man 2, ktorá je nielen dobre hrateľná, ale darí sa jej držať aj blízko 60FPS.
Ako si teda viete overiť či máte správne nastavený swap? V prvom rade sa musíte prepnúť do Desktop rozhrania. Otvorte príkazový riadok, resp. Konsole pri Bazzite, a spustite príkaz free -h ktorý vám ukáže tabuľku s využitím pamäte. V nej nájdete riadok Swap, pričom v stĺpci Total by ste mali vidieť požadovanú hodnotu, v našom prípade 15Gi alebo 16Gi. Ak tam vidíte menej, napr. 8Gi, je potrebné túto hodnotu navýšiť. Nejde ale o nič komplikované, v prípade Bazzite stačí spustiť:
- sudo nano /etc/systemd/zram-generator.conf
ktorý vám otvorí konfiguračný súbor pre alokáciu swap pamäte. Nájdite riadok s parametrom zram-size, a nastavte mu hodnotu 16384. Súbor následne uložíte a zatvoríte pomocou stlačenia skratiek CTRL+O, následne Enter a na záver CTRL+X. Zostáva vám už len reštartovať zram službu, čo vykonáte jednoducho spustením príkazu:
- sudo systemctl restart systemd-zram-setup@zram0.service
A mate hotovo. Môžete ešte raz overiť veľkosť voľnej swap pamäte či všetko zafungovalo korektne a môžete pokračovať v hraní.
V prípade SteamDecku a SteamOS je postup ešte jednoduchší. Komunita na zmenu vyvinula mástroj CryoUtilities. Po jeho stiahnutí a nainštalovaní v desktop režime sa vám na ploche zobrazí jeho ikona na spustenie. V menu kliknite na tlačidlo Recommended Settings a nástroj automaticky vytvorí 16GB swap súbor na vašom SSD a upraví správanie pamäte. SteamOS má často len 1GB swap, takže jeho zvýšením by ste mali pocítiť výraznejší rozdiel.
| NAJČÍTANEJŠIE ČLÁNKY TÝŽDŇA |
- Alza spustila Black Friday zľavy 49
- GTA VI preload sa začne 10. novembra, Rockstar potvrdil veľkosť hry 35
- RECENZIA: The Legend of Zelda: Ocarina of Time 71
- Sony samo odkupuje použitú PS5 za 400 dolárov, ak k nej majitelia odovzdajú aj dva 59
- Rockstar zverejnil 38 nových obrázkov z GTA 6 46
- GeForce RTX 5090 vraj dostane 64 GB a 96 GB pamäte 70
- Windows 11 sa už dokáže preinštalovať z cloudu, aj keď systém nenabootuje 7
- Sony vydalo ďalší bezpečnostný update pre PS5. Bojuje proti jailbreaku pred GTA 6 110
- Novembrové hry povedie GTA VI 30
- Sony potvrdzuje, že vývoj PlayStation 6 pokračuje podľa plánu. Konzola však tak sk 77 zobraziť viac článkov >





















