PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : warum erst jetzt 64-bit-cpus


Neon3D
2006-08-24, 01:58:13
ich frage mich warum erst jetzt sich 64bit cpu's am markt zeigen, wobei es doch schon seit jahren 256bit gpu architekturen von nvdia und ati gibt?

hat intel nicht das know how um 256 bit cpu's rauszubringen oder woran liegt das?

Ganon
2006-08-24, 08:32:57
Das ist zufällig nur Marketing. ;)

Grafikkarten sind auch nur 32bit bzw. 64bit "CPU"s. Nur berechnen sie halt xfach diesen Wert. Nimmt man diesen + dann hast du deine 256bit oder was auch immer. ;)

Ist wie mit 128bit SSE. ;) 128bit Einzeln berechnet das Ding keineswegs "nativ". Aber 4x32bit bzw. 2x64bit. ;)

Spasstiger
2006-08-24, 08:59:07
Grafikkarten sind auch nur 32bit bzw. 64bit "CPU"s. Nur berechnen sie halt xfach diesen Wert. Nimmt man diesen + dann hast du deine 256bit oder was auch immer. ;)
Und selbst 32 Bit können sie erst seit der GeForce-FX- und der Radeon-X1K-Reihe.
In der DX8-Generation hat man sich ja tatsächlich noch mit 8 Bit Rechengenauigkeit je Farbkanal zufrieden gegeben. :eek:

Gast
2006-08-24, 09:50:56
Und selbst 32 Bit können sie erst seit der GeForce-FX- und der Radeon-X1K-Reihe.
In der DX8-Generation hat man sich ja tatsächlich noch mit 8 Bit Rechengenauigkeit je Farbkanal zufrieden gegeben. :eek:
die rechengenauigkeit ist um einiges besser, sogar schon zu voodoo zeiten ;), was du meinst ist der framebuffer bzw texturen.

Gast
2006-08-24, 10:07:48
Es ist hier zu unterschieden zwischen einem 256 bits breiten Bus bei Grafikkarten und der Fähigkeit, 64 bit große Register verarbeiten zu können wie bei A64/C2D/Konsorten, was GPUs mitnichten können.

Kurgan
2006-08-24, 10:14:44
nebenbei bemerkt gibt es 64bit-cpus schon ne ganze weile: intels itanium und amds sledgehammer, beide seit .. äh .. 2000 oder 2001.

Vertigo
2006-08-24, 10:17:16
nebenbei bemerkt gibt es 64bit-cpus schon ne ganze weile: intels itanium und amds sledgehammer, beide seit .. äh .. 2000 oder 2001.
Sun führte die 64bit Ultra-SPARC schon Mitte der 90er ein - der Thread kommt reichlich spät ... :rolleyes:

BlackBirdSR
2006-08-24, 10:23:30
ich frage mich warum erst jetzt sich 64bit cpu's am markt zeigen, wobei es doch schon seit jahren 256bit gpu architekturen von nvdia und ati gibt?

hat intel nicht das know how um 256 bit cpu's rauszubringen oder woran liegt das?

Ist wohl grundsätzlich eine Kosten/Nutzen-Funktion.
Zusätzliche Funktionen in Form einer 64Bit-Architektur/Erweiterung sind immer mit Entwicklung und zusätzlichen Kosten verbunden.
Wenn man es noch nicht braucht, spart man sich diese einfach gerne.

Die letzten Jahre war es zwar absehbar, dass der Desktopmarkt irgendwann an Grenzen kommt, es war jedoch nicht so akut, dass unbedingt 64Bit CPUs auf den Markt kommen müssten.
Inzwischen ist die Sache aber etwas verschärft, und um rechtzeitig Hard- und Software zu haben, gibt es seit einigen Jahren 64Bit CPUs für den Desktop.
Davor hätte sich kaum jemand dafür interessiert, und noch weniger hätten Software dafür geschrieben. Microsoft wohl schon gleich gar nicht.

Nvidia und ATI haben intern vielleicht einige 256 Bit breite Datenpfade, aber als 256 Bit Architektur würde ich solche Prozessoren niemals beschreiben. Auch von Intel oder AMD wirst du solche so schnell nicht sehen. Wahrscheinlich gar nicht mehr.
Du kannst dir ruhig einmal ausrechnen wieviel Bit 2^128 oder 2^256 sind. Und bisher müssen wir nicht jedes Atom im Sonnensystem adressieren können ;) Es ist einfach eine unglaubliche Menge Speicher die man dann benutzen könnte, aber nicht hat.
Hinsichtlich der Berechnungen bringen 128Bit ALUs momentan auch keine gewichtigen Vorteile (mit Ausnahmen) die man in nächster Zeit unbedingt braucht. Und Gleitkommarechnungen sind momentan mit 80/64 Bit genau genug für den Desktop.

svenw
2006-08-24, 10:25:29
Außerdem machen 64Bit Architekturen erst Sinn bei großen Speichermengenund/oder sehr großen Zahlen. Wenn man nur 4+6 rechnen will schleppt man bei 64bit jede Menge lerre und unnütze Bits durch die Gegend. Und Speicher sit erst seit kurzem so billig, das man für Privatleute bezahlbare 64Bit Systeme bauen kann.

Kurgan
2006-08-24, 10:27:02
Sun führte die 64bit Ultra-SPARC schon Mitte der 90er ein - der Thread kommt reichlich spät ... :rolleyes:
:redface: ups :rolleyes:
total vergessen *schäm*

BlackBirdSR
2006-08-24, 10:30:48
:redface: ups :rolleyes:
total vergessen *schäm*

brauchst du nicht.

91 hatte MIPS die erste 64Bit CPU.
92 folgte DEC mit dem 64Bit Alpha

Kurgan
2006-08-24, 10:36:47
brauchst du nicht.

91 hatte MIPS die erste 64Bit CPU.
92 folgte DEC mit dem 64Bit Alpha
91 hatte ich meinen ersten 286dx (oder so) .. etwas, was heute mein casio ti30 in grund und boden rechnen würde :redface:
aber MIPS sagt mir zumindest was, da hab ich mal von gehört :biggrin:

edit: interesse halber: noch so ne ahnung, was die teile damals gekostet haben?

Vertigo
2006-08-24, 10:42:05
brauchst du nicht.

91 hatte MIPS die erste 64Bit CPU.
92 folgte DEC mit dem 64Bit Alpha
Stimmt. Wikipedia ahoi ...
http://de.wikipedia.org/wiki/64-Bit-Architektur

StefanV
2006-08-24, 10:49:36
Und wann kam Intel mit ihrem, als RAID Prozessor zweckentfremdeten 64bit Prozessor, dem i860??

Nicht zu verwechseln mit dem Server/Workstation Chipsatz i860 ;)
BTW: eher kam der Nachfolger, i960, zum Einsatz...

SavageX
2006-08-24, 11:35:10
Ein gewisses Problem liegt in der Definition von "x-Bit Architektur" - und die Hersteller treiben allerlei Schindluder damit.

Erste These: x-Bit gibt an, dass ein Prozessor x-Bit pro Schritt verarbeiten kann.

Problem: Auch ein 32-Bit x86 Prozessor verarbeitet gerne pro Schritt mehr als eben 32 bit. So kann der selige Pentium-MMX 64bit an Integer-Werten pro "Schritt" verarbeiten. Und die Fließkommaeinheit bei x86 arbeitet seit jeher intern mit 80bit Präzision.

Zweite These: x-Bit gibt an, wie breit eine datenverarbeitende Einheit angebunden ist.

Problem: Der 8088 ist ein 16-bit Prozessor (abgespeckter 8086), der einen 8-bit Datenbus hat. Der Pentium ist ein 32-bit Prozessor, der einen 64 bit Speicherbus hat. Weiterhin kann z.b. ein Grafikchip gerne mal mit 128 bit oder 64 bit angebunden sein - wie es der Preis erfordert.

Dritte These: x-bit gibt an, wieviel effektive bits zur Adressierung von Daten im Speicher zur Verfügung stehen.

Problem: Seit z.B. dem Pentium Pro kann ein x86 Prozessor durch Tricksereien 36bit Speicher addressieren. Allerdings ist dieser Speicherbereich dann nicht "an einem Stück". Umgekehrt können z.B. weder Opteron noch Xeon derzeit tatsächlich 64bit im realen Speicher addressieren, weil der Speicherbus dafür nicht breit genug ist (ist aber kein Beinbruch, weil sich sowieso nicht genügend Speicher einstecken lassen würde).

Vierte These: x-bit gibt an, wie breit laut Befehlssatz die "general purpose"-Register bei CPUs sind. Das schliesst die Addressregister mit ein.

Das scheint halbwegs zu passen.

Neon3D
2006-08-25, 01:19:17
Ein gewisses Problem liegt in der Definition von "x-Bit Architektur" - und die Hersteller treiben allerlei Schindluder damit.

Erste These: x-Bit gibt an, dass ein Prozessor x-Bit pro Schritt verarbeiten kann.

Problem: Auch ein 32-Bit x86 Prozessor verarbeitet gerne pro Schritt mehr als eben 32 bit. So kann der selige Pentium-MMX 64bit an Integer-Werten pro "Schritt" verarbeiten. Und die Fließkommaeinheit bei x86 arbeitet seit jeher intern mit 80bit Präzision.

Zweite These: x-Bit gibt an, wie breit eine datenverarbeitende Einheit angebunden ist.

Problem: Der 8088 ist ein 16-bit Prozessor (abgespeckter 8086), der einen 8-bit Datenbus hat. Der Pentium ist ein 32-bit Prozessor, der einen 64 bit Speicherbus hat. Weiterhin kann z.b. ein Grafikchip gerne mal mit 128 bit oder 64 bit angebunden sein - wie es der Preis erfordert.

Dritte These: x-bit gibt an, wieviel effektive bits zur Adressierung von Daten im Speicher zur Verfügung stehen.

Problem: Seit z.B. dem Pentium Pro kann ein x86 Prozessor durch Tricksereien 36bit Speicher addressieren. Allerdings ist dieser Speicherbereich dann nicht "an einem Stück". Umgekehrt können z.B. weder Opteron noch Xeon derzeit tatsächlich 64bit im realen Speicher addressieren, weil der Speicherbus dafür nicht breit genug ist (ist aber kein Beinbruch, weil sich sowieso nicht genügend Speicher einstecken lassen würde).

Vierte These: x-bit gibt an, wie breit laut Befehlssatz die "general purpose"-Register bei CPUs sind. Das schliesst die Addressregister mit ein.

Das scheint halbwegs zu passen.

:biggrin: also wird mächtig gutes marketing betrieben :biggrin:

Gast
2006-08-25, 20:15:29
Außerdem machen 64Bit Architekturen erst Sinn bei großen Speichermengenund/oder sehr großen Zahlen. Wenn man nur 4+6 rechnen will schleppt man bei 64bit jede Menge lerre und unnütze Bits durch die Gegend.

Der Code wird halt ein wenig länger (da die Pointer nun 64bit sind), aber du wirst doch nicht gezwungen, alles in 64bit breiten Variablen abzulegen.

Gast
2006-08-25, 21:50:09
Der Code wird halt ein wenig länger (da die Pointer nun 64bit sind), aber du wirst doch nicht gezwungen, alles in 64bit breiten Variablen abzulegen.

zumindest zu 64bit breiten pointern wirst du gezwungen wenn du in deinem programm die 64bit erweiterungen benutzen willst.

Gast
2006-08-25, 22:09:19
Außerdem machen 64Bit Architekturen erst Sinn bei großen Speichermengenund/oder sehr großen Zahlen. Wenn man nur 4+6 rechnen will schleppt man bei 64bit jede Menge lerre und unnütze Bits durch die Gegend. Und Speicher sit erst seit kurzem so billig, das man für Privatleute bezahlbare 64Bit Systeme bauen kann.

Natürlich kann man mit einer x86-64-CPU auch noch performant mit 32-Bit rechnen (sogar etwas schneller).

OBrian
2006-08-26, 17:25:27
Ja, aber nicht weil es eine 64bit-CPU ist, sondern trotzdem. Man hat das in der X86-64-Architektur eben alles so gebaut, daß auch 32bit-Code vernünftig ausgeführt wird, weil das wichtig war für den Anwendungsbereich - hat aber auch ein paar Nachteile gekostet, weil bestimmte Optimierungen oder Einsparungen dadurch nicht möglich waren. Der Intel Itanium dagegen ist wirklich schnell in 64bit, aber führt 32bit-Code nur sehr langsam aus, da er dafür nicht ausgelegt ist. War eben eine Designentscheidung, die sich im Nachhinein als nicht optimal herausgestellt hat.

Gast
2006-08-26, 17:44:19
Ich meinte das anders. Man kann auch im 64-Bit-Modus mit 32-Bit-Integern rechnen und ist damit sogar etwas schneller unterwegs.

Das Argument mit 4+6 macht also keinen Sinn, da die x86-64-C/C++-Compiler die ich kenne für Ganzzahlarithmetik alle 32-Bit-Integer verwenden (gibt deshalb auch Probleme wenn man einen Pointer auf einen int casten will).

Gast
2006-08-26, 17:46:12
Ja, aber nicht weil es eine 64bit-CPU ist, sondern trotzdem. Man hat das in der X86-64-Architektur eben alles so gebaut, daß auch 32bit-Code vernünftig ausgeführt wird, weil das wichtig war für den Anwendungsbereich - hat aber auch ein paar Nachteile gekostet, weil bestimmte Optimierungen oder Einsparungen dadurch nicht möglich waren. Der Intel Itanium dagegen ist wirklich schnell in 64bit, aber führt 32bit-Code nur sehr langsam aus, da er dafür nicht ausgelegt ist. War eben eine Designentscheidung, die sich im Nachhinein als nicht optimal herausgestellt hat.

das hat weniger mit 32 und 64 bit zu tun sondern damit dass der itanium eben einen komplett neuen befehlssatz hat, während x86-64 eben noch immer x86 ist, nur eben erweitert. logisch dass nun auch der alte code performant ausgeführt werden kann, wenn ihn die cpu direkt beherrscht, während beim itanium der alte code erst mühseelig über (mittlerweile) einen softwarelayer in einen für die cpu verständliche sprache übersetzt werden muss.

der itanium hätte aber das gleiche problem wenn er nur ein 32bit-kern wäre, die ansätze von IA32 und VLIW-code von IA64 sind eben grundverschieden.