Hvorfor nogle spil har brug for 64-bit support
I spilverdenen har der været en nylig bevægelse af store udgivere for at frigive deres spil med 64-bit support. World of Warcraft, til trods for løb i årevis på 32-bit, blev patched til 64-bit support. Mange har besluttet, at dette er den måde, at spil skulle gå videre. Men hvorfor er nøjagtigt 64-bit support så vigtig for visse spil? Med udgivelsen af EAs The Sims 4 med 32-bit-only support, var der en debat om, hvorvidt spillet skulle have udvidet til 64 bit, i det mindste for maskiner, der var kompatible. Hvorfor er det?
Hvad gør 64-bit support?
For at forstå, hvorfor folk ønsker støtte til 64-bit i spil og applikationer, skal vi forstå, hvad "64-bit" betyder. Din CPU behandler opgaver med en vis maksimal bitbredde. CPU'en har registreringer fastgjort i bestemte størrelser (8-bit, 16-bit, 32-bit og 64-bit). Det største register bestemmer, hvad der er det største antal, der kan sendes direkte til CPU'en uden ekstra instruktioner. I 32-bits processorer er det 2.147.483.647 eller 4.294.967.295. Det afhænger af, om du bruger signerede heltal (som tillader negative værdier) eller deres usignerede (kun positive værdier) ækvivalenter.
64-bit processorer giver mulighed for meget, meget større tal at passere ind i CPU'en (den maksimale værdi er 18.446.744.073.709.551.615 for usignerede heltal).
Den grundlæggende ide, at du skal kunne tage væk fra dette, er, at 64-bit CPU'er giver mulighed for meget større tal, når du udfører hurtige beregninger og henter adresser i hukommelsen. Derfor understøtter 32-bits processorer kun op til 4 GB hukommelse. Taler om hukommelse ...
Du får større adresserum.
Når et spil ville begynde at skubbe grænserne for hukommelsen af systemet, der kører det, ville der være et skub for at forsøge at arbejde inden for disse begrænsninger, hvilket betød, at caching ting som tegn og genstande var ude af spørgsmålet i nogle tilfælde. Lad os tage The Sims 4 f.eks. Når spiltilstanden ændres, skal den genindlæs alle tegnene, ligesom du gør, når du først læser spillet. Det cache dem ikke (hvilket ville gøre loading gange meget hurtigere), fordi hukommelsen er begrænset til 4 GB i sin 32-bit arkitektur. Selvom det kører på en 64-bit CPU, er spillet selv skrevet på en måde, som kun understøtter CPU'ens ringere 32-bit registre.
Kort sagt, spil, der har 64-bit support, kan cache meget større klumper af sine data. Dette betyder, at du får hurtigere indlæsningstider og muligvis nyder ting som autosave i spil, der traditionelt er hukommelsessyge.
Der er potentiale for dobbelt præcision beregninger.
I 32-bit arkitekturer er håndtering af decimaler meget besværlige. I de fleste tilfælde er de syv decimaler, du er tilladt, dog tilstrækkelige. Men hvad nu hvis du forsøger at gemme en meget høj præcision værdi? Spil udvikler sig og kræver i mange tilfælde mere end syv decimaler for at beregne noget (som forfaldshastigheden, hvor energi går ned, eller noget lignende). I 64-bit arkitekturer kan du tildele dobbelt præcision flydende punktnumre, så du kan arbejde med op til 16 decimaler.
Ja, du kunne gøre dette i 32-bitsprocesser, men det krævede en løsning, hvor værdien faktisk ville være to stykker hukommelse fastgjort sammen med duct tape. Denne fremstillede processorer kører gennem flere instruktioner bare for at samle værdierne i et korrekt decimaltal. Det betyder, at et nummer som 4.2592039521510 ville optage to forskellige steder i dit RAM, i stedet for at være en enkelt værdi.
Grafikkort fungerer på forskellige regler.
På trods af hele sammenfaldet af 32-bit versus 64-bit i spil er der en ting, jeg tror du burde vide: Dette har ikke noget at gøre med grafik. Du ser, grafikkort har udviklet sig betydeligt til at omfatte bitbredder, der er meget større end hvad dine CPU'er har (mange af dem har bitbredder op til 256 bits!). Hvad 64-bit CPU-understøttelse gør for dine spil, er at give dem mulighed for at skabe bedre beslutningstagningsmotorer, der fungerer med din hukommelse mere effektivt. Grafikken vil stadig være den samme, men spillet bliver smartere og mere intuitivt.
Hvis du har lyst til, at der er noget at tilføje til denne diskussion, bedes du have en kommentar nedenfor!