Zašto nemamo 128-bitne procesore

click fraud protection

Prešli smo s 8-bitnog na 16-bitni, na 32-bitni i završili stvari na 64-bitnom. Evo zašto 128-bitni procesori ne postoje.

Među riječima računalnog vokabulara, bit je zasigurno jedna od najpoznatijih. Čitave generacije konzola za video igre i njihovi pikselizirani umjetnički stilovi definirani su bitovima (kao što su 8-bitni i 16-bitni), a mnoge aplikacije nude i 32-bitne i 64-bitne verzije.

Ako pogledate tu povijest, možete vidjeti da se naša sposobnost rukovanja bitovima povećala tijekom godina. Međutim, dok su 64-bitni čipovi prvi put predstavljeni 90-ih i postali mainstream 2000-ih, mi još uvijek nemaju 128-bitne procesore. Iako se 128 može činiti kao prirodan korak nakon 64, to je sve ali.

Što je uopće malo?

Prije nego što govorimo o tome zašto 128-bitni CPU ne postoje, moramo razgovarati o tome što je bit even. U biti, to se odnosi na mogućnosti CPU-a. Nastala od riječi binarno i znamenka, najmanja je jedinica u računalstvu i početna točka cjelokupnog programiranja. Bit se može definirati samo kao 1 ili 0 (dakle binarno), iako se ti brojevi mogu tumačiti kao istiniti ili lažni, uključeni ili isključeni, pa čak i kao znak plus ili minus.

Sam po sebi, jedan bit nije baš koristan, ali korištenje više bitova je druga priča jer se kombinacija jedinica i nula može definirati kao nešto, poput broja, slova ili drugog znaka. Za 128-bitno računalstvo zanimaju nas samo cijeli brojevi (brojevi koji nemaju decimalnu točku), a što je više bitova, to više brojeva procesor može definirati. Koristi prilično jednostavnu formulu 2^x, pri čemu je x koliko ima bitova. U 4-bitnom računalstvu, najveći cijeli broj do kojeg možete brojati je 15, što je jedan manje od 16 koje vam daje formula, ali programeri počinju brojati od 0, a ne od 1.

Ako 4-bitni može pohraniti samo 16 različitih cijelih brojeva, onda se možda neće činiti da bi prelazak na 8- ili 32- ili čak 128-bitni bio tako velik posao. Ali ovdje imamo posla s eksponencijalnim brojevima, što znači da stvari počnu sporo, ali onda krenu vrlo brzo. Da bismo to demonstrirali, evo male tablice koja prikazuje najveće cijele brojeve koje možete izračunati u binarnom obliku od 1 do 128 bita.

bit

Maksimalni cijeli broj

1-bitni

1

2-bitni

3

4-bitni

15

8-bitni

255

16-bitni

65,535

32-bitni

4,294,967,295

64-bitni

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

128-bitni

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

Dakle, sada vjerojatno možete vidjeti zašto udvostručenje količine bitova rezultira mogućnošću rukovanja brojevima koji ne samo da su udvostručeni u veličini, već su redove veličine veći. Ipak, iako bi nam 128-bitno računalstvo omogućilo rad na puno većim brojevima nego što to može 64-bitno računalstvo, još uvijek ga ne koristimo.

Kako smo prešli s 1-bitnog na 64-bitni

Izvor: AMD

Prilično je jasno zašto su CPU-i s 1-bitnih prešli na višebitne: željeli smo da naša računala rade više stvari. Nema toga što možete učiniti s jednim, dva ili četiri bita, ali na oznaci od 8 bita, arkadni strojevi, igraće konzole i kućna računala postali su izvedivi. S vremenom su procesori postali jeftiniji za proizvodnju i fizički manji, pa je dodavanje hardvera potrebnog za povećanje broja bitova koje CPU može obraditi bio prilično prirodan potez.

Eksponencijalna priroda bitova postaje očita vrlo brzo kada se uspoređuju 16-bitne konzole kao što su SNES i Sega Genesis s njihovim 8-bitnim prethodnicima, prvenstveno NES-om. Super Mario Bros 3 bila je jedna od NES-ovih najsloženijih igara u smislu mehanike i grafike, a bila je potpuno zaostala za Super Mario svijet, koji je objavljen tek dvije godine kasnije (iako su poboljšanja u GPU tehnologiji i ovdje bila ključni faktor).

Još uvijek nemamo 128-bitne procesore, iako su prošla gotovo tri desetljeća otkako su prvi 64-bitni čipovi stigli na tržište.

No, ne radi se samo o video igrama; uglavnom je sve postajalo bolje s više bitova. Prelazak s 256 brojeva u 8-bitnom na 65 356 brojeva u 16-bitnom značilo je preciznije praćenje vremena, prikazivanje više boja na zaslonima i adresiranje većih datoteka. Bilo da koristite IBM-ovo osobno računalo, koje pokreće Intelov 8-bitni 8088 CPU, ili gradite poslužitelj za tvrtku koja je spremna za internet, više bitova je samo bolje.

Industrija se prilično brzo pomaknula sa 16-bitnog na 32-bitno i konačno, 64-bitno računalstvo, koje je postalo mainstream kasnih 90-ih i ranih 2000-ih. Neki od najvažnijih ranih 64-bitnih procesora pronađeni su u Nintendo 64 i računalima koja pokreću AMD-ovi Athlon 64 i Opteron procesori. Što se tiče softvera, 64-bitni je rano počeo dobivati ​​glavnu podršku operativnih sustava poput Linuxa i Windowsa 2000-ih. Međutim, nisu svi pokušaji 64-bitnog računalstva bili uspješni; Intelovi procesori Itanium za poslužitelje bili su neuspjeh visokog profila i jesu neki od najgorih procesora tvrtke ikada.

Danas su 64-bitni procesori posvuda, od pametnih telefona preko osobnih računala do poslužitelja. Čipovi s manje bitova još uvijek se izrađuju i mogu biti poželjni za specifične primjene koje ne obrađuju veće brojeve, ali prilično su niša. Ipak, još uvijek nemamo 128-bitne procesore, iako je prošlo gotovo tri desetljeća otkako su prvi 64-bitni čipovi stigli na tržište.

128-bitno računalstvo traži problem za rješavanje

Možda mislite da 128-bitni nije održiv jer ga je teško ili čak nemoguće napraviti, ali to zapravo nije slučaj. Mnogi dijelovi u procesorima, CPU-ima i ostalima su 128-bitni ili veći, poput memorijskih sabirnica na GPU-ima i SIMD-ova na CPU-ima koji omogućuju AVX upute. Konkretno govorimo o mogućnosti rukovanja 128-bitnim cijelim brojevima, i iako su 128-bitni CPU prototipovi stvoreni u istraživačkim laboratorijima, niti jedna tvrtka nije lansirala 128-bitni CPU. Odgovor bi mogao biti antiklimaktičan: 128-bitni CPU jednostavno nije baš koristan.

64-bitni CPU može obraditi više od 18 kvintilijuna jedinstvenih brojeva, od 0 do 18,446,744,073,709,551,615. Nasuprot tome, 128-bitni CPU mogao bi obraditi više od 340 undecillion brojeva, a ja vam jamčim da nikada u životu niste vidjeli "undecillion". Pronaći primjenu za izračunavanje brojeva s toliko nula prilično je izazovno, čak i ako koristite jedan od bitovi za znak cijelog broja, koji bi imao raspon od negativnih 170 undecilion do pozitivnih 170 undecilion.

Jedini značajni slučajevi upotrebe za 128-bitne cijele brojeve su IPv6 adrese, univerzalni jedinstveni identifikatori (ili UUID) koji se koriste za stvaranje jedinstvenih ID-ova za korisnike (Minecraft je visokoprofilni slučaj upotrebe za UUID) i datotečne sustave kao što je ZFS. Stvar je u tome što 128-bitni CPU-i nisu potrebni za rješavanje ovih zadataka, koji su sasvim dobro postojali na 64-bitnom hardveru. U konačnici, ključni razlog zašto nemamo 128-bitne CPU-ove je to što ne postoji potražnja za 128-bitnim hardversko-softverskim ekosustavom. Industrija bi svakako mogla uspjeti kad bi htjela, ali jednostavno ne uspijeva.

Vrata su malo otvorena za 128-bitni

Izvor: Siemens

Iako 128-bitni CPU-i danas nisu stvar i čini se da ih niti jedna kompanija neće uskoro izdati, ne bih išao tako daleko da kažem da se 128-bitni CPU-i nikada neće pojaviti. Specifikacija za RISC-V ISA ostavlja mogućnost budućeg 128-bitnog arhitektura na stolu, ali ne navodi detalje što bi to zapravo bilo, vjerojatno zato što jednostavno nije bilo hitne potrebe za njegovim dizajnom.

Tristo četrdeset undeciliona, najveći mogući broj koji se može stvoriti sa 128 bita, također nije ni približno toliko jer postoje atomi u svemiru, što se smatra najvećim brojem koji postoji u stvarnom svijetu značaj. Ako ste ikada htjeli simulirati dobar dio svemira do atomske razine, onda bi možda 128-bitni CPU bio stvarno koristan za to. Osim toga, teško je reći za što bi se koristio 128-bitni CPU, ali prije mnogo godina također smo se pitali za što bi vam trebao terabajt RAM-a.