Verfasst von:

Intel: "Multiple Prozessor-Kerne sind schlecht für Android"

Verfasst von: Kamal Nicholas — 12.06.2012

In den vergangenen 12 Monaten hat sich in Sachen Smartphone und Tablet-Hardware wirklich eine Menge getan. Das Transformer Prime, das HTC One X, Samsungs Galaxy S3, das LG Optimus 4X HD und Huaweis Ascend D Quad haben alle gemeinsam, dass sie mit einem Quad Core-Prozessor ausgestattet sind. Gegen Ende des Jahres werden wir mit Sicherheit noch mehr solcher Geräte sehen. Doch die Frage bleibt, ob es überhaupt sinnvoll ist, Dual- und Quad Core-Prozessoren in einem Smartphone zu haben. Nun, laut Intel, dem größten Chip-Hersteller der Welt, ist mehr als ein 1-Kern-Prozessor in einem Android Smartphone nicht nur keine gute Idee, sondern unter Umständen sogar eine schadhafte. Leider belässt es Intel bei dieser recht kritischen Aussage, ohne tatsächliche Informationen und Fakten zu liefern, warum genau sie dieser Überzeugung sind. Deshalb haben wir uns mal ein paar Gedanken dazu gemacht.

Einführung in Dual Core

Bevor es mit unserer eigenen Meinung zu der Sache los geht und wir das Ganze etwas anders sehen als Intel, hier ein Blick auf die Fakten: Mit der Veröffentlichung von Android Gingerbread begann Android erstmals, Dual Core-Geräte zu unterstützen. Das erste Gerät solcher Natur war das LG Optimus 2X, das mit einem Tegra 2 1GHz Prozessor ausgestattet war. Es folgte eine Horde weiterer Dual Core-Geräte. Doch nicht nur Android-Smartphones stockten auf, auch Apple packte in die neueren Modelle Multicore-Prozessoren, für das iPhone 5 ist ein weiteres Upgrade zu erwarten. Lange Rede, kurzer Sinn: Dual Core-Prozessoren sind nichts Neues. Seit Ende 2011/Anfang 2012 haben die Hersteller nun begonnen, sogar 4 Kern- anstatt 2 Kern-Prozessoren in ihre Highend-Geräte zu verarbeiten. Es wäre also nicht überraschend, wenn gegen Ende des Jahres Dual-Core der Standard für gute Mittelsegment-Smartphones wird. Schauen wir uns doch mal an, was Intel von dieser Entwicklung hält.

Intels „Funde“

Laut eigener Aussage hat Intel bei der Durchführung verschiedener Tests mit Android-Geräten, die mit mehr als einem Prozessorkern und Ice Cream Sandwich ausgestattet waren, herausgefunden, dass multiple Kerne nur sehr wenig bis gar keinen Vorteil mit sich brächten. In manchen Fällen sollen die multiplen Prozessorkerne sogar die Leistung eingeschränkt haben. Laut Intels Mike Bell liegt das daran, dass Androids Prozess-Scheduler noch nicht soweit ist, um mit mit Prozessoren mit mehr als einem Kern umzugehen.

So teilt Bell mit, dass teilweise Single Core-Prozessoren schneller als Multicore-Prozessoren auf Android liefen, allerdings versäumte er dabei zu erwähnen, welche Prozessoren in welchen Geräten auf welche Weise getestet wurden. Nicht unerhebliche Grundinformationen, wie wir meinen. Mike Bell erklärt weiter:

“If you are in a non-power constrained case, I think multiple cores make a lot of sense because you can run the cores full out, you can actually heavily load them and/or if the operating system has a good thread scheduler. A lot of stuff we are dealing with, thread scheduling and thread affinity, isn’t there yet and on top of that, largely when the operating system goes to do a single task, a lot of other stuff stops. So as we move to multiple cores, we’re actually putting a lot of investment into software to fix the scheduler and fix the threading so if we do multi-core products it actually takes advantage of it.”

(frei übersetzt: „Wenn man sich in einem Leistungs-unabhängigen Fall befindet, sind multiple Kerne sinnvoll, da man die Kerne voll ausreizen kann.Man kann sie schwer beladen, wenn das Betriebssystem einen guten Prozess -Scheduler besitzt. Viele Dinge, mit denen wir uns auseinandersetzen, wie Thread-Planung und Thread-Affinität, existieren bisher nicht. Darüber hinaus werden viele andere Dinge gestoppt, wenn das Betriebssystem sich nur noch um eine Aufgabe kümmert. Während wir uns also in Richtung multipler Kerne bewegen, investieren wir ziemlich viel in Software, um den Scheduler und das Threading zu verbessern, wodurch den Multikern-Prozessoren ihr Vorteil genommen wird.“)

Natürlich hat Intel eine ganze Menge Wissen, wenn es um Prozessoren geht. Doch wenn es um mobiles Computing geht, ist das Unternehmen recht neu im Geschäft. Dementsprechend kann Intel mit den eigenen Chipsets in Smartphones bisher nur relativ wenig Interesse bei den Konsumenten wecken.

Wir gehen mal soweit und sagen, das bei einem ganz normalen Alltagsgebrauch zwei oder vier Prozessorkerne wirklich nur einen minimalen Unterschied machen. Wer auf der Suche nach einem Leistungsschub ist, um alltägliche Aufgaben zu bewältigen, sollte sich in den meisten Fällen lieber für ein Smartphone mit mehr RAM anstatt mit mehr Prozessoren entscheiden (diese sind langsam aber sicher endlich im Kommen) .

ABER, und das ist ein großes Aber: Persönlich würde ich mir kein Quad-Core Gerät kaufen, in der Hoffnung, noch ein bisschen schneller durch meine Bildschirme zu navigieren. Und das ist wohl der entscheidende Punkt, den Intel hier übersieht. 

Wann mehr Prozessorkerne sinnvoll sind

Apps und Spiele. Das sind die Stichwörter. Für Spiele und grafisch intensive Applikationen erweist sich etwa ein mit einem Tegra 3 Qaud-Core Prozessor ausgestattetes Gerät als spürbar schneller und „flüssiger“ als etwa ein Tegra 2 Dual Core-Gerät. Demnach ist Intels Aussage „Mehr Kerne sind schlecht für Android und vermindern die Leistung“ schlichtweg falsch.

So wirkt diese Aussage auch etwas weit gegriffen und erweckt die Vermutung, dass es hierbei vor allem um eine etwas aggressivere Marketingstrategie geht, um die eigene mobile Chipsets besser zu bewerben. Die Kundschaft mag Apps, und deshalb sind auch multiple Prozessorkerne sinnvoll. Punkt. Auch kann man davon ausgehen, dass durch den Einsatz mehrerer Prozessorkerne das Multitasking auf mobilen Geräten verbessert wird. Und selbst wenn nicht, ist ganz klar, das bestimmte Anwendungen die multiplen Kerne nutzen können und dies auch tun.

Fazit

Im ganz normalen Alltagsgebrauch sollte man von multiplen Prozessorkernen keine Wunder erwarten. Kann Android den Einsatz der multiplen Prozessorkerne verbessern? Mit Sicherheit. Und wir hoffen, dass dies auch geschehen wird. Doch zu behaupten, dass multiple Kerne einen negative Effekt auf Android-Geräte haben, ohne einen Beweis oder wichtige Details dafür zu liefern, wie genau diese Schlussfolgerung zustande gekommen ist, ist einfach sinnlos. Bis Intel also nicht die Details darüber liefert, welche Prozessoren in welchen Geräten wie getestet und gebenchmarkt wurden, betrachten wir deren Aussage noch unter Vorbehalt.

Quellen: WMPoweruser via Slashgear

Quelle: Slashgear

34 Kommentare

Neuen Kommentar schreiben:
  • Alexander Fromm 21.06.2012 Link zum Kommentar

    Der Beweis wurde gerade geliefert. Ein S3 in Irland ging in Flammen auf. Da werden wohl angeblich die Vier-Kerne das Gerät überhitzt haben. Man darf auf den weiteren Verlauf gespannt sein. Ich zumindest werden sowieso erstmal die Finger von dem S3 lassen. Jetzt erst recht.

  • Jan Roessler 12.06.2012 Link zum Kommentar

    nicht ganz. unter reinem linux sind threads vergleichbar mit prozessen die gemeinsamen speicher haben und werden vom kernel auf die cores verteilt, bei android macht dies dalvik. nur service kannst du unter android in eigene prozesse auslagern alles andere sind threads im selben dalvikprozess. wies unter m$ ist weiss ich nicht, darvin wird wie linux sein. android ist quasi ein javaos wies sun ja vor eonen versprochen hatte.

  • Simon F. 12.06.2012 Link zum Kommentar

    Also wird klar, dass mehrere Kerne in Android genutzt werden können, aber sich der AppEntwickler selber Gedanken über die Aufteilung der Prozesse machen muss. Ausserdem macht dies nicht bei allen Anwendungen Sinn.
    Ist dies bei anderen OS nicht auch genau so?
    Kriegt Intel Android nicht ordentlich auf ihren CPUs zu laufen?

  • Jan Roessler 12.06.2012 Link zum Kommentar

    wenn du die service im manifest psssend definierst laufen sie in einem eigenen prozess , sonst im selben wie die activity. prozess=kernel, thread=dalvik.

  • Simon F. 12.06.2012 Link zum Kommentar

    In der Praxis ist der Unterschied deutlich bemerkbar, wenn man beispielsweise alle Apps aus dem Market/Playstore aktualisiert, Appmonster automatisch Backups erstellt und man dazu noch etwas machen möchte.
    Wie sieht die Sache bei Android eigentlich aus, wenn man mehrere Sevices aus einer Activiti startet? Verteilen die sich dann auf die Kerne?

  • Jan Roessler 12.06.2012 Link zum Kommentar

    intel hat von problemen bei einer unguenstigen verteilung auf die einzelnen cores gesprochen. diese muesse optimiert werden um sich blockierende prozesse zu vermeiden. ein guter hinweis, das wird wohl in der dalvik zu machen sein. wie oben schon erwaehnt hat linux ein ausgezeichnetes multiprozessing. ich entwickle seit ueber zehn jahren programme fuer linux die auf das multiprozessing ausgelegt sind. da jedoch jede app im android in einem eigenen prozess laeuft und nur wenn man es explizit bei der entwicklung angibt auch die service, also hintergrundprogramme einer app, einen eigenen prozess bekommen, laeuft die verteilung ueber die threads in der dalvik.
    damit hat jede app erstmal von haus aus maximal einen core. die performance kommt also primaer aus der taktfrequenz und der auslagerung in die gpu wenns um grafik geht. ob eine app nun mehr als einen core nutzen kann liegt im sheduler der threads der dalvik.
    sollten jedoch mehrere apps gleichzeitig aktiv sein, sind sie auf mehrere cores durch den linuxkernel verteilt, da ja fuer jede app ein eigener linuxprozess , resp. eine eigene dalvikinstance, aktiv ist.
    man muss also einiges tun um einen quadcore auszunutzen.
    die sache mit dem ram ist prinzipell richtig. der rechnet zwar nicht, aber android lager auch aktive apps bis zu ihrer totalen verstuemmelung aus wenn der ram knapp wird. und das passiert recht schnell wenn die apps sich mit daten vollsaugen. also wirkt viel ram positiv auf ausfuehrung von apps, da sie nicht andauernd ihre einzelnen teile wieder aufwendig reaktivieren muessen.
    es ist schon eine maechtige umstellung , zumindest fuer mich serverprogrammierer, auf android zu entwickeln da eine menge neuer dinge zu beachten und mit zusaetzlichem programmieraufwand abzudecken sind. es muss jederzeit damit gerechnet werden das teile der app vom system deaktivert werden, weil ein anruf eingeht, der ram verbraucht ist, der akku nurnoch geringe leistung hat etc.
    ich denke, intel hat da was gefunden, was sie benennen koennen und nun versuchen sie es zu vermarkten um ihre bisherigen defizite bezueglich komplett anders funktionierender computer, und nix anderes sind androiden, zu ueberdecken. kein server oder pc rechnet damit, das die programme in teilen gestoppt oder entfernt werden waehrend sie laufen, es werden nur die taktraten runtergeschraubt. im mobile bereich langt das aber nicht.

  • 7
    Kanosir 12.06.2012 Link zum Kommentar

    @Autor: Man muss hierbei aber auch zwischen dem Betriebssystem Android und Applikationen/Spielen unterscheiden. So wie ich das verstanden habe, kritisiert Intel vorallem die mangelhafte Aufteilung von Rechenoperationen des Betriebssystems in einem Multi-Kern System. Ich bin kein Technik Experte, allerdings kann ich mir durchaus vorstellen, dass Android noch nicht in der Lage ist das Prozessor Potenzial sinnvoll zu nutzen.

    Sicherlich profitieren Spiele und grafisch anspruchsvolle Apps von mehr Rechenleistung, aber auch hier ist nur ein Bruchteil der Apps für die Nutzung dieser Prozessoren ausgelegt.
    Deswegen finde ich dein hartes Urteil ungerechtfertigt, da bei einer suboptimalen Prozessor Verwaltung mehr Kerne sich durchaus negativ bemerkbar machen können z.b. im Bezug auf den Stromverbrauch.

  • Marcus B. 12.06.2012 Link zum Kommentar

    Das langsame Java-System muss ja durch die Hardware wett gemacht werden, deshalb gibts auch nirgendwo sonst Multicores ;)

  • Murat S. 12.06.2012 Link zum Kommentar

    Joe schön geschrieben

  • Joe F. 12.06.2012 Link zum Kommentar

    Intel macht, wie viele andere auch, einen kleinen Fehler 'Android' als ganzes über einen Kamm zu scheren:
    das Android-OS hat einen Linux-Unterbau - und der ist sehr gut Multiprocessor-Fähig! Das eigentliche Problem stellt die derzeitige Implementierung der Dalvik-VM + UI dar und nicht irgend ein nativer Scheduler (der übrigens nahezu ident mit dem vom originalen Linux-System ist - daher stellt sich die Frage: ist Linux wirklich nicht 100% Multiprocessorfähig? Da werden sich aber die ganzen Systeme der Top500 der Supercomputerliste bedanken!!)

    Leider ist die derzeitig verfügbare Dalvik-VM immer noch zu sehr an die originale Harmony-VM (inkl. verschiedener anderer Einflüsse..) "angelehnt". Zumal die Hauptprämisse der Entwickler ja die reine Ausführungsgeschwindigkeit pro App ist - also reine Single-Thread-Ausführung. Darum auch die JIT-Basteleien. Multi-CPU-Unterstützung ist&war zwar auch implementiert - aber eben nicht (noch nicht! Warten wir auf Android-OS 5 bzw. 4.1/4.2!!) der Haupt-Augenmerk bei der Entwicklung.

    Hier ist Apples iOS klar im Vorteil, da alles nativ ist (und zusätzlich aus einer Hand und auf ein lang erprobtes OS passierend)

  • Murat S. 12.06.2012 Link zum Kommentar

    ich Habe mir sogar ein ersatz akku von für sgs geholt selbst mit dem komme ich nicht über den tag ohne mir gedanken über mein akku machen zu müssen, ganz anders bei mein sgs3 wo ich mir überhaupt garkeine gedanken mehr mache.

    Und ich habe immer rum gemerkert gehabt wegen dem akku von dem smartphones und entlich bin ich glücklich damit.

  • Murat S. 12.06.2012 Link zum Kommentar

    also ich verstehe auch nicht was Intel da von sich gibt und was ich hier lesen muss von wegen ich bin 4jahre programmierer und der andere quadcore prozessor und es ruckelt.

    1. Multiple Prozessor-Kerne schonen den akku warum weil sie nicht auf 100% ausgreizt werden wie singel core prozessoren.
    Dem entsprechend geben sie weniger wärme ab und es ensteht weniger verlust leistung.

    2. Multiple Prozessor-Kerne ist klar das mann nicht erwarten kann da ein app jetzt alle 4kerne gleichzeitig nutz und mann den power zuspüren bekommt.
    Aber wer in hitergrund whatsapp facebook und co laufen hatt und noch ne kleine video reinzieht sei es musik video und ein jump and run spiel rein zieht weiß wofür mehrkern prozessoren gedacht worden ist.
    Bevor die leute kommen und sagen das liegt an der arbeitsspeicher will ich nur kurz erwähnen das der arbeitsspeicher nur ein memory speicher ist mit hörem takt das bedeutet das der arbeitspeicher nicht selbst die sachen berechnet.

    3. Klar ist ICS noch nicht auf Quadcore prozessoren ausgelegt wenn ich mich nicht teuche kann ics nur dualcore voll und ganz ausnutzen und 1GB ram .

    3.1 Ende des jahres kommt Android 5 Raus was bedeutet das die google mit arbeiter mit diesem problem sich bestimmt befasst und lösungen gefunden haben.

    3.2 Es schadet nicht wenn mann mehr leistung in sein handy hatt als momentan benötigt wird. wenn mann bedenkt wie schnell die app entwicklung vorran streitet.

    3.3 Mein SGS Leuft gerad mal 4-5h wenn ich mit dem handy Musik höre und bichen whatsapp schreibe und mal 30-45min spiele vergleich mein SGS3 Musik hören 2h auf dem weg zu arbeit whatsapp schreiben und dungeon Defenders 2h zocken + x2 auf dem rückweg und mein akku ist wenn ich nach hause komme immer noch bei 70%

    LG VS

  • Konsti F. 12.06.2012 Link zum Kommentar

    Bedeutet das dann aber nicht, dass man mit einem quadcore Prozessor besser für die Zukunft ausgestattet ist. Auch wenn er im Moment nur gleich schnell wie manch ein Single-oder dualcore sein sollte, so kann man aus ihm dann später durch Softwareanpassung nochmal einiges an Leistung herausholen und somit ist man dann für lange Zeit auf dem aktuellen Stand der Technik. Deshalb halte ich die Aussage von Intel für Käse. Auch wenn sie meinen, dass ihre Singlecores aktuell mit allen multicores mithalten können, so wird das in wenigen Monaten schon wieder ganz anders aussehen

  • A. Kitzi 12.06.2012 Link zum Kommentar

    es kann gut sein, das es zu wenige Apps gibt, die alle kerne ausnutzen.

  • Tom 12.06.2012 Link zum Kommentar

    Ich hab mir das Intel-Zitat durchgelesen und komme dabei mit dem letzten Satz nicht klar. Imho wurde hier leicht falsch übersetzt, da es nicht darum geht, dass Mehrkern-Prozessoren der Vorteil genommen wird, sondern erst Anwendungen für Mehrkern-Prozessoren entwickelt werden müssen, um deren Vorteile nutzen zu können.

  • A. Kitzi 12.06.2012 Link zum Kommentar

    @Manuel

    ja schon, aber nicht so gut wie das S3. habs letztens in der Hand gehabt. Das galaxy Note läuft dagegen schlechter.

  • Michael O. 12.06.2012 Link zum Kommentar

    Die freie Übersetzung von Mike Bell ist nicht korrekt, vor allem der letzte Satz. Gemeint ist, dass die Software-Entwicklung aufwändig ist, weil Android von Natur aus nicht auf Multi-Threading ausgerichtet sei. Wenn die Software schließlich (irgendwann) darauf ausgerichtet ist, dann wird man auch von den Mehrkern-Prozessoren profitieren.

  • Michael Peters 12.06.2012 Link zum Kommentar

    Von Intel eine Dokumentation zu fordern wie genau das untersucht wurde ist unsinnig. Solche Untersuchungen sind extrem komplex und selbst von Entwicklern, die nicht direkt daran beteiligt sind oft nur schwer nachzuvollziehen. Das darzulegen wie man genau untersucht hat würde Ordner füllen und das würde trotzdem keiner (kaum einer) verstehen.

    Ich bin seit ca. 20 Jahren Softwareentwickler im OS-Bereich und öfter mit Multicore und Performance Untersuchungen zu tun. Bin da also nicht ganz unbedarft wie der Autor. Das meine ich nicht als Abwertung des Artikels. Die Forderung ist aber (leider) schlicht unsinnig.

    Ich glaube auch nicht das was Intel da schreibt. Die hatten sicher eine Brille auf weil sie selbst noch kein Multicore Proc haben. Deren Aussage zu widerlegen oder zu bestätigen ist aber nur absoluten Profis vorbehalten von denen es nicht allzuviele gibt. Das anhand der Untersuchungsmethode machen zu wollen geht da nicht.

  • Iggy Wicky 12.06.2012 Link zum Kommentar

    die frage ist doch "was hat Intel davon"?
    gerät da einer unter Druck? *lach

  • Franky 12.06.2012 Link zum Kommentar

    ich kann es etwas nachvollziehen, Acer Iconia A700 . Tegra 3, 1GB ram, ruckel partie, nicht zu empfehlen das ding ..... da läuft mein a500 besser

Zeige alle Kommentare