Okostelefon-tesztek: majdnem minden gyártó csal
Látványos, akár 20 százalékot is meghaladó teljesítményelőny érhető el az energiamenedzsment lekapcsolásával - pontosan ezt teszik a mobilgyártók, ha benchmarkot észlelnek. A praktika széles körben elterjedt, nem csak a Samsung, hanem szinte az összes nagyobb gyártó alkalmazza. A Google és az Apple nem.
Minden nagyobb gyártó csal a processzorok energiamenedzsmentjével és maximális teljesítményre állítja az okostelefont, ha tesztalkalmazást lát - szűrhető le a következtetés az Anandtech körképéből. Az amerikai lap tesztje szerint a nagyobb gyártók közül csak a Motorola termékei (RAZR i és Moto X) és az NVIDIA Shield nem használ felismerő algoritmust a tesztek kiszűrésére és a Google-féle Nexusok is mentesek az ilyen praktikáktól.
A napokban futótűzként terjedt szét a médiában az információ, hogy a Samsung változatos termékei (Galaxy S4, Note 3, Tab3 10.1, Note 10.1) több benchmarkot is felismernek és "optimalizálják" a teljesítményt a legmagasabb pontszám érdekében. A Samsung azonban ezzek a gyakorlattal egyáltalán nincs egyedül, az LG G2 csúcsmodelje, a HTC One és One mini, az ASUS Padfone Infinity mind tartalmaz ilyen csalást, amellyel teszttől függően akár 20 százalékot meghaladó látszólagos teljesítményelőny is előidézhető.
A "támogatott" tesztek között a legnépszerűbb benchmark alkalmazások találhatóak, AnTuTu, AndEBench, Geekbench 3, Vellamo, a sor folytatható. A gyártók azonban nem tudják befolyásolni a böngészős JavaScript tesztek eredményét, azok mentesek ettől a csalástól. Sajnos ezek a tesztek sem megbízhatóak, a böngészőgyártók ugyanis a JavaScript-motorjukat optimalizálják előszeretettel a népszerűbb tesztekre (lásd például az Internet Explorer 9 és a SunSpider esetét).
A széles körben elterjedt gyakorlat ugyanakkor megmagyarázza, hogy a Nexusok miért teljesítenek mindig valamivel gyengébben, mint a többi gyártó azonos processzort használó termékei - a Google egyszerűen nem optimalizál külön a benchmarkokra, míg az összevetések többi szereplője, a változatos gyártóktól származó csúcsmodellek gyakorlatilag egységesen csalnak - az Android szabadon módosítható szoftvere teret enged az ilyen jellegű gyártói testreszabásnak is.
Válassz teljesítményhatárolót
Ma már minden processzorgyártó komplex energiagazdálkodási rendszert használ, amely a processzorok órajelét és feszültségét a terhelés függvényében változtatja. Ennek keretében a munkát nem végző magokat lekapcsolják, teljes üresjárat esetén pedig a teljes processzor is leállhat, gyorsítótárakkal, memóriavezérlővel, adatbuszokkal együtt. Az energiahatékonyságért azonban teljesítménnyel kell fizetni: minél mélyebben alszik a processzor, annál hosszabb időbe kerül felébreszteni, ez alatt az időszak alatt pedig nem érhető el a maximális sebesség.
A mobilos szegmensben ez sokkal látványosabban jelentkezik mint a noteszgépeknél vagy a szervereknél. Az okostelefonos és tabletes rendszerekben sokkal agresszívebb az energiamenedzsment, tehát tétlenség esetén sokkal gyorsabban leáll a hardver, míg számítási feladat alatt akár tizedmásodpercekbe is kerül, míg eléri a maximális teljesítményt. A gyártók ezt az energiamenedzsment által okozott teljesítményvesztést kerülik el a tesztek alatt azzal, hogy egyszerűen lekapcsolják a sebességhatárolót ("governor"). A listán található alkalmazást elindítva a rendszer maximális teljesítményű üzemmódba állítja a processzort, vagyis feltekeri az órajelet, így a tesztek alatt a legjobb arcát mutatja a termék.
A jók és rosszak listája (forrás: Anandtech) [+]
Az AI és a nagy full-full-stack trend Az AI farvizén számos új informatikai munkakör születik, vagy már ismert munkák kapnak új nevet és vele extra elvárásokat is.
Az Android alatt teljesítményhatároló scriptek határozzák meg, hogy adott terhelés mellett a processzor hány magot, milyen fogyasztás-órajel-teljesítmény futtasson. A gyártóknak szabad kezük van a teljesítményhatároló meghatározásában, teljesítményfókuszú governor magasabb fogyasztást (és alacsonyabb üzemidőt) jelent, cserébe a felület akadozása minimalizálható. Ellenkező esetben igen hosszú akkus üzemidő érhető el, a konzervatív governor azonban lassan ad "gázt", emiatt például görgetésnél szaggatás léphet fel. A "főzött rendszerek" (custom ROM) használatának egyik előnye, hogy a felhasználó maga választhatja meg a teljesítményhatárolót, igényeinek megfelelően.
Miért csalás?
Hardveres szemszögből nem kifogásolható a gyártók döntése: ha a processzor maximális sebessége a kérdés, akkor a sebességhatároló kiiktatása jogos döntés is lehet, az autók végsebességét is így mérik le például. Egyetlen ismert eset sincs, amikor a gyártó a gyakorlatban elérhetőnél magasabb órajelre tekerte volna a processzort. A teszt alatt mutatott teljesítmény azonban mégis elérhetetlen, működő határoló alatt ezek a lapkák egyszerűen nem tudnak ennyit. A maximálizált teljesítményű módban ugyanis egy mobillapka fogyasztása elképesztően magas lehet, sokszorosa annak, amit akár egy valós játék futtatása alatt mutatna, ezért a teszteken mért teljesítmény nem mutatja a felhasználó által mindennapi használatban elérhető sebességet.
Ütemezők Cyanogen alatt - szabad a választás
A szintetikus tesztek problémája hagyományosan az "optimalizálásra", csalásra való érzékenység. Ezt az előző évtizedben a GPU-s világ már megtanulta, egy magára valamit is adó szaklap ma már elsősorban játékok és valós GPGPU számítási feladatok alatt teszteli a termékeket, a szintetikus tesztek maximum érdekességként jelennek meg a cikkekben. A mobilos szegmensben azonban nagyon nehéz olyan laboratóriumi körülményeket teremteni, ahol a valós teljesítmények összehasonlíthatóak lennének (például a kijelzők eltérő felbontásai miatt), ezért jelenleg kényszerűségből a kívánatosnál magasabb arányban szerepelnek az ilyen benchmarkok a tesztekben.