Intel: ottimizzazione delle app Android per processori x86

di Martina Oliva Commenta

Sviluppare applicazioni per dispositivi Android è senza ombra di dubbio una tra le attività che al giorno d’oggi vengono maggiormente eseguite da coloro che hanno a che fare con il mondo dell’IT.

Immagine che mostra il logo di Android

Considerando la sempre maggior diffusione e diversificazione di Android chi sviluppa app deve però tener conto del fatto che allo stato attuale delle cose è necessario eseguire applicazioni non solo su ARM ma anche su dispositivi dotati di processori Intel x86. Generalmente, è bene sottolinearlo, tale operazione comporta però un degrado in fatto di performance. Per evitare che ciò avvenga è tuttavia possibile prendere in considerazione le linee guida ed i tool forniti da Intel.

Fermo restando che è indispensabile compilare un’applicazione in maniera specifica per l’architettura x86 e che per fortuna oggigiorno si tratta di un’operazione abbastanza semplice la procedura di ottimizzazione delle applicazioni per Android può essere suddivisa in tre punti:

  • Parallelismo e multithreading: I dispositivi Android risultano basati su processori multi-core e, se vengono impiegati tutti i core disponibili, è possibile migliorare le prestazioni del dispositivo. Andando inoltre a combinare diverse azioni periodiche in una sola si ha la possibilità di evitare inutili system call, il che si traduce in un notevole risparmio di energia e in un maggior grado di parallelismo.
  • Ottimizzazione del codice: Impiegare istruzioni vettoriali che permettono di effettuare azioni comuni in un minor quantitativo di tempo e con molta meno energia permette di sfruttare al massimo le potenzialità dell’architettura Intel x86 e di ottimizzare il codice.
  • Limitazione dell’utilizzo della memoria: Anche ridurre all’osso l’utilizzo della memoria è importantissimo. Per effettuare tale operazione è possibile mantenere in cache le strutture dai impiegate più spesso andando al contempo a limitare lo spostamento dei dati tra il kernel space o lo user space.

Tra le risorse utili per ottimizzare le app Android su architettura x86 è invece il caso di prendere in seria considerazione:

  • Intel WiDI: È una tecnologia mediante cui è possibile connettere un dispositivo ad un monitor esterno senza utilizzare cavi.
  • Intel HAXM: È un hypervisor che sfrutta la tecnologia Intel VT-x per migliorare la virtualizzazione dell’emulatore ed aumentare le prestazioni.
  • Intel INDE: È un tool che può risultare utile ai developers per adattare le proprie app a più architetture e che permette di eseguire facilmente il setup dell’ambiente di sviluppo includendo in maniera automatica compilatori per le architetture ARM ed x86.

Lascia un commento

Il tuo indirizzo email non verrà pubblicato.

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>