Sviluppare iOS a 64-Bit con iPhone5s, developers alle prese con il Chip Apple A7

Apple's 64-Bit A7 Processor

Apple’s 64-Bit A7 Processor

Una delle più grandi sorprese dell’ iPhone 5S  è stata la notizia che  all’interno del telefono è presente il chip A7 a 64 bit. Apple ha dichiarato che con il suo nuovo chip A7 è come avere sul telefono un “architettura di classe desktop”.

Con questo processore a 64-bit -possiamo ora far girare app compilate a 64 bit. In teoria le applicazioni possono funzionare più velocemente ed essere più efficienti, per questo motivo i primi a lavorare a 64 bit sono stati i game developers  proprio a causa dei miglioramenti grafici dovuti alla presenza del chip A7.

Apple-A7-chip-iOS7_64-bit_64bit_app_develope_sviluppo_applicazioni

Apple A7 Chip

64 bit in età di Mobile
Senza entrare troppo nella teoria dei microprocessori diciamo che l’idea che è alla base dei processori a 64 bit è quella che sono in grado indirizzare più memoria, rispetto ai chip a 8/16/32 bit, permettendo al software complesso (grafica o codice profondamente computazionale) di funzionare meglio e più velocemente e sopratutto consumare meno energia a parità di prestazioni.
Nel mondo desktop, il passaggio a 64 bit è stato essenziale perché ha permesso ad applicazioni e sistemi operativi di accedere a più di 4 GB di memoria RAM. Questo step è stato fondamentale, soprattutto nei giochi e nelle applicazioni grafiche.

Nel mobile computing , i vantaggi del 64 bit sono un leggermente diversi. Il mobile computing sta avanzando ad un ritmo estremamente veloce , anche se siamo ancora  lontani da telefoni con il supporto a 4GB di RAM . Pensandoci bene l’aggiunta di un sacco di RAM per un telefono non è una grande idea perché l’accesso alla RAM consuma energia e questo significa avere a disposizione meno autonomia nella batteria .
Quindi, se non è per il limite di 4 GB , perché dovremmo avere 64 bit sul cellulare?
La prima cosa da capire è che avere un processore a 64 bit significa che questo chip può ottenere più prestazioni per watt. In altre parole , le applicazioni e le attività  scaricano la batteria più lentamente ed è particolarmente vero quando si tratta di giochi.
I maggiori miglioramenti grafici arrivano  dalla  nuova GPU dell’A7, ma anche i giochi con grafica di ” qualità console”, che non gestiscono milioni di pixel,  possono beneficiare di questo processore potente e ma anche più efficiente .
Personalmente mentre gioco a Candy Crush Saga col mio dispositivo a 32 bit ho notato la batteria esaurirsi velocemente ,  quindi anche i giochi semplici possono essere vampiri di potenza.

Per demonstrare la potenza del chip A7e, Apple ha acquistato Epic Games e il suo ultimo titolo, Infinity Blade 3, on stage.

Per demonstrare la potenza del chip A7e, Apple ha acquistato Epic Games e il suo ultimo titolo, Infinity Blade 3, on stage.

Quali applicazioni devono avere come obiettivo a 64 bit?
Cerchiamo di capire quindi quindi quali tipi di applicazioni potranno vedere i benefici più immediati a 64 bit.
I due tipi di applicazioni che traggono i maggiori vantaggi da 64-bit sono i giochi e le applicazioni scientifiche, e tutte quelle basate su calcoli matematici come ad esempio le App di musica. Pertanto le applicazioni che potrebbero beneficiare saranno sicuramente i giochi 3D e graficamente intensi o qualsiasi app che necessiti di molti calcoli complessi in tempo reale, come un sintetizzatore musicale.
In ogni caso la maggior parte delle applicazioni gia sviluppate non ne trarranno un gran beneficio, almeno per ora. Questo non vuol dire che in alcuni casi a 64-bit non si avrà alcun vantaggio, ma dobbiamo comprendere che il sistema operativo nel suo complesso ne beneficerà , soprattutto per la gestione di attività in background.
Come abbiamo  appena detto  non tutte le applicazioni avranno necessariamente benefici dal passaggio a 64 bit , infatti  alcune applicazioni potrebbero affrontare “dei potenziali problemi di ingombro di memoria” (potential memory footprint issues) compilando a 64 bit. Le applicazioni che non hanno ottimizzato l’uso della memoria,  potrebbero avere un impatto negativo sulla velocità dell’app o sulla quantità di memoria disponibile per le altre applicazioni per iPhone da utilizzare.
Fortunatamente, Apple ha delineato il processo di conversione di un app a 64 bit per chi ha un account Developer , tra cui un’intera sezione su come ottimizzare le prestazioni della memoria.
C’e’ da notare che Apple sta attualmente richiedendo a tutti gli sviluppatori che sottomettano  applicazioni a 64-bit di supportare anche il runtime a 32 bit.

Come iniziare con 64-bit
Piuttosto che concentrarsi subito sulla compilazione di applicazioni per il 64-bit dobbiamo assicurarsi che le nostre applicazioni siano pronte per iOS 7 .
La prima cosa che gli sviluppatori devono fare , quando si aggiorna per iOS 7, è concentrarsi sui cambiamenti di design e layout. La seconda cosa è quella procurarsi Xcode 5  ma sopratutto leggere tutti i documenti di sviluppo messi a disposizione da Apple. Quest’ultima pratica, spesso dimenticata dagli sviluppatopri piu’ distratti e superficiali, è l’elemento fondante di ogni lavoro da svolgere per il mondo Apple.

Anche se , passando a 64 bit, la vostra app non subirà un cambiamento  di prestazione epocale, è necessario cominciare a considerare questa mossa.
Ci sono un sacco di cose che vanno prese i nconsiderazione durante la migrazione a 64 bit , come ad esempio il dimensionamento del tipo di dati (data type sizing) e come questi influiscono sulle prestazioni dell’ app. Non aspettiamoci quindi vantaggi immediati da tutte le app !

ios7_osx_iPhone_Apple_maverick

Potenzialità per l’unificazione OS X / iOS
iOS e OSX sono entrambi basati sullo stesso “core” e kernel, eppure i due sistemi operativi funzionano in modo diverso e gestiscono i dati e il codice in modi non propriamente uguali .
Negli ultimi anni abbiamo visto una maggiore influenza di iOS su OSX , ma anche OS X influenzare le API di back-end in iOS .
Leggendo la  documentazione di Apple , risalta questa frase molto interessante : “The architecture for 64-bit apps on iOS is almost identical to the architecture for OS X apps, making it easy to create a common code base that runs in both operating systems.” (L’architettura per le applicazioni a 64 bit su iOS è quasi identica a l’architettura per le applicazioni OS X , rendendo semplice la creazione di una base di codice comune che viene eseguito in entrambi i sistemi operativi ).
Ora, questa dichiarazione ha un gran potenziale. Anche se le applicazioni native iOS e OS X  (c.d. native apps) siano generalmente scritte in Objective-C , utilizzando Cocoa e il frameworks Cocoa Touch  , non è sempre facile per gli sviluppatori condividere il codice tra le due piattaforme .
Se ci basiamo su quello che Apple ha scritto nella propria documentazione  è possibile che il passaggio a 64 bit potrebbe significare che gli sviluppatori di  App per Mac potranno più facilmente portare alcune delle loro applicazioni per iOS  o viceversa .
La reciproca migrazione potrebbe avere un enorme potenziale , soprattutto su dispositivi più grandi come l’iPad .

Essere o non Essere iOS a 64 bit
Molti esperti ritengono la migrazione di app esistenti a 64 bit come una pratica poco importante – almeno per ora – pur lodando l’esistenza di smartphone “quad” e “octa core”  non dimenticano che la maggior parte delle applicazioni non sono state scritte per usare più di due core.
Nessuno sta sostenendo che tutte le applicazioni iOS passeranno subito a 64 bit  dato che l’ iPhone 5S è per ora l’unico dispositivo iOS con un chip a 64-bit . Dovrà passare del tempo prima che l’intera linea di prodotti Apple diventi a 64 bit, ma ignorarne l’importanza è sicuramente un grosso errore in quanto non dobbiamo pensare solamente ai benefici che si avranno nelle app ad alta elaborazione numerica e grafica poichè il maggior vantaggio sarà dato da cio’ che l’elaborazione a 64 bit potrà dare all’intero ecosistema applicazione Apple.

Finalmente non ci sono più scuse per tutti gli  sviluppatori che sono stati precedentemente impauriti nel lavorare in un app mobile , proprio per paura di incorrere nelle limitazioni del processore.

Fonte Bibliografica: Christina Warren (http://mashable.com/people/christina/) su Mashable (http://mashable.com/2013/09/12/apple-a7-64-bit/)

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

*