Vi trenger 64-bit

Vi trenger 64-bit

Behovet for 64-bit operativsystem melder seg for flere skrivebordsbrukere. Men fortsatt er 64-bit Windows uaktuelt for de fleste.

KOMMENTAR: Siden 2003 har det blitt levert vanlige pc-er med 64-bit-prosessorer. Etter at Core 2 kom har alle aktuelle prosessorer vært 64-bit. Microsoft kom etter hvert med Windows XP Pro x64, og Vista har vært tilgjengelig i 64-bit-versjon i nesten ett år nå.

Den primære fordelen i skrivebordssammenheng med 64-bit operativsystem vil ikke være 64-bit-prosesseringen i seg selv, men minneadressering. Med 32-bit-versjonen av Windows XP eller Vista kan i utgangspunktet 4 gigabyte minne adresseres. Standarden er at applikasjoner kan benytte opptil 2 gigabyte, mens resten kan benyttes av operativsystemet i seg selv. I praksis får man gjerne ikke utnyttet mer enn 3,25-3,5 gigabyte, eller enda mindre på mer avanserte pc-er. Årsaken til dette er andre enheter som benytter adressene, som for eksempel grafikkort. 3 gigabyte minne kan settes av for bruk til applikasjoner under 32-bit Windows, men denne løsningen er ikke uten komplikasjoner den heller.

For ekstrem-pc-en vi bygget tidligere i år kunne kun 2,2 gigabyte minne utnyttes på grunn av annet utstyr som benyttet adresseområdene som er tilgjengelig (et stor område ble da stjålet av de to GeForce 8800GTX-768MB-kortene i systemet).

Minne er i dag rimelig. 2 gigabyte er mer eller mindre standard anbefaling i dag, mens avanserte brukere kan ha nytte av mer. Ytelsesforbedringene kommer ikke bare gjennom av applikasjonene ikke trenger å bruke virtuelt minne, men også at Windows generelle buffer (system cache) settes høyere, og kan brukes til å bufre nylig brukte filer/data.

Problemet skulle jo i teorien løse seg ved å satse på 64-bit-versjonen av Windows. 64-bit-versjonen av Windows er i seg selv også helt grei. Problemene er i første rekke knyttet til kompatibilitet.

"64-bit-versjonen av Windows er i seg selv også helt grei. Problemene er i første rekke knyttet til kompatibilitet."

For enkelte maskinvareenheter finnes det ikke drivere, men dette kan man komme seg rundt med å være litt selektiv for hva man velger. Det virker også som situasjonen blir bedre og bedre.

Større problemer er det med programvaren. Det aller meste av vanlige 32-bit Windows-applikasjoner kan kjøres under 64-bit Windows. I forhold til minneadressering er det også en fordel. Mens en applikasjon kan bruke 2 gigabyte under 32-bit Windows, kan samme applikasjonen i teorien benytte opptil 4 gigabyte under 64-bit-versjonen av Windows.

Man trenger med andre ord ikke en 64-bit-implementasjon av programvaren for å utnytte mer minne. Samtidig skal det sies at en 64-bit-implementasjon kunne ha utnyttet enda mer. Rent praktisk sitter jeg her med lite erfaring, og har ikke fått prøvd ut hvordan applikasjonene i praksis ville håndtert dette.

32-bit har fordeler med 64-bit

Ser man for eksempel på Adobes dokumentasjon for Photoshop kan man lese at programmet, som er 32-bit, under 64-bit-versjonen av Windows vil kunne utnytte mer enn 2 gigabyte minne i utgangspunktet. Blant annet vil 3 gigabyte settes av til bildedataene.

Videre kan enkelte plug-ins benytte dedikert minne, samt at med systemer med mer enn 4 gigabyte minne vil Photoshops egen løsning for virtuelt minne i stor grad kunne være bufret i systembufferen Windows setter opp, slik at bruk av denne vil være betraktelig raskere.

Med andre ord, en 32-bit-applikasjon med store minnekrav kan være raskere under 64-bit Windows hvis den er kompilert på rett måte. Kjører man flere applikasjoner vil også de kunne ha egne minneområder tilgjengelig, og slippe å begrense seg i like stor grad som under 32-bit Windows.

Bedre på Mac?

Tar vi utgangspunkt i MacOS X 10.4, som om kort tid erstattes av 10.5, har man en kvasi-64-bit-løsning. I utgangspunktet kan man si at MacOS X er 64-bit, men deler av det er fortsatt 32-bit – blant annet en del delte bibliotekfiler som benyttes av en rekke applikasjoner.

En 32-bit-applikasjon under MacOS X kan bruke opptil 3 gigabyte minne. For Windows er dette tallet altså 2 gigabyte i utgangspunktet, og en løsning som gir 3 gigabyte kan ha sine kompatiblitetsproblemer (se artikkel hos Microsoft).

Også for Mac-plattformen fortsetter applikasjonene stort sett å være 32-bit, men ut i fra det vi kan forstå vil applikasjonene ikke være begrenset innenfor en viss mengde minne slik som under 32-bit-versjonen av Windows. Kjører man flere applikasjoner samtidig vil de kunne bruke det de trenger av minne, så framt det er tilgjengelig.

Slik vi kan forstå informasjonen fra Apple når det gjelder MacOS X 10.5 ( "Leopard") skal også de systemkomponentene som i 10.4 var 32-bit ha blitt 64-bit. Apples løsning ser imidlertid ut til å være at drivere fortsatt kan være 32-bit-implementasjoner. Om dette alltid fungerer i praksis alltid vil være tør vi ikke svare på.

MacOS X 10.5 vil i likhet med 64-bit-versjonene av Windows i all hovedsak også kunne kjøre eldre 32-bit-applikasjoner. En fordel Apple har er naturligvis også at maskinparken er mer konsis ettersom antallet systemer som kan kjøre det nye operativsystemet er relativt begrenset, sett ut i fra at Apple selv har stått bak maskinene og har hatt et relativt begrenset modellutvalg.

Ytelsesreduksjon med 64-bit

Det er ikke bare fordeler med en 64-bit-implementasjon. Uten å gå i detalj inn på hvordan programmene er bygget opp vil 64-bit-applikasjoner på en del områder være mer ressurskrevende. Tar man igjen Photoshop som et eksempel er det uttalt fra en av utviklerne at den økte mengden data som generelt må gå over minnebussen med en 64-bit-implementasjon av Photoshop vil kunne redusere ytelsen.

Løsningen ville ha vært hvis systemene hadde hatt enda bedre minnebåndbredde. Også rent prosesseringsmessig vil det kunne være applikasjoner hvor det rett og slett ikke blir hensiktsmessig med en 64-bit-implementasjon utifra ren ytelse.

Kommer 64-bit-programmene?

"Med andre ord, man trenger ikke nødvendigvis 64-bit-programmer, men programmer som er kompatible med 64-bit-versjonen av Windows. "

Både når det gjelder Windows og MacOS X vil nok de fleste applikasjoner fortsatt la vente på seg når det gjelder en 64-bit-implementasjon. MacOS X har imidlertid en fordel framfor 64-bit-versjonen av Windows, men fordelen er ikke knyttet til operativsystemet i seg selv.

Problemet for Windows er at utviklerne av programvare og drivere for Windows ikke tar seg det ekstra bryderiet i å sjekke/tilpasse applikasjonene slik at de fungerer under 64-bit-versjonen. Rent applikasjonsmessig har man gjerne ikke de store problemene ettersom mye fungerer.

For mange kan det imidlertid være den ene applikasjonen som ikke fungerer som vil holde tilbake for en oppgradering. For en del brukere kan det være så banalt at favorittspillet ikke fungerer. Med andre ord, man trenger ikke nødvendigvis 64-bit-programmer, men programmer som er kompatible med 64-bit-versjonen av Windows.

Ei heller for MacOS X kan man forvente en revolusjon der utviklerne går over til å utvikle 64-bit-applikasjoner av stort og smått. MacOS X 10.5 vil være kompatibelt med eldre systemer. Ut ifra det vi kan forstå om systemkravene vil det være mulig å kjøre 10.5 både på eldre PowerPC G4-baserte løsninger, og Apple har inntil ganske nylig også levert maskiner med Intels Core Duo, som ikke har 64-bit-utvidelse (noe Core 2 Duo har).

Utvikling av både både 32- og 64-bit-versjoner påfører programvareselskapene og til sist sluttkundene en del ekstra kostnader. Disse gjelder ikke bare for utvikling, men også vedlikehold av applikasjonen.

Skulle man har noen applikasjoner man er avhengig av som ikke vil kjøre under 64-bit-versjonen av Windows kan virtualisering være en mulighet. Man vil da ha en virtuell maskin med 32-bit-versjon av Windows installert.

Utvikling