sunnuntai 10. kesäkuuta 2012

Android ja moniprosessorituki

Intel, joka on uusi tulokas Android-maailmassa ja on julkaissut vasta kaksi omaa Androidpuhelinta, yhtiö on viime aikoina tuonut julki tätä ongelmaa ja syyttää Androidia huonosta moniydinsuorittimien hallinasta. Intel osoittaa sormella Android-laitteissa käytettävien System on Chip eli SoC-piirien valmistajia, joiden pitäisi korjata kyseiset ongelmat ainakin Intelin mukaan.
http://mato78.com/uutiset/mobiili/5629-intel-vaittaa-googlen-android-kayttojarjestelman-moniydintukea-surkeaksi

Moniprosessorituki on hyvin monimutkainen asia. Android laitteet ovat pääasiassa huomattavasti pc:tä  pienempiä eli jo pelkästään sen takia ne eroavat paljon mikä PC:ssä on mahdollista. Keskimääräinen prosessorin käyttöaste laskee väistämättä prosessorien määrän kasvaessa. Tosin monet mobiiliprosessorit osaavat vaihtaa kellotaajuutta per prosessori eli eri prosessoreilla voi olla eri kellotaajuudet. Energian käytön kannalta voi olla järkevää ajaa jotain prosessoria muita korkeammalla kellotaajuudella, mutta tälläinen dynaaminen optimointi on hyvin vaikea toteuttaa optimaalisesti.
http://gizmodo.com/5917289/are-multi+core-processors-a-waste-of-time-for-android

http://www.mobiiliblogi.com/2012/06/11/intel-androidin-tuki-moniydinsuorittimille-viela-heikko/

Käytännön kokeet ovat kuitenkin osoittaneet, että moniydinprosessorilla Android toimii nopeammin  käytännössä eli Intelin vinkunat johtuvat ainakin osittain siitä, että sillä on tarjolla ytimiä vähemmän kuin Armilla (Nvidia Tegra 3 - ydintä). Muutenkin Intel on jäänyt ydinten määrässä Arm järjestelmiä jälkeen.
http://tietsikka.blogspot.fi/2012/06/dell-arm-server.html

Arm (ja Mips) pohjaisissa tietokoneissa ytimiä voi olla paljon enemmän kuin Intelin x86, koska Intelin x86 ydin on hirvittävän iso. Mips pohjaisia laitteita on olemassa, joissa on yhdellä sirulla satoja ytimiä. Itse kannatan massiiviprosessorisia ratkaisuja eli jopa tuhansien, satojen tuhansien tai jopa miljoonien ytimien hyödyntämistä.
The main observation is that browsing performance improves more than 2.5x when comparing the full configuration to the basic configuration. With a great deal of parallel execution under Android, the browser can truly benefit from the combination of MT and MC. A closer look at what’s happening under the hood in the Android system indeed shows that a lot of processes are running in parallel. The two main processes in the system are the Android Browser itself and another process called “system server,” which manages many components of Android including the display system, and is kept very busy during the BrowsingBench run.

http://developer.mips.com/2012/02/08/android-web-browsing-performance-greatly-enhanced-by-multi-core-and-multi-threading-technologies/

Muiden prosessorivalmistajien kokeet osoittavat, että moniprosessoroinnin hyödyt ovat merkittävät. Intel on verrattain uusi tulokas Androidiin eli voi olla, että heidän osaamisensa ei ole tarvittavalla tasolla.

 

Ei kommentteja:

Lähetä kommentti