Android i Atom to kiepska para, binarny translator Intela nie spełnił pokładanych w nim nadziei

Android i Atom to kiepska para, binarny translator Intela nie spełnił pokładanych w nim nadziei04.05.2014 13:25

W zeszłym roku na sklepowych półkach pojawiły się modelesmartfonów z Androidem, które oprócz charakterystycznego robocikawabiły napisem „Intel Inside”. Złośliwi mówili, że togłównie za sprawą akcji promocyjnych Intela, który nie tylkoprzygotował zbiór narzędzi deweloperskich dla Androida x86, aleteż wspierał finansowo producentów, którzy zdecydowali sięwstawić Atomy do swoich telefonów i tabletów. Klient, rzadko kiedyznający się na subtelnościach techniki mikroprocesorowej, nakwestię tę raczej nie zwracał uwagi. Na swoją szkodę – bo jakwynika z eksperymentów, których wyniki przedstawiłaredakcja chińskiego serwisu igao7.com, od Androidów z Atomamilepiej trzymać się z daleka.

Nasi Czytelnicy nie ufają raczej benchmarkom czy innymsyntetycznym testom wydajności i energooszczędności, nauczenidoświadczeniem z firmami, które robiły co mogły, by ichurządzenia w testach wypadały jak najlepiej. To właśnie jeden ztakichtestów, przeprowadzony przez firmę ABI Research, pokazać miałodczuwalną wyższość Atoma Clover Trail+ Z2580 (m.in. w telefonieLenovo K900) nad takimi czipami w architekturze ARM jak QualcommSnapdragon czy Exynos Octa, przy zachowaniu zadowalającego poziomuzużycia energii przez układ Intela.

Możliwościom Atomów z uruchomionym na nich Androidem postanowiłprzyjrzeć się bliżej Rod Watt, inżynier konsorcjum ARM. Jakwiadomo, mobilny system operacyjny Google'a pozwala przede wszystkimna uruchamianie kodu pośredniego w maszynie wirtualnej Dalvik, aledopuszcza też uruchamianie kodu natywnego procesora (zazwyczajARMv7). O ile z uruchamianiem aplikacji napisanych w całości wkodzie pośrednim urządzenia z Intelem nie powinny mieć problemu,to w wypadku kodu natywnego w grę wchodzi jedynie jego translacja.

Na początku Watt postanowił więc przyjrzeć się, jakfaktycznie wygląda sytuacja z androidowym oprogramowaniem podwzględem rodzaju zastosowanego kodu. Pomogły mu listy top25płatnych i darmowych aplikacji i gier w sklepie Google Play. Jegoodkrycie zaskakuje: spośród sprawdzonych stu najpopularniejszychpozycji dla Androida, jedynie 20% działało wyłącznie na Dalviku.Cała reszta w mniejszym lub większym stopniu korzystała z kodunatywnego.

[1/2] Testy syntetyczne nie wyglądają dobrze dla binarnej translacji
[2/2] Liczba aplikacji nie działających na Androidach z Atomami rośnie

Jak twierdzi Intel, przeniesienie kodu ARMv7 na x86 niejest trudne, można by się więc spodziewać, że producencioprogramowania będą oferowali natywne komponenty swoich aplikacjitakże w postaci kodu dla x86. Tak jednak nie jest. Wśródsprawdzonych aplikacji, w lipcu 2013 roku jedynie 30% miało natywnąwersję x86. Pół roku później, w powtórzonym badaniu, ich liczbaspadła do 23%. Aby uruchomić na Atomie aplikacje wykorzystującekomponenty w kodzie ARMv7 (a takich w styczniu tego roku wśród stunajpopularniejszych było 44%), konieczne więc jest zastosowaniebinarnej translacji.

Binarny translator, opracowany we współpracy z Google, działanad warstwą kernela i bibliotek systemowych, a pod frameworkiemAndroida i bibliotekami Java Native Interface (opisującymi metodyinterakcji kodu pośredniego z pisanym w C/C++ kodem natywnym).Według Intela, translator działać miał w sposób niezauważalnydla końcowych użytkowników, z minimalnym narzutem w zużyciuenergii i mocy obliczeniowej. Aplikacje które znamy i kochamypo prostu miały działać.

Jak to zwykle bywa, slajdy swoje,a rzeczywistość swoje. Odsetek aplikacji z testowanego zbioru,który w ogóle nie uruchomił się na „atomowych” Androidachwyniósł 9%. Te zaś, które się uruchomiły w trybie binarnejtranslacji, działały odczuwalnie gorzej. W niektórych wypadkachich wydajność była wyraźnie gorsza. Jak wyraźnie? Watt sięgnąłpo benchmarki skompilowane w wersjach dla ARMv7 i x86, uruchamiającje na telefonie Lenovo K800, z procesorem Atom Z2460. Okazuje się,że różnice na niekorzyść binarnej translacji sięgały od 60 do80%. Towarzyszyły im wzrost obciążenia procesora i zwiększone onawet 90% zużycie energii.

[1/2] ... i ten sam telefon z trzykrotnie gorszym wynikiem, gdy zastosowano binarną translację
[2/2] Lenovo K800 w testach z natywnym kodem x86...

Jeśli wyjść poza światAndroida, sytuacja też nie wygląda najciekawiej dla Atomów.Inżynier konsorcjum ARM porównał tablet Asusa T100 z procesoremAtom Z3740 (wykonanym w technologii 22 nm) i Windows 8.1 z tabletemNokii, działającym na procesorze Qualcomm Snapdragon 800 (wykonanymw technologii 28 nm) i Windows RT. Jak wyjaśnia, udało mu sięodizolować zasilanie dla układów SoC w obu urządzeniach. W teoriidziałający pod Windows czip Intela powinien sprawdzać sięznakomicie – Chipzilla ma całe dziesięciolecia doświadczeń zsystemami Microsoftu. A jednak nic z tego. Zarówno w testachsyntetycznych JavaScriptu, jak i funkcjonalnych (odtwarzanie wideo,aplikacje webowe etc.), SoC Intela okazywał się zużywać nawet o75% więcej energii, niż układ Qualcomma.

Wniosek jest prosty. Jeśliszukacie telefonu czy tabletu z Androidem i wasz wzrok padł nasprzęt z Atomem, sprawdźcie przede wszystkim, jak działać będąna nim ważne dla was aplikacje. Najwyraźniej bowiem programiściwciąż traktują Androida x86 po macoszemu – i z przedstawionychprzez Roda Watta danych wynika, że nie jest to wcale przejściowytrend. W przeciwnym wypadku kupicie urządzenie, które w realnejeksploatacji będzie bardzo odbiegało od tego, co zobaczyć można wdostosowanych do niego benchmarkach.

Źródło artykułu:www.dobreprogramy.pl
Szanowna Użytkowniczko! Szanowny Użytkowniku!
×
Aby dalej móc dostarczać coraz lepsze materiały redakcyjne i udostępniać coraz lepsze usługi, potrzebujemy zgody na dopasowanie treści marketingowych do Twojego zachowania. Twoje dane są u nas bezpieczne, a zgodę możesz wycofać w każdej chwili na podstronie polityka prywatności.

Kliknij "PRZECHODZĘ DO SERWISU" lub na symbol "X" w górnym rogu tej planszy, jeżeli zgadzasz się na przetwarzanie przez Wirtualną Polskę i naszych Zaufanych Partnerów Twoich danych osobowych, zbieranych w ramach korzystania przez Ciebie z usług, portali i serwisów internetowych Wirtualnej Polski (w tym danych zapisywanych w plikach cookies) w celach marketingowych realizowanych na zlecenie naszych Zaufanych Partnerów. Jeśli nie zgadzasz się na przetwarzanie Twoich danych osobowych skorzystaj z ustawień w polityce prywatności. Zgoda jest dobrowolna i możesz ją w dowolnym momencie wycofać zmieniając ustawienia w polityce prywatności (w której znajdziesz odpowiedzi na wszystkie pytania związane z przetwarzaniem Twoich danych osobowych).

Od 25 maja 2018 roku obowiązuje Rozporządzenie Parlamentu Europejskiego i Rady (UE) 2016/679 (określane jako "RODO"). W związku z tym chcielibyśmy poinformować o przetwarzaniu Twoich danych oraz zasadach, na jakich odbywa się to po dniu 25 maja 2018 roku.

Kto będzie administratorem Twoich danych?

Administratorami Twoich danych będzie Wirtualna Polska Media Spółka Akcyjna z siedzibą w Warszawie, oraz pozostałe spółki z grupy Wirtualna Polska, jak również nasi Zaufani Partnerzy, z którymi stale współpracujemy. Szczegółowe informacje dotyczące administratorów znajdują się w polityce prywatności.

O jakich danych mówimy?

Chodzi o dane osobowe, które są zbierane w ramach korzystania przez Ciebie z naszych usług, portali i serwisów internetowych udostępnianych przez Wirtualną Polskę, w tym zapisywanych w plikach cookies, które są instalowane na naszych stronach przez Wirtualną Polskę oraz naszych Zaufanych Partnerów.

Dlaczego chcemy przetwarzać Twoje dane?

Przetwarzamy je dostarczać coraz lepsze materiały redakcyjne, dopasować ich tematykę do Twoich zainteresowań, tworzyć portale i serwisy internetowe, z których będziesz korzystać z przyjemnością, zapewniać większe bezpieczeństwo usług, udoskonalać nasze usługi i maksymalnie dopasować je do Twoich zainteresowań, pokazywać reklamy dopasowane do Twoich potrzeb. Szczegółowe informacje dotyczące celów przetwarzania Twoich danych znajdują się w polityce prywatności.

Komu możemy przekazać dane?

Twoje dane możemy przekazywać podmiotom przetwarzającym je na nasze zlecenie oraz podmiotom uprawnionym do uzyskania danych na podstawie obowiązującego prawa – oczywiście tylko, gdy wystąpią z żądaniem w oparciu o stosowną podstawę prawną.

Jakie masz prawa w stosunku do Twoich danych?

Masz prawo żądania dostępu, sprostowania, usunięcia lub ograniczenia przetwarzania danych. Możesz wycofać zgodę na przetwarzanie, zgłosić sprzeciw oraz skorzystać z innych praw wymienionych szczegółowo w polityce prywatności.

Jakie są podstawy prawne przetwarzania Twoich danych?

Podstawą prawną przetwarzania Twoich danych w celu świadczenia usług jest niezbędność do wykonania umów o ich świadczenie (tymi umowami są zazwyczaj regulaminy). Podstawą prawną przetwarzania danych w celu pomiarów statystycznych i marketingu własnego administratorów jest tzw. uzasadniony interes administratora. Przetwarzanie Twoich danych w celach marketingowych realizowanych przez Wirtualną Polskę na zlecenie Zaufanych Partnerów i bezpośrednio przez Zaufanych Partnerów będzie odbywać się na podstawie Twojej dobrowolnej zgody.