ARM vs X86

Floppy5885

Lt. Commander
Registriert
Mai 2014
Beiträge
1.424
Hallo ich habe mich mal ein wenig mit den Mobil CPUs auseinander gesetzt und einen Test über den A12X gelesen dieser ist ja ein ARM x64 Chip. Er soll von der Leistung her an einen i7 reichen bei gerademal 12 Watt TDP.
Ebenfalls habe ich gelesen das Apple die Zwischenschritte zwischen Ram, CPU, Grafikspeicher einspart und einfach sagt alle teilen sich einen Speicher. Hoffe das ich das richtig verstanden habe.

Zu meiner Frage wenn Apple eine Aktivgekühlte CPU rausbringen würde, mit 65 Watt TDP und ordentlich mehr Takt etc und das System auf eine Desktopvariante ausbaut, würde man damit nicht AMD und Intel komplett in die Wüste schicken?

Und kann mir einer auf laisch erklären wo der Unterschied ist zwischen X86 und X64?

Danke schonmal
 
Floppy5885 schrieb:
Und kann mir einer auf laisch erklären wo der Unterschied ist zwischen X86 und X64?
x86 bezeichnet eine CPU Familie mit rückwärts kompatiblen Befehlssatz. Diese Familie umfasst die (meisten) heutigen Prozessoren der Firma Intel, AMD und VIA.
x64, AMD64 oder x86_64 ist eine Befehlssatzerweiterung, die die x86-Architektur 64-Bit fähig macht.
Wenn man jegliche Prozessoren betrachtet, ist eine der interessantesten Informationen die, ob die Architektur auf 8, 16, 32 oder 64 Bit aufbaut. Hiermit ist die Länge der Instruktionen, die Breite des Adressbusses, die Anzahl der Register und Integer gemeint. Das ist ausschlaggebend für die Komplexität der ausführbaren Befehle und zb dafür, wie viel Speicher adressiert werden kann.
ARM ist nun eine etwas andere Prozessorfamilie als x86 und vom Befehlssatz gänzlich inkompatibel. Das bedeutet, dass Software, die für x86 kompiliert wurde nicht auf ARM lauffähig ist, da der Prozessor die Instruktionen nicht versteht und verarbeiten kann. ARM x64 bedeutet schlicht, dass auch dieser Prozessor ein 64bit-Design hat. Das hat aber bis auf dimensionsspezifische Ähnlichkeiten nichts mit x86_64 zu tun.
ARM gehört zur großen Familie der klassischen RISC-Prozessoren. RISC-Prozessoren basieren auf der Philosophie, dass der Befehlssatz möglichst kompakt ist, Befehle immer gleich lang sind und keine Komplexen Instruktionen enthält. Somit kann die Hardware die Instruktionen schnell und effizient ausführen, auch wenn man für eine komplexe Aufgabe evtl extrem viele einfache Instruktionen braucht, um sie zu abstrahieren.
CISC verfolgt eine andere Philosophie, nämlich die, möglichst viele, komplexe Operanten in einen Befehl zu packen. Die alten x86-Prozessoren bis zum Pentium 1 waren klassische CISC-Prozessoren. Mittlerweile sind heutige x86-Prozessoren aber nur noch CISC-Interpreter mit RISC-Kern, da sich CISC als Sackgasse erwiesen hat.

Zum A12X: Nun, es gibt auch i7 mit 15 watt TDP. ARM-Chips werden rauf und runter für ihre Energieeffizienz gepriesen, aber bei x86 hat sich dahingegend auch viel getan. Schaut man sich den ein oder anderen Serverbenchmark mit ARM vs x86 an sieht man, das ARM für dieselbe Rechenleistung nicht so signifikant weniger Energie verbraucht.
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: schnälli, Banned, Schmiddlon und 2 andere
Floppy5885 schrieb:
Zu meiner Frage wenn Apple eine Aktivgekühlte CPU rausbringen würde, mit 65 Watt TDP und ordentlich mehr Takt etc und das System auf eine Desktopvariante ausbaut, würde man damit nicht AMD und Intel komplett in die Wüste schicken?
nö, weil die Designs Low-Power sind. Das was du da als Gedankenexperiment anführst, geht davon aus, dass einig die TDP der limitierende Faktor wäre und die Leistung direkt damit skalieren würde, solange man das kühlen kann. Das ist halt Nonsense


Floppy5885 schrieb:
Und kann mir einer auf laisch erklären wo der Unterschied ist zwischen X86 und X64?
Die Frage ist schon falsch. Du meinst, was der Unterschied ist zwischen x86 und ARM. Und da ist die Antwort: vollkommen andere Architektur und zueinander nicht kompatibel. Du kannst kein x86 Programm auf einem ARM-System ausführen. X86 ist eine uralte Architektur und muss weiterhin abwärtskompatibel bleiben. Würde man das nicht machen, könnte man viel schnellere CPUs bauen, aber hätte keine Software mehr, die drauf laufen würde
 
Erstmal eine Klarstellung:

es gibt folgende Befehlsätze / Prozessor-Architekturen:
x86 (32 Bit)
x86-64 (64bit, auch x64 genannt)
A64 (ARM 64 Bit, u.a. Apple A12X, mit obigen nicht kompatibel)

Ein Vergleich zwischen x86 (32 oder 64bit) mit A64 ist nur bedingt sinnvoll. Und die Leistungsfähigkeit spielt auch primär keine Rolle, denn die meiste Software wird für x86 entwickelt und ist nicht nativ lauffähig auf ARM Prozessoren. Dann kann dein Prozessor so schnell sein wie er will.

Nun zu Apple:

Apple hat den strategischen Vorteil, dass sie ein eigenes Software-Ökosystem besitzen (iOS und MacOS), damit könnte es in Zukunft möglich sein, das jegliche Software auch auf anderen Prozessoren läuft (z.B: basierend auf RISC V oder eben ARMv8). Denn durch das "große" Ökosystem kann man Softwarehersteller eher dazu bewegen, dass sie ihre Produkte, ihre Software auch für ARM Prozessoren entwickeln und optimieren.

Also du kannst Prozessor A und Prozessor B nicht wirklich vergleichen, ohne dabei auf das Ökosystem drumherum einzugehen.
 
Floppy5885 schrieb:
Er soll von der Leistung her an einen i7 reichen bei gerademal 12 Watt TDP.
Gegenüber welchem i7? Außerdem halte ich es für unwahrscheinlich das sich außer bei kurzer Last bei gleichzeitig bei einer Leistungsaufnahme die deutlich über diesen 12W der TDP (dies ist ja keine Angabe zu tatsächlichen Leistungsaufnahme, sondern nur eine zur Auslegung der Kühllösung) auch nur gegenüber einem der aktuellen i7 der Fall ist, außer vielleicht bei ausgewählen Benchmarks.

Aber das Problem ist sowieso die Software, hast Du eine die es für ARM gibt und brauchst Du keine die es nur für x86 oder x86_64 gibt?
 
Danke für die Antworten.

Also X86 Architektur gibt es schon länger und die Software auf dem PC ist darauf ausgelegt mit genau dieser klarzukommen. Die Befehlssätze sind länger und komplexer als die für ARM.
Jetzt hat Apple aber IOS und MACOS.
Nehmen wir mal an das wir ein Spiel entwickeln und es für ARM wie auch x86 entwickeln. Zwei völlig verschiedene Architekturen.
Kann es denn trotzdem sein das ARM schneller ist bzw bessere Ergebnisse erreicht als zb ein i7 8550U/R5,7 mit GTX/Vega und sich x86 als Sackgasse rausstellt?
 
Floppy5885 schrieb:
und sich x86 als Sackgasse rausstellt?
x86 hat sich bereits seit zig Jahren als Sackgasse herausgestellt, wenn es um hohe Performance geht.
Genau deswegen nimmt man heutzutage leistungsfähigere Architketuren oder zweckentfremdet sogar Chips und nimmt sie für Berechnungen her, siehe Grafikkarten, welche man rum Rendern oder wissenschaftliche Berechnungen benutzt.
Das ändert aber rein gar nichts daran, dass die PC-Technik eben auf x86 aufbaut. Die Technik wäre auch längst gestorben, wenn nicht AMD gekommen wäre und einfach 64bit drangeflanscht hätte. So war Intel auch gezwungen diese Erweiterung zu übernehmen und nicht mit einer neuen Monopol-Stellung den Markt mit Itanium-Fails zu fluten.
Die Entwicklung verschob sich vor ein paar Jahren eh zu ARM. Mittlerweile kann man viele Sachen bereits auf Android oder iOS machen, was früher undenkbar gewesen wäre.
Aber ARM ist kein Ersatz für x86. Selbst Microsoft hat nach großem Tamtam sein ARM-Windows wieder eingestampft. Es reicht eben für einen PC nicht, dass man nur plattformübergreifende Software aus dem Appstore bekommt und alles andere nicht oder nur sehr langsam emuliert läuft.

Deine allgemeine Aussage bzgl "ist schneller als ein i7" ist zudem auch totaler Nonsense. Such dir eine Aufgabe/Berechnung, bau dafür einen speziellen Befehlssatz oder gar eine Architektur, dann ist dieser wahrscheinlich zigmal schneller als jeder i7. Aber darum gehts halt nunmal nicht. Eine CPU muss flexibel verschiedenste Aufgaben abarbeiten und das ist das, was zählt. Nicht wie sie in einem synthetischen Benchmark eine andere Technik deklassiert

Kurz zusammengefasst:
So lange es PCs gibt, gibt es auch x86. Schlicht, weil PCs auf x86 basieren und diese Technik die Grundlage bildet. Das schließt andere Gerätegattungen nicht aus.
 
  • Gefällt mir
Reaktionen: Banned
Eine GPU ist auch deutlich schneller, als die CPU gleicher TDP. Aber eben nur bei speziellen Tätigkeiten.

Die tollen "Benchmarks" A la Geekbench sind eben einfach nicht brauchbar, direkter Vergleich ist kaum möglich. Selbst wenn man die Software dafür angepasst hat, gibt es immer noch Berechnungen, die auf einen Aktuellen X86 schneller ausgeführt werden können. Befehlssätze beschleunigen diverse Operationen, um den Umfang heutiger X86-CPUs zu erreichen, muss ARM noch ein bisschen wachsen.

Selbst im Servergeschäft ist ARM nicht mal richtig angekommen, was auch an Softwaresupport liegen mag.
 
rg88 schrieb:
So lange es PCs gibt, gibt es auch x86.
Das glaube ich nicht, zumal auch die Serverwelt immer mehr von x86er CPUs dominiert wird. Die Versuche mit ARM dort Fuß zu fassen sind bisher kläglich gescheitert und Oracle hat die SPARFC Entwicklung eingestellt und das Entwicklerteam entlassen. Damit bliebt einzig noch IBM als Konkurrent übrig und dies hat mit den PC nun wirklich nichts zu tun. Die x86 CPU sind einfach (mit) die leistungsfähigstens CPUs die es gibt (von speziellen Anwendungen abgesehen, die macht man dann auf GPUs oder ASICs) und haben die mit Abstand breiteste SW Basis überhaupt.
 
Zurück
Oben