Já jsem se rozhodl hry nekupovat, pokud nebudou existovat v 64bit variantě. Né. Opravdu kvůli nějaké hře nebudu instalovat mraky podpůrných 32bit knihoven, když už je tam jednou „mám“. Přiznám se, že na Windows sice pár těch 32bit šmejďáren mám – např. Dragon Age Origins, Resident Evil 5, ale další jsem se rozhodl už nekupovat (a pirátit je samozřejmě také nehodlám), dokud už se konečně nerozhoupou a nezačnou vydávat 64bit binárky – a nejde mi jen o výkon, ale o princip. Proč bych měl na 64bit procesoru spouštět 32bit procesy, proč mám mít v paměti (i když jí mám dost) 2× ty samé knihovny, …neznám snad nikoho, kdo by v dnešní době měl 32bit procesor a zároveň hrál ty dnešní „moderní“ hry.
Nechci, aby to vyznělo jako kritika, ale to si počkáte … ;) Důvod bych viděl podobný jako u toho linuxu a to, že nejsou zákazníci … Proč by vývojáři optimalizovali hry pro 64b architekturu, když to uživatelům prakticky nic nepřinese a velmi to prodraží vývoj?
O tom, že hra bude „rychlejší“ by se dalo dost polemizovat, co to vývojářům dovolí je možná tak adresovat více paměti, což u většiny her není nutné, už jenom proto, že uživatele víc paměti zatím stejně nemají … (navíc aktuální průměr bych viděl teď okolo 4 GB, což „lze adresovat“ i v 32b režimu a která hra to umí využít? Osobně mně nenapadá žádná, ale jestli nějaká bude, tak jich nebude moc …)
Naopak instrukce budou 2× tak dlouhé … Tím nechci 64b hry zatracovat, jenom si myslím, že ještě nepřišel jejich čas a nevěřím, že se začnou masivněji objevovat dříve jak za 5–8 let …
Nemluvě o tom, že i ti vývojáři her používají leckterý knihovny a také by potřebovali 64b verze těch knihoven …
Neubylo by jich… Jen by se ocitli pod obrovskou kritikou za to, že „vydali něco, co nefunguje“, nebo dokonce „vůbec nejede“. Co na tom, že tam je ještě druhá instalačka, která půjde bez problému – dle pana Murpyho si nezanedbatelné množství lidí/recenzentů zkusí nainstalovat tu 64bit verzi na 32bit systém a média se toho hned chytí. Opravdu bych jich neubylo…
To je už otázka provedení. Pokud to dobře oddělí (s třeba i trochu schovají do adresáře 64), udělají dobré varování a napíší třeba 32b instalátor nebo wrapper instalátoru, který by zkontroloval podporu 64b, pak by toto problém nebyl.
S co do místa, myslím, že velkou část zabírají mapy apod., které by mohly být pro obě verze společné.
64bit verzi si na 32bit systému nenainstalují – pokud to totiž nezprasí obalením do 32bit instalátoru, tak jim Windows hodí chybu o neplatné aplikaci už při spuštění instalátoru. Jinak ukázka, že 64bit verze vytvořit jde snadno dokazuje i např. existence 64bit verze FarCry (1) a Half-life 2. Je to jenom pár her, ale tvrdit, že je problém spustit 2× kompilátor je blbost. Pokud programují správně (tj. např. píšou-li v C/C++, tak nepředpokládám sizeof(long) = sizeof(void*), nebo sizeof(long)=sizeof(int), apod.) a nepoužívají nějaký JIT kompilátor, tak je to opravdu jenom o tom spustit znovu kompilátor (ať už 64bit, nebo cross kompilátor 32->64) a MUSÍ to fungovat. Používají-li JIT, může to být o něco náročnější, ale problém to nebude – navíc je na internetu spousta dostupných JIT kompilátorů zdarma i pro komerční použití včetně zdrojových kódů a minimálně se mohou poučit, popř. ho přímo použít.
viz výše: „kdyby vydali 64b verzi s označením ‚testovací‘“
Testovat můžou uživatelé – na vlastní riziko. 64 bitoví nadšenci použijí experimentální verzi, firma získá zadarmo testery, BFU použijí 32 bitovou verzi, kterou jim nabídne instalátor (další, další, další, hotovo, hrajeme). A všichni budou spokojeni. Až se bude přecházet na 64 bitů (resp. až budou chtít vydávat podporované 64 bitové verze se zárukou), budou mít náskok a zkušenosti z testovacího provozu.
Pán asi neslyšel o veřejném beta testování, že? Jestli bude testovací binárka (patřičně označená) přiložená na CD nebo dostupná ke stažení na webu, je celkem jedno. Důležité je oddělit je: „tohle je ostrá podporovaná verze, kterou jste si koupili“ a „tohle je testovací verze bez záruk a nemusí fungovat – reklamovat ji nemůžete, ale budeme rádi, když nám poskytnete zpětnou vazbu tam a tam“.
Smutné spíš je, že některé firmy vydávají betaverze svých komerčních produktů jako ostré verze a nechávají si za ně platit – s tím, že zákazníci to nějak přežijí a dodatečně se vydají záplaty. Ale to je jiná kapitola…
Nejlepsi jsou takovyhle zavili JaToVimNejlip-ove, kteri vi jak to vzdycky bylo a jak to vzdycky bude a pritom netusi ze svet se nejen meni, ale pokud se nebudou menit oni tak jednou jejich vlak zustane cekat na nadrazi zatimco jine pojedou dal …
Jinymi slovy: open-source model vyvoje i otevreny model testovani u komercnich vyrobcu (a komunity, ktere se okolo danych produktu tvori) potvrdili, ze lide jsou VICE NEZ ochotni prispet testovanim, bugreportovanim a navrhy na vylepseni I v pripade ze za finalni produkt musi platit a nic na tom financne neziskaji.
Dokonce i Microsoft ma krom placenych nadhanecu plno zanicenych zastancu (*1), jakkoli je to divne.
Tak pozor, bejt tebou jdou si koupit nove tricko , chlapce (tohle uz si vytahal az moc), pan manazer uz svolava k porade …
1*) sice nepochopim jak kdyz je nekdo opakovane brutalne znasilni do prdele a jim se to nelibi, jak pres to ochotne znovu prijdou a tu prdel duverive nastavi znova, no co, vsak slibili ze uz to znova neudelaji a dokonce na to vystrojili velkou reklamni kampan … Ale co, to jsou lide, znovu voli osvedcene lumpy na vsech frontach.
jo tak takhle ty myslis…a na jaky platforme jede strojirenstvi, stavebni prumysl…tohle mas dost drtivou cas prumyslu i osazeni pc a zejmena autocad revit ci inventor, rekneme i rhino, cinema 4D jaksi pod tim tvym linuxem stabilne a bezproblemu nejede…jak je psano v clanku to vase procenticko jaksi nema sanci pro vyvoj sw s takovym zamerenim, vyjimkou je snad maya ale to je spis pro odvazlivce…a navic je celkem dost placena
ja se nebavil o platforme, mile pako. a nebavil jsem se ani o strojirenstvi (ani o podskupine strojirenstvi, tj. navrhu v konkretni aplikaci ktera _dle_tebe_ nema linuxovy protejsek) … predmetem diskuze bylo testovani / bugreporting. a kontextem byl clanek o vyvoji her …
takze zarad zpatecku, zapni mozek, umis li to, a zkus to jeste jednou …
jinak bych mohl zacit uplne stejne irelevantne kontrovat tim, ze interenet (tak jak ho zname) by bez linuxu nebyl, renderovane sekvence do filmu by byly jeste drazsi, nebudeme se bavit o ruznych levnych zarizenich ktere jen tim ze byly postavene na linuchu znovu vratily dobu uzivatelskeho modovani (routery/accesspointy/NAS atd.). rizeni vyroby, bezpecnostni systemy atd dost casto jedou prave na linuxu, ale o tom se tu nikdo nebavil …
a kdyz uz si to nakousl, VariCAD ci CATIA nestaci ? Nevim co jsi ty udelal v Cinema4D, ale spousta lidi si vystaci s Blenderem, pokud chteji subdivision modeler sahnou po Wings3D atd, proste misto aby jako ty breceli bud vezmou to co chteji a nebo to co musi, a vesele na tebe JEBOU ;-)
Zkompilovat kód pro danou architekturu určitě nestačí.
Ono totiž ten „nepřekonatelně sprasený“ kód se vyskytuje v každém druhém projektu a hlavně u x let starých enginů pochybuji, že někdo kdysi dávno myslel i na to, že budou přecházet na 64b architekturu a tím se jim změní např. velikost datových typů …
Prostě třeba se to i přeloží, ale na 99% ta aplikace nebude správně fungovat a bude potřeba doladit a to je fakt. Proč si myslíte, že se v dnešní době nevydávají všechny programy v 64b, když by stačilo přepnout jenom jedno přepínátko a spustit kompilaci?
Nemluvě o tom, že další komplikace s překladem budete mít, pokud nebudete mít 64b knihovny …
Ale no tak, s těma 2× delšími instrukcemi to nemůžete myslet vážně… šup třeba na wiki a něco tam najděte. Dokonce ani ukazatele nemusí být 2× větší. Instrukce používající nové registry (např. xmm8–15, r8-r15) jsou pouze o 1B delší.
A pokud se vykašlou na 32bit verze a budou vytvářet jen 64bit, tak jim to dá naprosto stejně práce. Další uživatele by to alespoň donutilo k nainstalování si 64bit verze Windows (pokud mají legálně, tak v případě retail verze mají obě DVD, v případě OEM si můžou zažádat a za pakatel nechat poslat médium, popř. si ho od něj můžou stáhnout, licenční čislo platí pro obě verze). A nevěřím, že nějaký „dnešní hráč“ nemá 64bit procesor nebo že ho má tak starý, že výrobce jeho HW nedodává ovladače pro 64bit Windows.
Já jsem ten první příspěvek bral jako ironii. Ale začínám mít dojem, že to myslíte vážně. Pak zřejmě nejste obchodník a asi nikdy nebudete. Když budu vydávat hru, která má ambice stát se trhákem, tak si skutečně nemohu dovolit vydat hru tak, aby většině lidí na jejich počítači vůbec nefungovala. Argumentace tím, že si mají pořídit jinou verzi OS a donutit dodavatele veškerého svého HW dodat 64bitové ovladače, no to asi nemyslíte vážně :-) ID Soft tohle zkusil s Doomem 3 a byl to velmi těžký krok. Naštěstí pro ně se jednalo o opravdovou bombu a tak jim „MS Windows 98 not supported“ prošlo. Navíc pro ně hrál fakt, že těch MS Win98 už v té době nebylo až tolik. Přijít dnes s hrou, která nepodporuje MS WinXP 32bit by ovšem byla sebevražda.
S těmi instrukcemi, omlouvám se za neznalost … :) Každopádně si pořád stojím za tím, že kromě pořádku v knihovnách, 64b architektura zatím běžnému uživateli nic nového nepřinese …
Ke zbytku, v dnešní době není reálné vykašlat se na 32b, vyřadil by jste spoustu zákazníků a navíc pořád můžete narazit na problém s chybějícími 64b verzemi knihoven … A dělat dvě verze, jednu pro každou architekturu jsou prostě náklady na víc … (minimálně na vývoj, testování, distribuci a údržbu).
prinese minimalne trochu vykonu navic, a to ve chvili kdy za sebou prestaneme vlacet historickou bagaz. To same by se melo udelat s operacnimy systemy a znacne prorezat vrsvy abstrakci (ktere tam jsou casto jen proto, ze se to „vzdycky tak delalo“/„musime byt zpetne kompatibilni“.
I kdyz „100% Chuck Moore“ pristup je jen druhy pol tohohle extremu, myslim ze je na case aby se to k nemu zase zacalo klonit zpatky, protoze v podstate se soucasnym vypocetnim modelem nemame kam rust.
Krasna architektura jsou treba chipy od GreenArray, spousta jader, cesty mezi nimi, spotreba 0.000hovno, bleskurychly [re]start, boot z jineho beziciho nodu, prvni chip zvladne nabootovat po 1 dratu, kua vidi tady taky nekdo ten potencial ? Misto monolitickyho srace kterej by nejradsi bezel na 1 jadre mel vsechno hezky po hromade decentralizovany granularni model kde muzeme streamovat jak kod tak data na volne nody, samozrejme ze „aby nam to dalo moznosti jako widle / linuch dneska“ tak by to porebovalo „vetsi“ jadra a/nebo vic chipu, ale : Potrebujeme „sitovku“ ? 2 nody staci, posleme jim kod a hotovo. Podobne zvukovka, atd. grafika, a v podstate nepotrebujete hradlovy pole, protoze s timhle se dela lip (IMO ekvivalnet „krabice plny picek“ na steroidech)…
4 GB lze v 32bit rezimu adresovat pouze teoreticky – v praxi je v 4 GB virtualniho adresoveho prostoru namapovana i pamet jadra (typicky to byva 2 GB userspace, 2 GB jadro, ale muze to byt i 3/1) a zarizeni (napr. videokarty), nvic v te casti kde je userspace jsou namapovane i knihovny. Takze realne je k dispozici pro 32bit aplikace asi tak 1.9 GB. A s tim jak stoupa spotraba pameti nejnovejsich her, tak si myslim, ze to tak do 2–3 let zacne nekterym hram vadit a nedivil bych se, pokud se do te doby objevila narocnejsi hra, ktera na 32 bitech nepujde (treba protoze bude potrebovat 6 GB pameti …)
Na 64bit windows je k dispozici 32b aplikaci skoro 4GB. Slovíčko skoro znamená, že to bude něco nad 3.5GB, možná 3.8GB. Ale za předpokladu, že to apikace povolí, protože standardni 32b aplikace má k dispozici jen 2GB a konec.
Tech teoretických 4GB vyplní z malé části systémové knihovny (KERNEL32.DLL, atd), které jsou stejně jen wrapy do 64bitů. Jádro samo osobě „jede“ mimo adresový prostor 32bit aplikace a má do ní plnohodnotný přístup.
Jiná situace je na 32bit windows. Tam má aplikace k dispozici max jen 3GB, 1GB je vyhrazen jádru. (s přepínačem /3GB, bez přepínače jen 2GB/2GB)
Adresy videokaret do toho nepleťte, to se týká fyzické paměti. Pokud aplikace potřebuje přímý přístup do videobufferu, obdrží to ve formě namapované paměti a to ve velikosti nezbytně nutné. Tato namapovaná paměť je ale plně ve správě aplikace, nejde o rezervovanou paměť (jelikož ji lze odmapovat a uvolněné adresy použít k alokaci)
No já od hry čekám zábavu. Jestli při tom zůstane část výkonu mého PC nevyužita je mi celkem jedno :-) Navíc jsem zvyklý spustit Setup.exe a o víc se nestarat. Stejně to funguje i u 64bitových her. Takže pokud se bavíme o MS Windows, pak nemáte v paměti dvoje knihovny (32 a 64bit), ale hned celé sady ovladačů a knihoven, protože u MS Win aplikací je naprosto běžné, že si aplikace nesou svoje verze knihoven ssebou. Pokud jste právě na MS Win tak si zkustě zjistit, kolikrát a v jakých verzích máte teď v paměti msvcrt*.dll. Zkrátka, po nacpání placky do mechaniky vám to po pár minutách skončí spustitelnou hrou. Kromě nabídky instalace nové verze DirectX (i ta je ovšem na tom DVD) se uživatel ani nedozví, jaké knihovny to kam kopírovalo. Jestli je ta nová kopie 32bit nebo 64bit je pak úplně jedno.