Chciałbym zrozumieć więcej procesorów używanych w telefonach z systemem Android. Powodem jest to, że budujemy bibliotekę C, która ma określone flagi architektury procesora/matematyki, które możemy ustawić.Android ARMv6/v7 i VFP/NEON
tej pory odkryliśmy, że wszystkie urządzenia Android Procesory są projektowanie ARM i są znakami ARMv6 (starsze urządzenia, niskie końcach, Huawei, ZTE, małych SE) lub ARMv7 (tabletki Honeycomb i wszystko więcej drogie urządzenia, prawie wszystkie z rozdzielczością WVGA i wyższą) Sprawdziłem ~ 20 urządzeń i wszystkie mają procesor tego typu. Czy to jest poprawne? Czy są jeszcze jakieś inne?
Teraz, gdy chodzi o multimedia i operacji matematycznych myślę dwie jednostki są ważne - VFP dla arytmetyki zmiennoprzecinkowej oraz SIMD - NEON. Po przetestowaniu powyższej grupy urządzeń stwierdziłem, że obsługa VFP jest prawie we wszystkich urządzeniach, podczas gdy NEON nie. Wszelkie komentarze do tego?
Nie wiem, czym dokładnie jest różnica ARMv6 i ARMv7 (poza ogólną prędkością). Teraz budujemy multimedialną bibliotekę C, która ma kilka flag do budowania. Moje pytanie brzmi, jak kierować największą liczbę urządzeń po jednej stronie i jak umożliwić użytkownikom lepszych urządzeń korzystanie ze sprzętu. Moją propozycją jest przygotowanie 3 odrębnych buildów: ARMv6/VFP, ARMv7/VFP i ARMv7/VFP/NEON. Inne propozycje?
ARMv6/VFP myślę powinny działać na wszystkich konfiguracjach, z wyjątkiem urządzeń, których brakuje VFP (np stary HTC Wildfire) - ale te pozostaną obsługiwane.
Czy to dobre podejście? Wszelkie uwagi są mile widziane.
Pozdrawiam, Sten