iPhone 3GS contro Google Nexus One in un test sul 3D framerate

I ragazzi di Distinctive Developments hanno realizzato una piccola applicazione in grado di misurare, in ambiente 3D, il numero di framerate di cui iPhone 3GS e Google Nexus One siano capaci.L’applicazione contiene un’ambientazione tipica: scenario tridimensionale e character 3D multipli che mettono a dura prova sia GPU che CPU. Come potete osservare nel video, l’iPhone

Parliamo di


I ragazzi di Distinctive Developments hanno realizzato una piccola applicazione in grado di misurare, in ambiente 3D, il numero di framerate di cui iPhone 3GS e Google Nexus One siano capaci.

L’applicazione contiene un’ambientazione tipica: scenario tridimensionale e character 3D multipli che mettono a dura prova sia GPU che CPU. Come potete osservare nel video, l’iPhone 3GS ha totalizzato una media di 60fps (frame per secondo) contro i 32fps del telefono di Google. Complicando l’ambientazione, inserendo più character, l’iPhone 3GS mantiene comunque il titolo di vincitore.

Come si spiega questo risultato? Una differenza importante tra i due dispositivi è che il Nexus One ha una risoluzione di schermo più grande rispetto al rivale (800×480 vs. 480×320). In altri termini significa che la GPU lavora circa 2,5 volte di più per ogni pixel frame rispetto all’iPhone 3GS. Abbassando la risoluzione del Nexus One, ad ogni buon conto, la media dei frame rate sale solo di 9 frame per secondo: 41fps contro 60fps a parità di risoluzione. Non ci siamo ancora.

E’ evidente che il problema non è nella gestione della GPU. Il collo di bottiglia infatti, è da ricercarsi nell’ottimizzazione del software per la CPU. L’applicazione che vediamo nel video è scritta per il 95% in C++ e compilata con NDK (Android Native Development Kit) in ambiente ARM. Se si disabilitano gli effetti calcolati dalle rispettive CPU, la media di framerate del Googlefonino aumenta di circa 20fps: 61fps come nel caso di iPhone 3GS.

Dov’è il problema? Il NDK non supporta ancora il codice Neon floating-point (istruzioni in assembly). Il modo per aggiornare il GCC (il compilatore del codice sorgente) ad una versione compatibile con le istruzioni Neon esiste, ma pare che sia necessario ricompilare l’intero firmware del dispositivo. La domanda è: cosa aspettano quelli di Google?

[Via Distinctive Developments]

Ti potrebbe interessare
Il nuovo MacBook Air si avvia in soli 15 secondi
MacBook Air

Il nuovo MacBook Air si avvia in soli 15 secondi

Grazie all’utilizzo delle memorie flash al posto del tradizionale HDD o delle SSD il nuovo MacBook Air riesce ad avviarsi in soli 15 secondi.Nel video che vedete qui sopra viene mostrato il boot di Mac OS X Snow Leopard su un MacBook Air da 11 pollici messo a confronto con un MacBook Air della precedente