ARM, aber sexy

Was Smartphones und Tablets so schnell macht

Wissen | Know-how

Die stromsparenden ARM-Prozessoren in Mobilgeräten sind geradezu lächerlich langsam im Vergleich zu Desktop-CPUs. Trotzdem ist die Bedienung flüssig. Ein ausgeklügeltes Systemdesign und der geschickte Einsatz von Programmiertricks machens möglich.

David gegen Goliath – so mutet der Vergleich von Smartphones und Tablets mit herkömmlichen Notebooks oder gar Desktop-PCs an. Während die einen mit jedem Milliwatt geizen, verheizen die anderen schon im Leerlauf das Hundert- bis Zigtausendfache und strotzen nur so vor Gigahertz und Terabyte. Kein Wunder, dass die Sparkünstler auch bloß einen Bruchteil der Rechenleistung gewöhnlicher x86-(Mobil-)Computer liefern.

Obwohl Benchmarks dieses Ungleichgewicht zweifelsfrei belegen, entsteht im Alltag ein ganz anderer Eindruck: Während der PC noch bootet, hat das iPad bereits die Mails abgeholt und einen Überblick über die Nachrichtenlage geliefert. Die Bedienung mit Wischgesten kapiert selbst mein 16 Monate alter Sohn und hat mehr Spaß am Tablet, als mir lieb ist. Der Internet-Browser scrollt auf ein Fingerwischen hin butterweich. Videos spielt das kleine Gerät genauso ruckelfrei ab wie der PC. Die Montage eines Panoramafotos erledigt die Smartphone-App im Handumdrehen, während die PC-Software erst nach gutem Zureden, manuellem Feinschliff und langer Renderzeit ein schönes Ergebnis präsentiert. Kurzum: Viele alltägliche Aufgaben machen mit einem Tablet mindestens so viel Spaß wie am ausgewachsenen PC. Frage ich meinen Schwiegervater, ob sich sein Dual-Core-Notebook oder das iPad schneller anfühlt, gibt er ohne zu zögern dem iPad den Vorzug.

Selbstverständlich sind nicht alle aufgeführten Vergleiche fair. So ist etwa die Montage eines Riesenpanoramas aus vielen Dutzend Raw-Fotos mit Korrektur von Objektivverzerrungen eine ganz andere Nummer als das Zusammenkleben von zwei bis drei Schnappschüssen und auf einem Tablet oder Smartphone bisher schlicht unmöglich. Dennoch lautet die spannende Frage: Wie erschaffen die kleinen Geräte – trotz geringer Rechenleistung – die Illusion, auch komplexe Aufgaben seien ein Kinderspiel?

Wie geschickt bei iPhone und Co. Hardware, Programmiermodell und Design-Richtlinien zusammenarbeiten, zeigen einige Beispiele: Kaum etwas dürfte so viel zum Sex-Appeal der Apple-Geräte beigetragen haben wie das butterweiche Scrollen von Webseiten. Selbst auf komplexen Seiten folgt der Bildausschnitt sanftesten Streichlern ohne spürbare Verzögerung. Ein schwungvoller Stups und der Seiteninhalt gleitet nicht bloß flüssig über den Schirm, sondern die Bewegung läuft auch noch sanft aus. Ebenso intuitiv und stufenlos klappt das Zoomen per Zweifingergeste.

Vergrößern Simple Idee, große Wirkung: Stapelt man verschiedene Auflösungen desselben Dokuments übereinander und unterteilt jede Ebene in Kacheln überschaubarer Größe, kann sich die GPU um das Verschieben und Zoomen des sichtbaren Bildausschnitts (blau) kümmern. Bei Bedarf lädt sie benachbarte Kacheln nach oder wechselt in eine Ebene mit anderer Auflösung.

Für diese eindrucksvolle Darbietung zeichnen aber nicht etwa schnelle Prozessoren verantwortlich, sondern ein raffinierter Trick: Beim Laden einer Webseite rendert der Browser nicht nur den sichtbaren Bereich, sondern größere Kacheln. Diese übergibt das Betriebssystem wie eine riesige Textur an den Grafikchip, dem das Verschieben des sichtbaren Ausschnitts und das Zoomen obliegt. Während der Benutzer auf der ersten Kachel zu lesen beginnt, berechnet der Hauptprozessor im Hintergrund die übrigen. Wo die Grenzen dieser Kacheln liegen, offenbart sich, wenn man gleich nach dem Öffnen einer komplexen Webseite schnell scrollt. Dann erscheinen noch nicht gerenderte Bereiche als Schachbrettmuster.

Der Render-Trick zieht allerdings nur, wenn sich die ganze Seite am Stück scrollen lässt. Sowohl scrollbare Unterbereiche einer Seite – etwa Frames – als auch absolut positionierte HTML-Elemente, die immer an der gleichen Display-Position schweben, sprengen zumindest die Grundversion des Konzepts. Konsequenterweise hatte Apple diese in den ersten iOS-Versionen mehr oder weniger rigoros unterbunden: So ignorierte Safari HTML-Positionsangaben vom Typ „fixed“ schlichtweg. Sichtbar wurde das etwa bei Bildern, die im PC-Browser auf einen Mausklick hin vergrößert und schwebend über der Webseite erscheinen. Auf iOS-Geräten tauchten diese Overlays mitunter an falscher Stelle auf.

Bis einschließlich iOS 4.3 konnte man auf Webseiten mit Frames erahnen, wie sich ein Smartphone-Prozessor schlägt, wenn er tatsächlich bei jeder Bewegung neu rendern muss. Für das Scrollen in Unterbereichen mit der ohnehin gewöhnungsbedürftigen Zweifingergeste gab es nämlich lange Zeit keine Hardware-Beschleunigung und so blieb von den butterweichen Animationen nichts übrig.

Zum Vergleich: Die Windows-Version von Safari bedient sich keiner solchen Tricks. Folglich spielt es keine Rolle, ob man eine ganze Seite oder nur innerhalb eines Frames scrollt. Auch die kontinuierliche Neuberechnung von Overlay-Elementen fordert einen modernen PC-Prozessor nicht über Gebühr. Aber wehe, man installiert auf einem Uralt-Netbook mit Single-Core-Atom einen modernen Browser. Obwohl dessen Prozessor zumindest den des ersten iPad locker in die Tasche steckt, bereitet Surfen damit keine Freude.

In Smartphones und Tablets stecken hochintegrierte Kombiprozessoren, sogenannte Systems-on-Chip (SoC). Diese vereinen auf einem einzigen Silizium-Die nicht nur die Rechen- (CPU) und Grafikkerne (GPU) mit einem Speicher-Controller, sondern auch noch diverse Beschleunigereinheiten und teils sogar Mobilfunk und GPS. Die Beschleuniger greifen der CPU etwa bei der Bearbeitung von Videomaterial unter die Arme. Firmen wie Samsung, Qualcomm, Texas Instruments oder Nvidia kaufen diese Einzelteile als geistiges Eigentum (Intellectual Property, IP) ein und setzen sie dann zu einem SoC zusammen. Darüber stapeln sie mitunter auch noch Silizium-Scheibchen mit RAM- und Flash-Speicher und vergießen es dann in einem einzigen Chip-Gehäuse. Fast alle Android- und iOS-Geräte verwenden derzeit SoCs mit einem oder mehreren Rechenkernen der britischen CPU-Schmiede ARM, man spricht daher auch von ARM-SoCs.

Vergrößern Während man per Zweifingergeste eine Webseite vergrößert oder verkleinert, skaliert der Grafikprozessor nur den schon berechneten Ausschnitt. Erst beim Loslassen rendert der Browser neu. Dann erscheinen Schriften wieder scharf und die Platzhalter werden gefüllt.

Um die Fähigkeiten dieser ARM-Kerne ranken sich eine ganze Reihe von Mythen. Darüber, ob deren sogenannte RISC-Architektur dem CISC-Konzept von Intels x86-Prozessoren überlegen ist oder nicht, tobt einer der ältesten Streits der Computer-Geschichte (siehe c't 6/12, S. 110 ). Viel entscheidender ist, dass sich das Innenleben klassischer PCs oder Notebooks gravierend von dem eines Smartphones oder Tablets unterscheidet: Dem modularen Aufbau aus x86-Prozessor, Chipsatz, Grafikeinheit, Arbeitsspeicher, Festplatte, Netzwerkchip und Co. steht ein hochintegriertes System-on-Chip gegenüber. Das spart nicht nur Platinenplatz und Kosten, sondern auch Strom, weil alle Komponenten des SoC genau aufeinander abgestimmt sind.

Auf der anderen Seite erschwert die enorme Packungsdichte wiederum die Kühlung. Im Mittel über mehrere Sekunden darf ein SoC nicht mehr als 0,3 bis 0,6 Watt verheizen, sonst wird es zu heiß. Kurzfristige Spitzen, die weit darüber hinausgehen, stellen hingegen kein Problem dar – die thermische Trägheit von Chipstapel und Platine fängt sie ab. Stromsparen gehört damit zu den wichtigsten Design-Zielen beim Entwurf von SoCs. Ganz anders im PC: Selbst ein Notebook-Prozessor darf unter Volllast 35 Watt verbraten und muss sich diese noch nicht einmal mit Chipsatz, Speicher und Co. teilen. Desktop-Prozessoren bringen es sogar auf 130 und Grafikkarten auf über 240 Watt.

Die Performance steht in direktem Zusammenhang mit der elektrischen Leistungsaufnahme: So kommt der Zweikernprozessor Apple A5 des iPad 2 im CoreMark auf 5148 Punkte und liegt in etwa auf dem Niveau der ersten Single-Core-Atoms, macht damit aber keinen Stich gegen AMDs Netbook-Prozessor C-50 (7384 Punkte) oder einen aktuellen Dual-Core-Atom (10 412 Punkte), die derzeit langsamsten x86-Familienmitglieder. Bei den Desktop-Prozessoren beginnt die CoreMark-Skala überhaupt erst bei 20 000 Punkten. Ein Core i3-2100 aus der unteren Mittelklasse erzielt bereits 45 258 Punkte und Intels aktuelle Flaggschiffe liegen weit jenseits von 100 000 Punkten. Dabei schmeichelt der CoreMark – der nur in den innersten Caches abläuft – den kleinen ARM-Prozessoren sogar noch, weil die großen x86-Chips weder ihre gewaltigen L3-Caches noch die breiten Datenautobahnen zum riesigen Arbeitsspeicher in Stellung bringen können. Auch Sprungvorhersageeinheiten, ausgefeilte Cache-Kohärenzmechanismen oder Befehlssatzerweiterungen wie SSE oder AVX honoriert der CoreMark kaum oder gar nicht.

In einem SoC geht es aber viel mehr um Teamwork als um Benchmark-Heldentaten einzelner Einheiten. So übernimmt für Apples Spracheingabesystem Siri etwa ein hochgradig spezialisierter Audioprozessor die Signalverarbeitung. Diesen kauft Apple von Audience zu und integriert ihn in den eigenen A5-Prozessor.

Auch die Bearbeitung von Videomaterial obliegt in Mobilgeräten nicht den CPU-Kernen, sondern Spezialisten. Diese beherrschen meist nur eine Handvoll Videoformate, greifen aber für alle rechenintensiven Schritte auf dedizierte Hardware zurück. Das bedeutet: Solange das Quellmaterial im geeigneten Format vorliegt, erfolgt die Dekodierung mit minimalem Stromverbrauch und völlig ruckelfrei. Die Schattenseite ist allerdings, dass man neue Formate oder Codecs nur schwer per Software nachrüsten kann – spätestens HD-Material verkommt dann zur Dia-Show, weil die CPU-Kerne für dessen Dekodierung bei Weitem zu schlapp sind. Anders beim PC: Dort hat selbst ein 35-Euro-Celeron genug Rums, um solche Codecs in Software auszuführen.

Das gleiche Prinzip gilt für eine ganze Reihe weiterer Beschleuniger: So gehören zu einem OMAP5 von Texas Instruments etwa auch noch ein Signalprozessor für die Verarbeitung der Kamerabilder, ein Audio-Prozessor, ein Kryptobeschleuniger sowie 2D- und 3D-Grafikeinheiten. Selbst die allgemeinen Rechenaufgaben obliegen nicht etwa ausschließlich den beiden schnellen Cortex-A15-Kernen. Wenn gerade wenig Arbeit ansteht, legen sie sich schlafen und es übernehmen die langsameren, aber sehr sparsamen Cortex-M4-Kerne. (bbe)

Den vollständigen Artikel finden Sie in c't 6/2012.

ARM, aber Sexy

Artikel zum Thema "ARM, aber Sexy" finden Sie in c't 6/2012:

  • Was Smartphones und Tablets so schnell macht - Seite 102
  • Die Technik der Systems-on-Chip - Seite 110

Kommentare

Infos zum Artikel

Kapitel
  1. Beschränkt, aber schick
  2. Innenleben
  3. Hase und Igel
23Kommentare
Kommentare lesen (23 Beiträge)
  1. Avatar
  2. Avatar
  3. Avatar
Anzeige

Anzeige

Anzeige