Det er hårdt arbejde at forsøge at slippe vanen med 60fps.

Det er den hellige gral for de nuværende gaming-pc’er: 144fps. Du har spenderet penge på en fantastisk gamingskærm og parret den sammen med den hurtigste CPU og et af de bedste grafikkort, der kan købes for penge. Det er så glat, så responsivt, og du er klar til at dominere dine modstandere med dine overlegne evner – eller i det mindste din højere opdateringshastighed. Der er kun ét problem. Det er svært at ramme 144fps (eller mere) i mange spil, og nogle gange er det simpelthen helt umuligt. Hvad sker der?

Det begynder med et spils centrale design og funktioner. Ikke for at kaste skygge på konsoller (uanset hvad, jeg kaster totalt skygge på konsoller), men når flere af den nuværende generations spilplatforme ikke kan output ved højere end 60 Hz, er det kun naturligt, at de spil, der spilles på dem, ikke gør sig umage for at overskride 60fps – eller endda 30fps i nogle tilfælde. Når en spiludvikler starter ud fra det perspektiv, kan det være meget svært at rette op på det senere hen. Vi har set spil som Fallout 4 binde fysik, bevægelseshastighed og meget andet sammen med framerate, ofte med uønskede resultater.

Det handler dog ikke kun om at sigte mod 30 eller 60fps. Spillets kompleksitet bliver ved med at stige, og kompleksitet betyder, at der skal foretages flere beregninger. Singleplayer-spil er typisk en anden oplevelse end multiplayer-spil. Sidstnævnte er i sagens natur mere konkurrenceprægede, hvilket betyder, at højere fps kan være mere fordelagtigt for topspillerne, og de udelader ofte en masse ting, der kan øge frametimes.

Kompetitive multiplayer-spil er den perfekte legeplads for 144 Hz-skærme.

Tænk på spil som Counter-Strike, Overwatch, PUBG og Fortnite for eksempel. Der er meget lidt AI- eller NPC-logik, der skal ske. Det meste af verden er statisk, og det er kun spillerne, der løber rundt, hvilket betyder meget mindre overhead og i sidste ende potentiale for højere framerates.

Primært singleplayer-spil er en anden sag. Se på miljøerne i Assassin’s Creed Odyssey, Monster Hunter World og Hitman 2. Der kan være hundredvis af væsner, NPC’er og andre enheder, der skal behandles, og hver især har forskellige animationer, lyde og andre effekter. Det kan få selv de hurtigste CPU’er, hvor en stor del af denne behandling finder sted, til at gå i stå.

Ja, CPU’en og ikke GPU’en. Selvom GPU’en ofte anses for at være flaskehalsen for spilydelse, handler det mest om at vælge den rette opløsning og grafikkvalitet. Skru ned for indstillingerne og/eller opløsningen langt nok, og så bliver CPU’en den begrænsende faktor. Og i komplekse spil kan denne CPU-grænse let falde til under 144fps. Mens et hurtigt grafikkort ofte er nødvendigt for at nå 144fps, kan det også være nødvendigt med en lige så hurtig CPU.

Assassin’s Creed Odyssey kan næsten nå 144fps … med et RTX 2080 Ti.

Hitman 2 smækker ind i en CPU-flaskehals på omkring 122fps.

Monster Hunter World har også svært ved at komme over 120fps.

Se på CPU-benchmarks i Assassin’s Creed, Monster Hunter og Hitman. Når de kører ved 1080p og lav eller medium kvalitet, er der en fremragende skalering med hensyn til CPU-ydelse, men 144fps er stadig en svær hurdle at overvinde. Endnu vigtigere er det, at skaleringen hovedsageligt kommer fra clockspeed, hvor kerne- og trådtælling er en mindre faktor – især når man bevæger sig ud over 6-kernede processorer. Det skyldes, at de fleste spil stadig styres af en enkelt tråd, der udfører en stor del af arbejdet.

Vend tingene om og tænk på hvert enkelt billede i millisekunder. For en stabil 60fps har hver ramme højst 16,7 ms grafik- og behandlingstid. Hvis du hopper til 144fps, har hver frame kun 6,9 ms til at få alt afsluttet. Men hvor meget tid tager det egentlig for hver del af renderingen af en aktuel frame? Svaret er, at det varierer, og det fører ind i en diskussion om Amdahls lov.

Kernen i Amdahls lov er, at der altid er dele af koden, der ikke kan paralleliseres. Forestil dig et hypotetisk spil, hvor en enkelt Intel-kerne på 4,0 GHz tager 50 ms om at håndtere alle beregninger for hvert billede. Det spil ville være begrænset til 20fps. Hvis 75 procent af spilkoden kan opdeles i delopgaver, der kører samtidig, men 25 procent udføres på en enkelt tråd, vil den bedste ydelse på en 4,0 GHz Intel-CPU stadig kun være 80 fps, uanset hvor mange CPU-kerner der er til rådighed, uanset hvor mange CPU-kerner der er til rådighed. Jeg lavede lidt hurtig og beskidt servietmatematik for at illustrere:

Det er ikke en egentlig serviet, for min håndskrift er elendig.

En omarbejdning af spilkoden, så kun 12,5 procent udføres på en enkelt tråd, måske endda kun 5 procent, kan hjælpe. Så er 160fps eller endda 400fps muligt, men det tager udviklertid, som måske er bedre brugt andre steder – og CPU’er har selvfølgelig ikke uendeligt mange kerner og tråde. Pointen er, at der er en begrænset mængde tid til at håndtere al behandling af brugerinput, spiltilstand, netværkskode, grafik, lyd, AI osv. og mere komplekse spil kræver i sagens natur mere tid.

Selv med 4 GHz og hurtigere CPU’er, der arbejder sammen med tusindvis af GPU-kerner, går 6,9 ms hurtigt, og hvis du kigger på en 240 Hz-skærm, der kører spil med 240 fps, er der kun 4,2 ms for hvert billede. Hvis der nogensinde opstår en hikke undervejs – hvis spillet f.eks. skal indlæse nogle objekter eller teksturer fra lageret, hvilket kan tage alt fra et par millisekunder på en hurtig SSD til måske ti millisekunder på en harddisk – vil spillet stottere hårdt. Det er den verden, vi lever i.

Lara er ikke tilfreds med en ydelse på under 144fps.

Lad os sige det på en anden måde. Moderne pc’er kan potentielt tygge milliarder af beregninger igennem hvert sekund, men hver enkelt beregning er ekstremt simpel: A + B for eksempel. Håndtering af en logikopdatering for en enkelt entitet kan kræve tusindvis eller titusindvis af instruktioner, og alle disse AI- og entitetsopdateringer er stadig kun en lille brøkdel af det, der skal ske hver frame. Spiludviklere skal balancere alt for at nå et acceptabelt ydelsesniveau, og på pc’er kan det betyde muligheden for at køre på alt fra en gammel 4-core Core 2 Quad eller Athlon X4 op til en moderne Ryzen eller 9th Gen Core CPU og GPU’er, der spænder fra Intel integreret grafik op til GeForce RTX 2080 Ti.

Det er muligt at lave spil, der kan køre med ekstremt høje framerates. Det ved vi, fordi de allerede findes. Men disse spil er normalt ikke state of the art med hensyn til grafik, AI og andre elementer. De er grundlæggende enklere på nogle gange ikke så indlysende måder. Selv hvis man reducerer kompleksiteten af spil og grafik, kan man kun nå et vist mål. Syv år gammelt CS:GO ved 1080p med en overclocket 5 GHz Core i7-8700K topper ved omkring 300 fps (3,3 ms pr. frame), med stuttere, der sænker minimum fps til omkring det halve. Du kan køre CS:GO med 270-300fps på alt fra et GTX 1050 til et Titan RTX, fordi CPU’en er den vigtigste begrænsende faktor.

Kort sagt er det ikke kun et spørgsmål om hardware at ramme 144fps. Det handler om software og spildesign, og nogle gange er man bare nødt til at give slip. Hvis du har sat dit hjerte på 144fps-spil, er det bedste råd jeg kan give dig, at du skal huske, at framerates (eller frametimes, hvis du foretrækker det) ikke er alt. Til konkurrencedygtig multiplayer, hvor enhver mulig latencyfordel kan hjælpe, skal du sænke indstillingerne til minimum og se, hvordan spillet kører, og eventuelt øge et par indstillinger, hvis der er plads til at vrikke.

Selv hvis du ikke kan opretholde 144fps eller mere, er 144 Hz opdateringshastigheder stadig fantastiske – jeg kan mærke forskellen bare ved at interagere med Windows-skrivebordet. De 144 Hz-skærme af højere kvalitet understøtter også G-Sync og FreeSync, hvilket kan hjælpe med at undgå mærkbare stuttere og tåreflåd, når du falder lidt under 144fps. Perfekt glidende framerates ville være dejligt, men det alene gør ikke et spil fantastisk. Så læn dig tilbage og nyd bare turen, uanset din hardware eller framerate.

Sidste nyt

{{ articleName }}

Articles

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.