CPU-Vergleich ARM versus x86

Autor / Redakteur: Christian Florheim* / Margit Kuther

Eine höhere CPU-Leistung ermöglicht mit komplexeren Befehlssätzen deutlich umfangreichere Berechnungen. Hierin liegt einer der Hauptunterschiede zwischen ARM- und x86-Prozessoren. Lesen Sie die Details zu den Architekturen, den Einsatzgebieten und den Vor- und Nachteilen von ARM und x86.

Firmen zum Thema

AMD vs. x86: Vor- und Nachteile im Überblick
AMD vs. x86: Vor- und Nachteile im Überblick
(Bild: gemeinfrei / Unsplash)

Die CPU (Central Processing Unit) ist gewissermaßen das „Gehirn“ eines Gerätes. Dieses „Gehirn“ ist jedoch nicht sonderlich intelligent, denn es erfordert sehr spezifische Befehle um zu funktionieren, was man als Befehlssatz bezeichnet.

Der Befehlssatz gibt dem Prozessor sämtliche Anweisungen, wie Daten zwischen Speicher und Registern zu verschieben sind, oder wie eine Berechnung durchzuführen ist. Wenn eine CPU mit niedriger Leistung verwendet werden soll, dann ist es von elementarer Bedeutung, den Befehlssatz möglichst einfach zu halten. Eine höhere CPU Leistung ermöglicht mit komplexeren Befehlssätzen deutlich umfangreichere Berechnungen. Hierin liegt einer der Hauptunterschiede zwischen ARM- und x86-Prozessoren.

Worin unterscheiden sich die Architekturen?

Die ARM-Architektur ist etwas eingeschränkter, ermöglicht keine Verwendung von verschiedenen Betriebssystemen oder Anwendungen, bietet dadurch allerdings auch einen Mehrwert an Sicherheit. Die ARM-Architektur ist deutlich „schlanker“ und effizienter. Der Nutzer kann das System jedoch nicht beliebig erweitern.

Die x86-Architektur, wie sie von Intel und AMD produziert wird, ermöglicht mehr Freiheiten in Bezug auf Betriebssysteme und Anwendungen, wodurch die Risiken eines Ausfalls steigen. Die x86-Architektur ist meist leistungsfähiger und somit in der Lage, komplexere Berechnungen in kürzerer Zeit durchzuführen.

X86-Architektur

X86 basiert auf CISC (Complex Instruction Set Computing), während ARM auf RISC (Reduced Instruction Set Computing) basiert. Der Ansatz von x86-Prozessoren ist sicherlich die Erzielung von Spitzenleistung, was diese im Wesentlichen von ARM-Prozessoren unterscheidet, die eine bessere Energieeffizienz anstreben. CISC-Prozessoren werden von Intel und AMD produziert und eignen sich eher für komplexere Rechnersysteme, wie Desktop CS, Server oder Notebooks.

Für Systeme, die auf ein klassisches Windows OS setzen, sind x86-Prozessoren nahezu verpflichtend. Mit der Zeit etablieren sich auf ARM-Prozessoren immer mehr in diesem Bereich (z. B. Windows 10 on ARM Projekt).

CISC bietet deutlich umfangreichere Befehlssätze / Anweisungen, von denen nahezu jeder einzelne mehrere Operationen ausführen kann (z. B. optimierte mathematische Berechnungen). Das Ergebnis ist eine bessere Leistungsfähigkeit, die man sich jedoch mit höherem Stromverbrauch und stärkerer Wärmeentwicklung / TDP (Thermal Design Power) erkauft. In CISC-Prozessoren hat jeder Befehl einen eigenen Mikrocode, der bei jedem Befehlsaufruf via Dekodereinheit den Befehl in den jeweiligen Maschinenbefehl umwandelt. So wird aus dem Befehl der eigentliche Mikrocode, der dann im Nanoprozessor ausgeführt. Mikrocodes werden nacheinander durchgeführt, währenddessen warten alle anderen Anwendungen. Dieses Verfahren ist leider recht langsam, da der Mikrocode meist mehrere Arbeitsschritte benötigt. Die Regel sind vier bis zehn Takte, um einen Befehl vollständig auszuführen.

ARM-Architektur

ARM basiert auf RISC (Reduced Instruction Set Computing), dessen Ansatz eine besonders effiziente Energiebilanz ist. Mit ihrem Low-Power-Konzept, einhergehend mit geringer Wärmeentwicklung (TDP) eignen sich ARM-Prozessoren besonders für mobile oder batteriebetriebene Anwendungen, bahnen sich aber immer mehr ihren Weg auch in höhere Leistungsklassen. Es existiert zum heutigen Zeitpunkt eine Vielzahl unterschiedlicher ARM-Prozessoren für unterschiedlichste Anwendungsbereiche und Leistungsklassen von Herstellern wie NXP, Nvidia und Rockchip.

Der reduzierte Befehlssatz von RISC-Prozessoren ermöglicht ein schnelles Abarbeiten innerhalb weniger Taktzyklen. Die geringere Anzahl und Einfachheit von Befehlen erlauben einen einfacheren Prozessoraufbau mit einfachen digitalen Schaltungen. Gesetzt wird meist auf unabhängige Verarbeitungseinheiten, sowie mehrere getrennte interne Bussysteme und Parallelverarbeitung.

RISC Befehle müssen nicht in kleinere Mikrocodes dekodiert werden und können dadurch deutlich schneller geladen werden als CISC-Befehle. Zudem haben alle RISC-Befehle das gleiche Format und bieten nur eine Möglichkeit, sie zu laden oder speichern.

Vor- und Nachteile von x86-Prozessoren

Der große Vorteil von x86-Prozessoren ist die höhere Leistungsfähigkeit verglichen mit ARM. X86-Prozessoren sind zudem führend bei Desktop-Rechnern und Server-Landschaften. Sie bieten eine umfangreichere Systemkonfigurierbarkeit und mehr Erweiterungsmöglichkeiten. Der große Nachteil von x86-Prozessoren ist der meist hohe Energieverbrauch und die deutlich höhere Wärmeentwicklung. Durch die meist offeneren Betriebssysteme (z. B. Windows) ergibt sich zudem eine höhere Anfälligkeit für Systembeeinträchtigungen durch ungewollte oder unkontrollierte Installation von Software.

Vor- und Nachteile von ARM-Prozessoren

Als augenscheinliche Vorteile von ARM-Prozessoren lassen sich ein geringer Energieverbrauch, einhergehend mit geringer Wärmeentwicklung, sowie eine gewisse Systemsicherheit ausmachen. Es ist dem Nutzer meist nicht ohne weiteres möglich, unbeabsichtigte Änderungen am System vorzunehmen. ARM-Prozessoren sind somit ideal für mobile, sowie Embedded-Geräte und Steuerungen geeignet. Nachteilig an ARM-Prozessoren stellt sich die meist geringere Leistungsfähigkeit und somit begrenzten Berechnungskapazitäten dar.

Eine langjährige Rivalität

Die Rivalität zwischen ARM- und x86-Prozessoren hat über die vergangenen Jahre gezeigt, dass ARM die erste Wahl für Geräte mit geringem Stromverbrauch ist. Ein Beispiel hierfür sind Smartphones und Tablets. Mittlerweile etabliert sich die ARM-Architektur mehr und mehr auch bei Laptops und Industrieanwendungen, bei denen eine bessere Energieeffizienz gefordert wird.

Anwendungsgebiete ARM und x86

Aus technischer Sicht unterscheiden sich ARM-und x86-Prozessoren dennoch deutlich. Beide Architekturen weisen individuelle Stärken und Schwächen auf. Heutige Ökosysteme unterstützen zunehmend beide Architekturen, was die Abgrenzung bei Anwendungsfällen verschwimmen lässt. Bei der Wahl der passenden Architektur gilt es diverse Faktoren zu berücksichtigen, vor allem ist die individuelle Aufgabenstellung, sowie spezifische Anforderungen von elementarer Bedeutung. Besonders deutlich wird dies für industrielle Anwendungen.

Softwarekompatibilität

Bisher wurde angenommen, dass Betriebssysteme und Anwendungen speziell für eine bestimmte Prozessorarchitektur geschrieben und kompiliert werden, auf der sie später lauffähig sein sollen. Systeme wie Android (auf ARM) oder Windows (auf x86) haben grundsätzlich kein Problem damit, auf mehreren Plattformen ausgeführt zu werden. In der heutigen Zeit gibt es diverse Beispiele für Betriebssysteme, die sowohl auf ARM, als auch auf x86-Prozessorarchitekturen ausgeführt werden können (Beispiele: Microsofts Windows on ARM, Googles Chrome OS oder Embedded Linux / Yocto Linux). Wird die Software nicht neu für die jeweilige Plattform kompiliert, so ist das System auf eine Codeemulation angewiesen, der Programmcode muss also für die CPU-Architektur übersetzt werden. Dies funktioniert relativ reibungslos, allerdings beeinträchtigt es die Leistung.

Die Grenzen zwischen ARM und x86 verschwimmen

Die Grenzen zwischen ARM und x86 verschwimmen immer mehr. ARM-Prozessoren kommen mit immer größer werdendem Leistungspotenzial daher und beginnen zunehmend der x86-Architektur den Rang abzulaufen. Zumindest in einzelnen Bereichen lässt sich dies beobachten. Gerade in der Industrie zeichnet sich ein Trend ab, immer mehr ARM-Prozessoren enthalten spezielle Kerne zur Verwendung von neuronalen Netzwerken, etwa NXP I.MX8M, Nvidia Jetson. Sie positionieren sich damit weit vorne in einem aufstrebenden Markt.

Die Diskussion, welche Prozessorarchitektur leistungsstärker oder überlegener sei, beschäftigt den Markt bereits seit langem. Bei der Beantwortung dieser Frage kommen diverse Faktoren zum Tragen, die Effizienz und Performance beeinflussen können. Faktisch ist heutzutage jeder Prozessor auch ein RISC-Prozessor, oder hat zumindest diverse RISC-Elemente implementiert. Energiesparenden Leistungsriesen gehört die Zukunft.

* Christian Florheim ist Field Application Engineer bei Glyn.

(ID:47630700)