Die Unterschiede zwischen ARM und Intel x86-64

Unterschied zwischen Intel Arm Featured

Da ARM-Chips inzwischen in hochleistungsfähigen Laptops und Edge-Servern weit verbreitet sind, ist es gerechtfertigt zu fragen, ob diese neuen Geräte Ihren nächsten Kauf wert sind. Es ist an der Zeit, die technischen Unterschiede zwischen ARM-Prozessoren und den kraftvolleren x86-64-Vorgängern zu verstehen, die zuvor den Chipmarkt ungehindert dominierten.

Inhaltsverzeichnis

  • Was bedeutet x86-64 überhaupt?
  • Befehlssätze
  • Energieverbrauch
  • Soll ich ein ARM- oder ein x86-System kaufen?

Lesen Sie: Kann ARM letztendlich x86-CPUs in Laptops ersetzen? Lassen Sie es uns herausfinden!

Was bedeutet x86-64 überhaupt?

Intel-Prozessoren, die in Desktop- und Laptop-Computern zu finden sind, werden manchmal als „x86“-Prozessoren bezeichnet. Die 64-Bit-Architektur, die heute alle modernen Computer verwenden, basiert auf dem x86-Modell, das jetzt als „x86-64“ bezeichnet wird.

Das klingt alles ein wenig verwirrend, hilft aber zu erklären, warum es zwei verschiedene Ordner für Program Files unter Windows gibt.

X86arm Programfiles

Um es einfach zu machen, gehen alle 32-Bit-Anwendungen in den x86-Ordner, und die 64-Bit-Anwendungen gehen in den anderen Ordner. Dies ist eine Konvention, die seit der Veröffentlichung der 64-Bit-Version von Windows XP durch Microsoft im Jahr 2001 besteht.

Um die Dinge ein wenig zu vereinfachen, werden wir „x86-64“ als „x86“ bezeichnen, da es genügend Ähnlichkeiten zwischen 32-Bit- und 64-Bit-Chips gibt, um sie zusammenzufassen.

Die Bezeichnung „x86“ stammt von dem Vorläufer der modernen Verarbeitung, einem Mikroprozessor, der von Intel mit dem Namen 8086 hergestellt wurde. Dieser 16-Bit-Chip arbeitete mit einem Befehlssatz, der auch heute noch in großem Umfang von modernen Prozessoren zur Durchführung anspruchsvoller Rechenaufgaben verwendet wird.

Alles von Ihrem Texteditor bis hin zu fortgeschrittener Video-Rendering-Software kann immer noch unter einer Architektur arbeiten, die 1978 geboren wurde!

Seit der Einführung des Mikroprozessors 8086 setzte Intel die Benennungskonvention für zukünftige Modelle wie den 80286 und 80386 fort, bis es mit der Tradition brach und die Pentium-Serie herausbrachte. Dennoch zollen wir diesen alten Chips immer noch Respekt, indem wir all diese nachfolgenden Prozessoren, die ihren Befehlssatz verwenden, als „x86“ kategorisieren.

Selbst die moderneren 64-Bit-Prozessoren, die AMD in den 2000er Jahren erstmals in der Opteron-Serie veröffentlichte, tragen dieselbe Bezeichnung, da die überwältigende Mehrheit der 64-Bit-Prozessoren in Desktop-Systemen und Servern weiterhin auf der Grundlage des inzwischen bescheidenen 8086 steht.

Befehlssätze

Die gesamte Funktionalität eines Prozessors basiert auf dem, was als Befehlssatz bezeichnet wird. Dies ist eine hardwired festgelegte Menge von grundlegenden Operationen, die ein Chip ausführen kann. Jeder Befehl sagt dem Chip, dass er Aufgaben wie grundlegende Mathematik und das Verschieben von Daten durchführen soll. An der Basis jedes Codes in jedem Programm, das Sie auf Ihrem Rechner ausführen, befindet sich eine Schicht, die mit dem Prozessor kommuniziert. Diese Schicht verwendet auch ihren eigenen Code, der als Assemblersprache bekannt ist, die eine Stufe weiter in die Basisbefehle übersetzt, die oft als Maschinenkode oder Maschinensprache bezeichnet werden.

Die IHS eines Intel i386

Hier kommen wir zum wesentlichen Unterschied zwischen ARM- und x86-Chips.

x86-Chips verwenden Complex Instruction Set Computing (CISC), während ARM-Chips Reduced Instruction Set Computing (RISC) verwenden. Während CISC-Chips versuchen, mehr „Arbeit“ in einen Befehl zu packen, dabei jedoch Taktrunden opfern, um diese Aufgabe zu erledigen, haben RISC-Chips (wie der Name schon sagt) einen viel kleineren Befehlssatz, der alles in einfachere Schritte zerlegt, die in einem einzigen Taktzyklus ausgeführt werden können.

CISC vs. RISC

Wenn ein CISC-Chip zwei Zahlen multiplizieren muss, könnte er einen einzigen Befehl ausführen: MULT 2, 3. Dieser einzelne Befehl deckt das Laden der Zahlen aus dem Speicher, das Multiplizieren und das Speichern des Ergebnisses an der richtigen Speicherstelle ab. Ein RISC-Chip, der dieselbe Operation ausführt, würde viele weitere Schritte benötigen. Zunächst einen LOAD-Befehl, um die Zahlen von den Registern in die Ausführungseinheit zu verschieben. Dann einen PROD-Befehl, um die Zahlen zu multiplizieren. Schließlich einen STOR-Befehl, um das Ergebnis im richtigen Register abzulegen.

Apple M1 SoC auf einem MacBook montiert

Obwohl der CISC-Chip effizienter erscheinen könnte, da seine Befehle einfacher wirken, sollten einige wichtige Unterschiede beachtet werden:

  • Erstens führen CISC-Chips Befehle über mehrere Taktzyklen aus, während jeder Befehl in einem RISC-Chip über einen einzigen Taktzyklus ausgeführt wird. Aus diesem Grund könnte unser hypothetischer MULT-Befehl die gleiche Anzahl an Zyklen beanspruchen wie die Gruppe von RISC-Befehlen, die dieselbe Aufgabe ausführen.
  • Zweitens müssen alle CISC-Befehle und die Logik in Transistoren gespeichert werden. RISC-Chips können weniger Transistoren verwenden, da sie weniger Befehle speichern müssen.
  • Drittens ermöglicht die geringere Anzahl an Transistoren, die von RISC benötigt werden, einen geringeren Stromverbrauch.

Es gibt einige Vorteile von CISC. Erstens muss der Computer nicht viel Arbeit leisten, um von einer menschenlesbaren Programmiersprache wie C zur prozessorbasierten Assemblersprache zu konvertieren. Tatsächlich ist der oben genannte MULT-Befehl sehr ähnlich zu dem C-Befehl foo = foo * bar.

RISC-Chips fordern den Compiler auf, viel mehr Arbeit zu leisten, um Code in Assemblersprache zu übertragen. CISC-Chips können ihre Operationen auch direkt im Systemspeicher durchführen, während RISC-Chips die Daten zuerst vom Speicher in die Prozessorregister verschieben müssen, bevor sie mit ihnen arbeiten.

In einem direkten Leistungsvergleich zwischen den beiden gibt es aus Sicht der Verbraucher keinen eindeutigen Gewinner. RISC hat jedoch noch ein weiteres Ass im Ärmel, um gegenüber CISC einen Vorteil zu erzielen.

Energieverbrauch

Zwischen CISC und RISC gibt es überhaupt keinen Wettstreit in Bezug auf den Energieverbrauch. RISC hat hier eindeutig die Krone. Ein reduzierter Befehlssatz sorgt für einen kleineren Waferfußabdruck, wodurch der Chip kleiner und damit weniger stromhungrig wird.

Innenteile eines traditionellen ATX-Desktop-Netzteils

Kleinere Chips mit weniger mikroskopischen Komponenten haben auch weniger elektrische Widerstände zu bewältigen und benötigen nicht so viel Watt, um zu laufen. Die beste Fallstudie hierfür ist die bewährte Technologie des Smartphones, einem „leichtgewichtigen Computer“, der eine immense Leistung für seine relativ kleine Größe bietet und in vielen Fällen über 24 Stunden mit einem vergleichsweise kleinen Akku auskommt.

Das bedeutet jedoch nicht, dass alle Computer anfangen werden, ARM-Chips zu verwenden, um den Stromverbrauch zu reduzieren. Auf dem Desktop-Markt, wo das System normalerweise von einer direkten Verbindung zu einer Steckdose abhängt und nicht von einer Batterie, ist die Energieeffizienz nicht so ein großes Anliegen. CISC-Chips leisten in diesen Situationen immer noch Erstaunliches, und es gibt keine Anzeichen dafür, dass sich dies in naher Zukunft ändern wird.

Soll ich ein ARM- oder ein x86-System kaufen?

Da Microsoft auch Windows 11 für die ARM-Architektur veröffentlicht und Apple seine Macs auf ARM-Chips umstellt, könnten Sie auch daran interessiert sein, einen ARM-PC zu kaufen. Das stellt jedoch alles auf eine sehr einfache Frage: Versuchen Sie, jeden Teil der Leistung pro Watt-Stunde aus der von Ihrer Batterie gelieferten Energie herauszuholen? Oder sind Sie mehr geneigt, so viel rohe Leistung wie möglich durch Ihr Gerät zu drücken, auch wenn das zu Lasten der Akkulaufzeit geht?

Für die Mehrheit der Anwendungsfälle, für die jemand ein System kaufen würde, ist die Entscheidung so einfach. Am Ende sollten Sie nur sicherstellen, dass Sie Ihr Ladekabel nicht vergessen!