Prečo nemáme 128-bitové CPU

Prešli sme z 8-bitovej verzie na 16-bitovú, na 32-bitovú a skončili sme pri 64-bitovej verzii. Tu je dôvod, prečo 128-bitové CPU neexistujú.

Medzi slovami počítačovej slovnej zásoby je bit určite jedným z najznámejších. Celé generácie videoherných konzol a ich pixelované umelecké štýly sú definované bitmi (napríklad 8-bitové a 16-bitové) a množstvo aplikácií ponúka 32-bitové aj 64-bitové verzie.

Ak sa pozriete na túto históriu, môžete vidieť, že naša schopnosť manipulovať s bitmi sa v priebehu rokov zvýšila. Zatiaľ čo 64-bitové čipy boli prvýkrát predstavené v 90. rokoch a stali sa hlavným prúdom v roku 2000, my stále nemajú 128-bitové CPU. Hoci sa 128 môže zdať ako prirodzený krok po 64, je to čokoľvek ale.

Čo je dokonca trochu?

Predtým, ako budeme hovoriť o tom, prečo neexistujú 128-bitové CPU, musíme hovoriť o tom, čo je bit. V podstate sa to týka schopností CPU. Vytvorený zo slov binárny a číslicový, je to najmenšia jednotka vo výpočtovej technike a východiskový bod celého programovania. Bit možno definovať iba ako 1 alebo 0 (teda binárne), hoci tieto čísla možno interpretovať ako pravdivé alebo nepravdivé, zapnuté alebo vypnuté a dokonca aj ako znamienko plus alebo mínus.

Samotný jeden bit nie je veľmi užitočný, ale použitie viacerých bitov je iný príbeh, pretože kombináciu jednotiek a núl možno definovať ako niečo, napríklad číslo, písmeno alebo iný znak. Pre 128-bitové výpočty nás zaujímajú len celé čísla (čísla, ktoré nemajú desatinnú čiarku) a čím viac bitov je, tým viac čísel môže procesor definovať. Používa celkom jednoduchý vzorec 2^x, pričom x je počet bitov. V 4-bitových výpočtoch je najväčšie celé číslo, do ktorého môžete počítať, 15, čo je o jedno menej ako 16, ktoré vám dáva vzorec, ale programátori začínajú počítať od 0 a nie od 1.

Ak 4-bit dokáže uložiť iba 16 rôznych celých čísel, potom sa nemusí zdať, že prechod na 8- alebo 32- alebo dokonca 128-bitový by bol až taký veľký problém. Ale tu máme do činenia s exponenciálnymi číslami, čo znamená, že veci začínajú pomaly, ale potom sa rozbiehajú veľmi rýchlo. Aby sme to demonštrovali, tu je malá tabuľka, ktorá ukazuje najväčšie celé čísla, ktoré môžete vypočítať v binárnom formáte od 1 do 128 bitov.

Trocha

Maximálne celé číslo

1-bitový

1

2-bitový

3

4-bitový

15

8-bitový

255

16-bitový

65,535

32-bitový

4,294,967,295

64-bitový

18,446,744,073,709,551,615

128-bitový

340,282,366,920,938,463,463,374,607,431,768,211,455

Takže teraz pravdepodobne vidíte, prečo zdvojnásobenie počtu bitov vedie k tomu, že dokážete zvládnuť čísla, ktoré nielen zdvojnásobia veľkosť, ale sú rádovo väčšie. Napriek tomu, že 128-bitové výpočty by nám umožnili pracovať na oveľa väčších číslach ako 64-bitové výpočty, stále ich nepoužívame.

Ako sme prešli z 1-bitového na 64-bitový

Zdroj: AMD

Je celkom jasné, prečo CPU prešli z 1-bitového na viac bitov: Chceli sme, aby naše počítače robili viac vecí. Nie je veľa, čo môžete urobiť s jedným, dvoma alebo štyrmi bitmi, ale na hranici 8 bitov sa arkádové automaty, herné konzoly a domáce počítače stali realizovateľnými. Postupom času sa výroba procesorov zlacnila a fyzicky sa zmenšili, takže pridanie hardvéru potrebného na zvýšenie počtu bitov, ktoré CPU dokáže spracovať, bolo celkom prirodzeným krokom.

Exponenciálna povaha bitov sa veľmi rýchlo prejaví pri porovnaní 16-bitových konzol ako SNES a Sega Genesis s ich 8-bitovými predchodcami, hlavne NES. Super Mario Bros 3 bola jednou z najkomplexnejších hier NES z hľadiska mechaniky a grafiky a bola úplne zakrpatená Svet Super Mario, ktorý bol vydaný len o dva roky neskôr (aj keď kľúčovým faktorom tu boli aj vylepšenia technológie GPU).

Stále nemáme 128-bitové CPU, aj keď sú to už takmer tri desaťročia, čo sa na trh dostali prvé 64-bitové čipy.

Nie je to však len o videohrách; skoro všetko sa zlepšilo s ďalšími kúskami. Posun z 256 čísel v 8-bitovej verzii na 65 356 čísel v 16-bitovej verzii znamenal presnejšie sledovanie času, zobrazenie viacerých farieb na displejoch a adresovanie väčších súborov. Či už používate osobný počítač IBM, poháňaný 8-bitovým procesorom Intel 8088, alebo vytvárate server pre spoločnosť, ktorá je pripravená pripojiť sa online, viac bitov je jednoducho lepších.

Priemysel sa veľmi rýchlo posunul zo 16-bitovej na 32-bitovú a nakoniec na 64-bitovú výpočtovú techniku, ktorá sa stala hlavným prúdom koncom 90. rokov a začiatkom 21. storočia. Niektoré z najdôležitejších skorých 64-bitových CPU boli nájdené v Nintendo 64 a počítačoch poháňaných AMD Athlon 64 a Opteron. CPU. Čo sa týka softvéru, 64-bitový systém začal na začiatku dostávať bežnú podporu operačných systémov ako Linux a Windows roky 2000. Nie všetky pokusy o 64-bitové výpočty však boli úspešné; Serverové procesory Intel Itanium boli zlyhaním a sú niektoré z najhorších procesorov spoločnosti vôbec.

Dnes sú 64-bitové procesory všade, od smartfónov cez počítače až po servery. Čipy s menším počtom bitov sa stále vyrábajú a môžu byť žiaduce pre špecifické aplikácie, ktoré nezvládajú väčšie čísla, ale sú dosť úzke. Stále však nemáme 128-bitové procesory, aj keď sú to už takmer tri desaťročia, čo sa na trh dostali prvé 64-bitové čipy.

128-bitové výpočty hľadajú problém, ktorý treba vyriešiť

Možno si myslíte, že 128-bit nie je životaschopný, pretože je to ťažké alebo dokonca nemožné, ale v skutočnosti to tak nie je. Veľa častí v procesoroch, CPU a iných je 128-bitových alebo väčších, napríklad pamäťové zbernice na GPU a SIMD na CPU, ktoré umožňujú inštrukcie AVX. Hovoríme konkrétne o schopnosti spracovať 128-bitové celé čísla a aj keď prototypy 128-bitových CPU boli vytvorené vo výskumných laboratóriách, žiadna spoločnosť v skutočnosti neuviedla 128-bitový CPU. Odpoveď môže byť antiklimatická: 128-bitový procesor jednoducho nie je veľmi užitočný.

64-bitový procesor dokáže spracovať viac ako 18 biliónov jedinečných čísel od 0 do 18 446 744 073 709 551 615. Naproti tomu 128-bitový CPU by zvládol viac ako 340 undeciliónov a garantujem vám, že ste "decilión" v živote nevideli. Nájsť využitie na počítanie čísel s takým množstvom núl je dosť náročné, aj keď používate jednu z nich bity na znamienko celého čísla, ktoré by malo rozsah od záporných 170 undecillion do kladných 170 undecillion.

Jedinými významnými prípadmi použitia 128-bitových celých čísel sú adresy IPv6, univerzálne jedinečné identifikátory (alebo UUID), ktoré sa používajú na vytváranie jedinečných identifikátorov pre používateľov (Minecraft je vysokoprofilový prípad použitia pre UUID) a súborové systémy ako ZFS. Ide o to, že 128-bitové CPU nie sú potrebné na zvládnutie týchto úloh, ktoré boli schopné v pohode existovať na 64-bitovom hardvéri. V konečnom dôsledku je hlavným dôvodom, prečo nemáme 128-bitové CPU, to, že nie je dopyt po 128-bitovom hardvérovo-softvérovom ekosystéme. Priemysel by to určite dokázal, keby chcel, ale jednoducho nie.

Dvere sú mierne otvorené pre 128-bit

Zdroj: Siemens

Aj keď 128-bitové procesory dnes nie sú vecou a zdá sa, že žiadna spoločnosť ho v dohľadnej dobe nevydá, nezašiel by som tak ďaleko, že by som povedal, že 128-bitové CPU sa nikdy nestanú. Špecifikácia pre RISC-V ISA ponecháva možnosť budúceho 128-bitového architektúra na stole, ale neuvádza podrobnosti o tom, čo by v skutočnosti bolo, pravdepodobne preto, že jednoducho neexistovala naliehavá potreba navrhnúť to.

Tristoštyridsať undecillionov, najväčšie číslo, ktoré možno vytvoriť so 128 bitmi, tiež nie je ani zďaleka toľko keďže vo vesmíre sú atómy, čo sa považuje za najväčší počet, aký existuje v reálnom svete význam. Ak ste niekedy chceli simulovať poriadny kus vesmíru až po atómovú úroveň, možno by sa vám na to naozaj hodil 128-bitový procesor. Okrem toho je ťažké povedať, na čo by sa používal 128-bitový procesor, ale pred mnohými rokmi sme tiež rozmýšľali, na čo by ste mohli chcieť terabajt RAM.