David gegen Goliath: Smartphone-SoC vs. PC-CPU
Hintergrund

David gegen Goliath: Smartphone-SoC vs. PC-CPU

Martin Jud
Zürich, am 04.04.2018
Obschon wir täglich mit Computer und Smartphone hantieren, ist uns dabei nicht zwingend bewusst, dass sich die Technologie der beiden Geräte wesentlich unterscheidet. Nicht nur was die Leistung angeht, auch der Aufbau der Kernkomponenten unterscheidet sich immens.

Wo der klassische Computer einen Prozessor eingebaut hat, findet sich beim Smartphone ein SoC. Die drei Buchstaben stehen dabei für «System on a Chip». Sie vereinen die Hauptkomponenten eines Computers in einem einzigen Chip. Also Prozessor, Grafikkarte, Speicherkontroller und andere Komponenten wie Ethernet- oder Bluetooth-Schnittstellen.

Prozessor-Architektur

Vielleicht hast du dich schon mal gefragt, warum dein Handy mit mehr Prozessor-Kernen und allenfalls höherer Taktfrequenz nicht auch mehr Leistung bringt, als dein in die Jahre gekommenes Notebook. Dies liegt an der Prozessor-Architektur. Die beiden häufigsten Architekturen der Welt sind x86 und ARM. In Notebooks und Desktop-Systemen findet sich die x86-Architektur, bei Smartphones und Tablets sind Prozessoren mit ARM-Architektur auf dem SoC integriert.

Auch wenn uns ARM-Prozessoren der RISC-Familie durch Smartphones und Tablets bekannt sind, wurden diese bereits in den 80er-Jahren entwickelt. 1983 brachte das britische Unternehmen Arcon einen ersten Prototypen mit 32 Bit und 4 MHz auf den Markt. Damals noch mit der Bezeichnung «Acorn Risc Machine» – heute steht ARM für «Advanced RISC Machines». Der Erfolg liess nicht lange auf sich warten und bereits 1986 folgte die Serienproduktion mit einer Taktfrequenz von 8 MHz.

Die x86-Architektur dagegen erblickte das Licht der Welt bereits Ende der 70er-Jahre. Im Jahr 1978 kam der erste Prozessor mit x86-Befehlsatzarchitektur in Form des Intel i8086 auf den Markt. Einige von uns dürften freudig in vergangenen Zeiten schwelgen, hören wir Bezeichnungen wie «Intel 80286», «Intel 80386» (AMD Am386) oder «Intel 486» (AMD Am486). Auch ich machte meine ersten Computer-Gehversuche auf einem 286er, lernte DOS-Befehle und freute mich über grottig aussehende Games.

Unterschiede der Architekturen

Prozessoren von ARM sind mit Fokus auf einen geringen Stromverbrauch und einfachen Befehlssatz konzipiert. Dagegen sind x86-Prozessoren hauptsächlich für Umgebungen mit hoher Leistung und hohem Durchsatz entwickelt. Die Unterschiede der Prozessorfamilien sind vielfältig und betreffen Rechenleistung, Stromverbrauch sowie die mögliche Software des Endanwenders.

Rechenleistung: Wofür sind die Prozessoren ausgelegt?

Bei ARM-Prozessoren sagt schon die Bezeichnung der Familie einiges. RISC steht für «Reduced Instruction Set Computing»; also für Computing mit reduziertem Befehlssatz. Der Prozessor konzentriert sich darauf, die Anzahl der Befehle so gering und einfach wie möglich zu halten. Die Einfachheit hat dabei für Hardware- und Software-Ingenieure einige Vorteile. Bei einfachen Anweisungen benötigt die Schaltung weniger Transistoren, was zu mehr Chipfläche und kleineren Chips führt. Allerdings haben einfache Anweisungen auch Nachteile; so werden für die Ausführung von Aufgaben mehr Anweisungen nötig, was zu einem erhöhten Speicherverbrauch und längeren Ausführungszeiten führt. Dies versucht der ARM-Prozessor durch höhere Taktraten und geschicktes Pipelining (Abarbeitung von Maschinenbefehlen durch Zerlegung in Teilaufgaben) zu kompensieren.

Im Gegensatz dazu gehören x86-Prozessoren zur CISC-Familie. «Complex Instruction Set Computing» bedeutet auf Deutsch so viel wie «Komplexe Befehlssatz-Berechnung» und ist darauf ausgelegt, komplexe Aufgaben mit grosser Flexibilität auszuführen. So wird es für CISC-basierte Systeme beispielsweise möglich, Berechnungen zwischen verschiedenen Prozessorregistern auszuführen, ohne dass die Software davor benötigte Variablen laden muss. Weitere gängige Operationen sind die Multiplikation mit Gleitkommazahlen, komplexe Speichermanipulationen, Datenkonvertierungen und vieles mehr.

Übrigens:
Im Gegensatz zu x86 verstehen ARM-CPUs nur drei Kategorien von Befehlen. * Befehle zum Zugriff auf den Speicher (Load/Store) * Arithmetische oder logische Befehle für Werte in Registern * Befehle zum Ändern des Programmflusses (Sprünge, Subprogrammaufrufe)

Leistungsaufnahme

Da die Akkukapazität von mobilen Geräten aus Gründen der Grösse relativ beschränkt ist, ist die Leistungsaufnahme bei einem SoC eines der wichtigsten Kriterien. So verbraucht dein Smartphone-SoC weniger als 5 Watt. Ausserdem kann (fast immer) auf eine aktive Kühlung verzichtet werden, was zusätzlich Energie spart.
Dagegen kann ein High-End x86-Prozessor aufgrund der Komplexität schnell mal 130 Watt Leistung verbrauchen.

David gegen Goliath: Vergleichs-Disziplin Videocodierung

Normalerweise macht ein Vergleich der beiden Prozessor-Architekturen keinen Sinn. Jede Architektur hat ihre eigenen Vorzüge und Einsatzgebiete. Dennoch möchte ich bewusstmachen, wie sehr sich die Leistung der Prozessoren unterscheidet. Daher habe ich kurzerhand die DVD von «Sleepy Hollow» gerippt und lasse den Film von MPEG-2 in H264 konvertieren. Will heissen: Wir haben einen rund 6.3 GB grossen Film, der danach bei praktisch gleichbleibender Qualität mit rund 1400 MB Speicherplatz auskommen wird.

Folgende Geräte treten gegeneinander an: *Notebook Lenovo X220 aus dem Jahr 2012 mit Intel Core i5-2520M, 2 Kerne, 2.50 GHz Grundtaktfrequenz (Max. Turbo-Taktfrequenz von 3.20 GHz) *Smartphone Blackberry Priv aus dem Jahr 2015 mit Qualcomm Snapdragon 808, 6 Kerne, bis 2.0 GHz Taktfrequenz

Natürlich achte ich darauf, dass bei beiden Gräten nebst dem selben Codec auch die gleiche Bitrate voreingestellt wird. Ich konvertiere (Software-Decoding) den Film mit 1400 kbps – zu Testzwecken nur in einem Durchgang (normalerweise konvertiert man Videos zwecks besserer Qualität in mindestens zwei Durchgängen). Die Audiospuren belasse ich unangetastet im vorliegenden DTS-Format.

Konvertierung mit dem Notebook

Für die Konvertierung mit dem Notebook benutze ich VirtualDub. Die Schwarzen Balken ums Video belasse ich, um die selbe Voraussetzung wie später auf dem Smartphone zu schaffen (Beschneiden, respektive Croppen ist damit nicht möglich).

Die Konfiguration des Codecs. Zu Testzwecken konvertieren wir ausnahmsweise im «Single-Pass-Modus».
Die Konfiguration des Codecs. Zu Testzwecken konvertieren wir ausnahmsweise im «Single-Pass-Modus».

Der Vorgang dauert mit dem etwas veralteten Core i5-2520M rund eine Stunde. Im Jahr 2002 hätte mein Pentium dazu noch rund 8 Stunden benötigt. Damals liess ich den PC jeweils über Nacht laufen, um Filme zu konvertieren.

Die Konvertierung dauert mit dem Notebook rund eine Stunde.
Die Konvertierung dauert mit dem Notebook rund eine Stunde.

Konvertierung mit dem Smartphone

Um eine 6.3 GB grosse Datei mit dem Smartphone zu konvertieren, muss ich recht lange nach einer Software suchen, welche beim Verarbeiten der Daten nicht abstürzt oder eine Fehlermeldung bringt. Schlussendlich klappt es mit der App «A/V Converter».

Mein Smartphone beginnt mit der Konvertierung und schafft es, rund 10 Bilder in der Sekunde zu rendern. Ich warte fünf Minuten und die vorangeschlagene Gesamtzeit zeigt 4 Stunden und 3 Minuten.

Das Smartphone benötigt rund vier mal so lange für die Konvertierung, wie das Notebook.
Das Smartphone benötigt rund vier mal so lange für die Konvertierung, wie das Notebook.

Fazit

Das Konvertierungs-Beispiel zeigt gut auf, dass ein Smartphone-SoC nicht mit einer herkömlichen PC-CPU verglichen werden kann. Die resultierende vierfache Zeit für die selbe Operation macht aber bewusst, wie schwachbrüstig unsere täglichen mobilen Begleiter im Grunde genommen sind.

Beachtet man die sehr geringe Leistungsaufnahme von lediglich 5 Watt bei einem Smartphone-SoC, wird aus dem lahmen Esel aber schnell ein fleissiges Maultier. Mein i5 verbraucht rund 35 Watt; damit könnten sieben SoCs betrieben werden. Würden diese zusammengehängt, könnte bei gleichem Stromverbrauch schneller konvertiert werden, als mit der PC-CPU.

30 Personen gefällt dieser Artikel


Martin Jud
Martin Jud
Editor, Zürich
Der tägliche Kuss der Muse lässt meine Kreativität spriessen. Werde ich mal nicht geküsst, so versuche ich mich mittels Träumen neu zu inspirieren. Denn wer träumt, verschläft nie sein Leben.

Diese Beiträge könnten dich auch interessieren