Samsung oszukuje benchmarki? Tak uważa renomowany serwis AnandTech
Ostatnio pisaliśmy o tym, że Intel nieco zawyżył swoje wyniki w Benchmarkach AnTuTu. Okazuje się jednak, że nie tylko on stosuje takie praktyki i może to być całkiem powszechne zachowanie wśród producentów sprzętu. Przykładem tego jest chociażby Samsung ze swoim najnowszym smartfonem Galaxy S4 GT-I9500 z procesorem Exynos 5 Octa.
Jeśli chcecie bardzo dokładnie poznać całą sprawę i sprawdzić działanie opisanych tu trików na swoim smartfonie, zapraszam do przeczytania całego artykułu w serwisie AnandTech. Ja opiszę tylko, w jakich programach i co robił Samsung, by jego smartfon (a może i smartfony) wypadał lepiej niż konkurencja.
O dziwo zagrywka ta jest bardzo prosta i polega na wymuszeniu wyższej częstotliwości taktowania zegara rdzeni CPU i GPU, nic więcej. Redaktorzy AnandTecha, by sprawdzić to, postanowili wpisać w Android Debug Bridge odpowiednią komendę, która sprawia, że możliwe jest wyświetlanie aktualnej częstotliwości taktowania zegarów rdzeni układu graficznego.
Okazuje się, że w niemal wszystkich programach i grach maksymalna częstotliwość układu graficznego wynosi 480 MHz. Z kolei w popularnych programach testujących, takich jak GLBenchmark 2.5.1, AnTuTu i Quadrant parametr ten wynosił 532 MHz, czyli o ponad 10% więcej. Doskonale widać to po uruchomieniu mniej popularnego GFX Bench 2.7.0, który jest po prostu GLBenchmarkiem w wersji 2.7.0.
Tutaj w magiczny sposób częstotliwość układu graficznego wynosi standardowe 480 MHz. Wyniki takiego zabiegu są widoczne gołym okiem – wynik uzyskany w starszej wersji benchmarka jest o 13,9% lepszy niż w nowszej. Program ten udowadnia również, że mimo iż Samsung oficjalnie nigdy nie podał maksymalnej częstotliwości zastosowanego układu graficznego w swoim telefonie, to praktycznie wynosi ona 480 MHz.
Okazuje się jednak, że przyspieszono również rdzenie procesora
By to udowodnić, wystarczy uruchomić System Monitor korzystając z dwóch wersji wymienionego wyżej benchmarka. O ile w nowszej wersji podczas wyświetlania ekranu startowego uruchomione są cztery słabe rdzenie Cortex-A7 działające z prędkością 250-500 MHz, to uruchomienie GLBenchmark 2.5.1 powoduje, że nawet w menu startowym uruchamiają się cztery bardzo szybkie rdzenie Cortex-A15 działające z domyślną prędkością 1,2 GHz, która ani na chwilę nie spada, może za to wzrosnąć.
Podobnie procesor zachowuje się po uruchomieniu programów takich jak AnTuTu, Linpack, Benchmark Pi oraz Quadrant, czyli najpopularniejszych benchmarków mobilnych. Samsung nie chce stracić ani chwili testu na przełączanie się między różnymi trybami pracy, więc po wykryciu, że ma się do czynienia z jakimś programem najzwyczajniej w świecie wymusza działanie rdzeni A15. Podobnie zachowują się też wersje Galaxy S4 wyposażone w procesory Qualcomm Snapdragon 600.
Po wejściu głębiej i przeanalizowaniu plików odpowiedzialnych za dynamiczną zmianą częstotliwości pracy i napięcia widać, że istnieją dodatkowe tryby, które mają na celu właśnie podwyższanie prędkości procesora w najpopularniejszych benchmarkach. Dotyczy to zarówno układów Fusion3 (Snapdragon 600 + MDM9x15), jak też Adonis (nazwa kodowa Exynos 5 Octa).
Aplikacja może również rozpoznawać inne programy, które mogą być benchmarkami i w ten sposób przyspieszać w nich układy.
I co z tego?
Gdy zabierałem się do pisania tego artykułu, uważałem, że skoro Samsung nie podał oficjalnych częstotliwości taktowania zegara rdzeni CPU i GPU, to nie popełnił czynu nieetycznego. Teraz sądzę zupełnie inaczej. Poprawianie parametrów pracy smartfonów tylko w benchmarkach powinno być piętnowane, bo jest to jest nie fair.
Jeśli testujecie smartfony, po lekturze tego artykułu powinniście wiedzieć, że nie warto używać najpopularniejszych benchmarków, takich jak Linpack, Quadrant, AnTuTu, GLBenchmark i Benchmark Pi. Lepiej znaleźć inne aplikacje, które jeszcze nie są znane i co jakiś czas je zmieniać. To nie daje pewności, że wyniki będą czyste jak łza, ale przynajmniej zwiększa na to szanse. W dużych programach wielu producentów zawsze będzie próbowała coś uszczknąć dla siebie.
Nie wiemy czy Intel, Samsung, HTC czy Qualcomm nie grzebie też w innych programach i czy nie podnoszą wydajności swoich układów w sposób sztuczny. Przykłady Samsunga i Intela pokazują nam, że jest to całkiem możliwe, choć nie zawsze są na to dowody. Niestety nie będziemy mogli tego potwierdzić tak długo, jak długo na smartfonach nie pojawią się dorosłe programy pozwalające na pracę i testowanie telefonów bez użycia benchmarków, a na podstawie szybkości działania w typowych, powtarzalnych zadaniach. Chodzi tu o programy CAD-owskie, graficzne oraz oprogramowanie takie jak FRAPS, które pozwolą na sprawdzanie płynności gier na podstawie wyświetlanych w każdej sekundzie klatek.
Samsung już ustosunkował się do całej sytuacji i napisał, że nie nagina wyników testów, tylko zwiększa wydajność w pełnoekranowych aplikacjach, takich jak niektóre benchmarki. Szczerze mówiąc, nie kupuje tego. W starszej wersji GLBenchmark zwiększa, w nowszej nie. Samsung próbuje mydlić nam oczy, ale ja nie zamierzam się na to nabrać.