64bit versus 32bit OS

Petr Olsak petr na olsak.net
Úterý Prosinec 11 21:04:02 CET 2007


Dalibor Straka:
>
> Toto je zacatek oskliveho FLAME, ktery temer nesouvisi s linuxem
> a patri do linux-talk na .

Nechtel jsem vyvolavat flame a, domnivam se, zatim se zde nic takoveho
nekona. Myslim si, ze v soucasne dobe skoro kazdy, kdo instaluje do
noveho pocitace Linux, stoji pred rozhodnutim, zda tam dat 32bit nebo
64bit verzi. Obe moznosti ma k dispozici. Uvital by tedy rozbor teto
problematiky, nazory pro jednu i druhou variantu, aby se mohl
rozhodnout. Myslim si tedy, ze vysledek tohoto vlakna muze byt pro
mnoho lidi uzitecny.

Byl zde zminen linux-talk. Nevim sice, co to je, ale tusim v tom neco
jako "pokec". Ja nechci plkat, s nekym se dohadovat. Ja bych si pral,
kdyby v tomto vlaknu vznikla vseobecne uzitecna a zodpovedna argumentace
k problemu. Napr. "vyzkousel jsem na takovem HW obe verze,
udelal jsem takove srovnavaci testy a zde jsou vysledky". Nebo "seriozni
srovnani najdete na...". Nez jsem toto vlakno zalozil, stravil jsem
mnoho hodin hledani takovych informaci na Internetu, ovsem marne.
Recenzenti k procesorum se mi zdaji casto uplne mimo, kdyz
zminuji 64bitove rozsireni. Pokud zrovna fandi AMD, pak to do nebe
vychvaluji, pokud fandi Intelum, pak to nezminuji.

Predstavme si aplikaci ve verzi 32 bit i 64 bit, ktera k tomu, aby
vyresila ulohu dane slozitosti S, musi dynamicky alokovat m1 pameti
v 32bit verzi a m2 pameti v 64bit verzi. Neco jako vypocet pi na mnoho
desetinnych mist (to je samozrejme nepotrebna blbost, muzeme si ale
predstavit i uzitecnejsi ulohy). Je zrejme, ze m2 > m1, samozrejme
zalezi na datove strukture, ovsem domnivam se, ze v kazde datove
strukture se vyskytuje vyznamne mnozstvi pointeru, takze treba nebudu
daleko od pravdy, kdyz budu uvazovat m2 = 1,5*m1. Necht mame v
pocitaci 4GB RAM a slozitost ulohy S je stanovena tak, ze m1 = skoro 4GB
(az na male mistecko pro system). 32bit verze takove aplikce nam
vrati na danem pocitaci uzitecny vysledek, zatimco 64bit verze si
vyzada 6GB pameti, to v systemu neni, zacne to swapovat a vysledku se
nedockame. Tj. 64bit verze nam nevrati zadny vysledek. Mame-li v
pocitaci ale 8GB RAM, pak se situace obrati: Pri slozitosti S+1 dojde
32bit aplikaci pamet a zkolabuje, zatimco 64bit aplikace nam vrati
vysledek. Vychazi mi z toho, ze pokud mam v pocitaci 4GB RAM a mene,
pak se 64bit OS nevyplati. Mam-li v pocitaci 4 az 6 GB RAM, pak to je
nejmene vhodne mnozsti RAM, protoze 32bit aplikce to neobslouzi a
64bit zaberou celou RAM drive, nez srovnatelne 32bit aplikace pri 4GB
RAM. Teprve od cca 8GB RAM se vyplati uvazovat o 64bitovem OS a to jen
tehdy, pokud to budu chtit k necemu vyuzit (napr. spoustet 64bit
Mathematicu a pocitat neco, co dosud v 32bitech vubec neslo). Myslite,
ze je mozne takto uvazovat?

Konecne: omlouvam se, ze jsem zmrsil jmeno firmy vyrabejici procesory
i oznaceni pro jejich 64bit rozsireni. Nebyl to muj zamer. Jsem rad,
ze jste to pochopili spravne.

Zdravim

Petr Olsak




Další informace o konferenci Linux