En estos tiempos tecnológicos la portabilidad se ha vuelto muy apreciada y de nuestro día a día, es por ello que actualmente es posible ver personas pasar más tiempo con algún smartphone, tablet o phablet que con un notebook, pues en estos dispositivos podemos llevar prácticamente todo lo necesario para nuestras actividades diarias debido a su flexibilidad y funcionalidad.
A su vez es innegable que el sistema operativo que tiene mayor cuota de este mercado "portátil" es Android, y es que muchas empresas de este rubro - unas conocidas y otras no tanto - han adoptado, modificado a su gusto, e implementado este sistema móvil a sus equipos al punto de haberse convertido en el "Windows" para smartphones, tablets y phablets, y eso que existe Windows Phone pero ni punto de comparación respecto a la cuota de usuarios que Android presume.
Debido a esta gran expansión es que los dispositivos Android vienen con diferente hardware de diferentes fabricantes. En este contexto, una diferencia importante entre uno u otro dispositivo móvil lógicamente es el procesador de arquitectura ARM. Precisamente este tema es tan complejo como hablar de modelos de procesadores para PCs (lo puedes investigar aquí). Sin embargo, lo que sí tenemos que saber es que casi todos los dispositivos Android que utilizan CPU ARM vienen con diferentes versiones incluyendo ARMv5, ARMv6, ARMv6 + VFP, ARMv7, ARMv7 + VFP, ARMv7 + NEON, etc.
La mayoría de las veces aquella persona que se dedica a programar aplicaciones android no tiene necesidad de preocuparse por los tipos de CPU, pero ¿Y si está desarrollando aplicaciones que hagan uso intensivo del CPU? Citando por ejemplo, un reproductor de vídeo o convertidor de vídeo. Allí posiblemente deseará optimizar su código fuente basado en los tipos de CPU.
Ahora te podrías decir: "Yo sólo soy un usuario de Android, no soy programador", lo cual es correcto, pero al igual que nuestro amigo programador, a veces el usuario final también en ciertos casos debería saber cual es el procesador ARM que posee en su dispositivo. Te doy un ejemplo muy concreto.
Nuestro amigo programador crea un reproductor de video el cual lo realizó basándose en los tipos de CPU que existen, por lo que posiblemente publicará varias ediciones de su misma aplicación, una optimizada para un tipo de CPU particular, otra optimizada para otro tipo de CPU específico. Entonces, con esta premisa el usuario final deberá decidir cuál edición de esa aplicación deberá instalar, y para decidir correctamente ¿Qué dato deberá conocer? La información del CPU de su dispositivo.
Este ejemplo que acabo de comentar lo cumple perfectamente una aplicación muy conocida en Android, el reproductor de video MX Player. Si visitamos la sección de descargas de su página web oficial, veremos dos ediciones MX Player y MX Player (NEON), y a su vez también varias ediciones de los paquetes de códecs: ARMv5 Codec, ARMv6 Codec, ARMv6+VFP, ARMv7 (Tegra2) Codec, ARMv7+NEON Codec, MIPS Codec e Intel x86 Codec. Entonces ¿Cuál de todas esas opciones deberemos elegir?
En estos casos particulares es donde resulta útil aquello que veremos en este post: Conocer la información técnica del CPU de nuestros dispositivos Android y así elegir adecuadamente cuando estemos frente a casos como este. Entonces, luego de una - algo extensa- reseña inicial, vamos a la tarea.
Primer Intento: Usando CPU-Z
CPU-Z es una herramienta muy conocida por su versión para PC con Windows que nos permite conocer la información del CPU. Pues bien, también está disponible para android y es una aplicación gratuita. Con él podremos saber datos como:
- Nombre del SoC (System On Chip), la arquitectura del CPU, la velocidad de reloj de cada núcleo, y el modelo de GPU (Gráficos).
- Información del sistema: la marca y modelo del dispositivo, resolución de pantalla, memoria RAM, almacenamiento, modelo de la placa, versión de android, arquitectura y versión del kernel.
- Información sobre la batería: tipo de batería, nivel de consumo, estatus, voltajes y temperatura.
- También muestra información de los sensores de nuestro dispositivo.
Descarga de CPU-Z
Búscalo desde la aplicación de Google Play Store de tu dispositivo o desde:
En este caso vemos que es un smartphone Sony Xperia S LT26ii con procesador Qualcomm Snapdragon S3 / Scorpion y arquitectura ARMv7. Sin embargo, ahora mi pregunta es... ¿Este Sony Xperia es un ARMv7 o un ARMv7+NEON? Bien, primero debemos tener claro que NO todos los procesadores ARM tienen la tecnología NEON y el conocer este dato puede ser de importancia según lo requiera o no una aplicación. A continuación dejo un enlace de referencia para que conoscan algo más acerca de la tecnología NEON de ARM:
Volviendo a mi pregunta ¿Este Sony Xperia será o no un ARMv7 con tecnología NEON? Si vemos en los datos que nos proporciona CPU-Z, no podremos saberlo, pues dicha aplicación no muestra este dato. Es allí donde recurrimos al segundo método de conocer la información técnica del CPU y es a través de un terminal o consola de comandos, pues al fin y al cabo Android está basado en Linux así que esto no debe resultarle extraño. Veamos.
Segundo Intento: Usando Android Terminal Emulator
Los dispositivos Android por defecto podrían no incluir una aplicación gráfica del terminal para usar comandos de consola tal y como existe en una distribución linux, por ello en ciertos casos podemos instalarle una aplicación que nos de acceso al shell de línea de comandos linux que está integrado en todo dispositivo con Android. Justamente ese es el trabajo de Android Terminal Emulator, una aplicación gratuita que nos permite usar un terminal en Android.
Para usar Android Terminal Emulator no es necesario ser root. Como notan, el Sony Xperia del ejemplo claramente dice NO Root Access en los datos de CPU-Z. Sin embargo dependiendo de la complejidad de los comandos de consola que deseen usar puede que sí necesiten ese acceso de superuser (root).
Descarga de Android Terminal Emulator
Búscalo desde la aplicación de Google Play Store de tu dispositivo o desde:
Bien, una vez instalada la aplicación, ábrela y verás un terminal en el cual deberás escribir un comando que nos permitirá saber más características del CPU de nuestro dispositivo. Este es el comando y su resultado:
cat /proc/cpuinfo
De la imagen anterior nos interesa los resultados de las líneas Processor que nos muestra el tipo de CPU que tenemos, y Features en donde vemos las características disponibles en nuestro CPU. Ahí vemos por ejemplo que el equipo Sony Xperia S LT26ii es un ARMv7 con tecnología NEON.
Luego, si por ejemplo tuviera que elegir cuál de las ediciones de MX Player debería instalar a este Sony Xperia S, pues con total seguridad sería MX Player (NEON) más el pack ARMv7+NEON Codec.
Y así hemos concluido esta entrada cuyo único objetivo ha sido mostrar de una forma sencilla que podemos obtener datos más precisos de nuestro dispositivo Android según el tipo de procesador ARM que tenga. No faltará alguien que tal vez nos pueda decir "más fácil sería googlear hasta encontrar la información", lo cual es válido, pero si nos ponemos a pensar un poco, en caso esos datos los encontráramos en alguna web es porque alguien hizo un proceso similar como el de este post y luego lo publicó. Así que ¿Por qué no obtener estos datos por nosotros mismos? Hasta la próxima.
0 comentarios