Hardware

Quali sono i vantaggi di un processore multi-core negli smartphone?

Set 18, 2011

author:

Quali sono i vantaggi di un processore multi-core negli smartphone?

L’invasione dei terminali dual-core

Il mercato mobile è stato invaso nell’ultimo anno dall’avvento dei dispositivi con processori dual-core  in risposta alla crescente esigenza di performance per i video ad alta definizione a 1080p,  il gaming online, lo streaming di video Flash, video editing e tanto altro.

Ma ne vale davvero la pena? Quanto un processore dual-core influisce sull’autonomia della batteria?

A tal proposito riportiamo un sunto del whitepaper della NVidia che spiega i vantaggi che derivano dall’utilizzo di un processore multi-core.

Perchè dual-core?

La generazione degli smartphone basati su processore single-core risentono di un rapido crollo delle performance se sottoposti a più task in parallelo o semplicemente davanti a giochi o video editing troppo “onerosi”. Da qui la necessità di aumentare la frequenza operativa o la tensione del processore. Ma qual’è lo svantaggio di un simile approccio?

  1. Autonomia della batteria. Frequenze maggiori determinano maggiori consumi e la durata della batteria, a parità di capacità, non potrà che risentirne.
  2. Dissipazione di calore. Frequenze maggiori portano a dissipatori di calore di dimensioni maggiori, influendo quindi sul peso e sulle dimensioni dello smartphone.

Per ovviare a tali problematiche le industrie si sono mosse verso nuove tecnologie, come quella del Symmetrical Multiprocessing (SMP). Cosa si intende per SMP?

Un’architettura multi-core con un Symmetrical Multiprocessing consiste in più core che condividono una stessa memoria di sistema e sono controllati da un singolo sistema operativo. Ogni processore è in grado di lavorare indipendentemente e, all’occorrenza, condividere uno stesso task con un altro processore.

Prendiamo come esempio la figura sottostante (Fig.1) che rappresenta il formato di una tipica pagina web. Contiene opzioni menu basate su ActiveX e JavaScript , due video e un’animazione Flash. Un processore single-core dovrebbe farsi carico del processo di contenuti ActiveX/Javascript, del Flash Player e dei processi di decodifica dei video embedded, lavorando quindi alla massima tensione/frequenza, consumando quindi parecchia potenza.

Nella figura successiva si vede invece come il lavoro è condiviso dai due processori di un dispositivo dual-core. Dato che la potenza dissipata dai dispositivi a semiconduttori è proporzionale alla frequenza e al quadrato della tensione si può capire come una piccola riduzione di frequenza/tensione possa portare ad un grande risparmio nei consumi.

I vantaggi di un processore multi-core si possono riassumere in:

  • Minori tempi di caricamento delle pagine Web

I moderni browser come Mozilla Firefox o Google Chrome sono multi-thread, ovvero eseguono in parallelo più processi contemporaneamente. Ad esempio ogni “scheda” aperta, rappresenta un processo separato e ogni processo controlla a suo volta determinati processi. Con un processore dual-core e la tecnologia SMP invece, questi processi vengono distribuiti su entrambi i core, ottenendo un caricamento della pagina Web significativamente maggiore rispetto ai processori single-core.

Il grafico mostra come il processore NVidia Tegra 2 basato su ARM Cortex A9 dual-core risulti essere 1.5 volte più veloce dell’analogo processore single core, e almeno 1.7 volte più veloce dei processori single-core basati su ARM Cortex A8 (Samsung Galaxy S, Nexus One, Motorola Droid ecc..).

Inoltre con lo svilupp del Web 2.0, le pagine Web possono richiedere l’esecuzione di una serie di script che rallentano il caricamento dell’intera pagina Web se eseguiti in serie. Il grafico mostra come il processore NVidia Tegra 2 richieda il 50% del tempo in meno rispetto all’analogo single-core.

  • Consumo di potenza inferiore e maggiore performance per watt

E’ vero che un processore dual-core consuma più di un single-core? Falso.

Stando a quel che ci dice il whitepaper, grazie all’SMP e agli algoritmi intelligenti di power management, un processore single-core non solo lavora a frequenza e tensioni più elevate ma impiega anche tempi di esecuzione maggiori. Al contrario la condivisione dei task dovuta all’SMP, che permette di operare a frequenze e tensioni  inferiori, consente una notevole riduzione di consumo di energia.  Ad esempio un processore singl-core che lavora a 1.1V e a 1Ghz di frequenza, consuma il 40% in più di energia di un dual-core a 0.8V e 550Mhz.

  • Gaming di alta qualità

Quello del mobile gaming è un settore in rapida crescita. Nel 2009-2010 i gamer dei dispositivi mobile sono aumentati del 60% e si stima che il giro d’affari raddoppierà dai 5.6 miliardi di dollari nel 2010 agli 11.4 nel 20104.  Si fanno quindi sempre più stringenti  i requisiti di capacità elaborativa delle CPU/GPU, risoluzione dei display e velocità di connessione. In quest’ottica un sistema operativo con supporto SMP in grado di distribuire i processi (thread) dei motori grafici alle diverse CPU, associata alle performance di un’ottima  GPU,  risulta essenziale per garantire un’esperienza di gioco che si avvicini a quella delle console portatili.

  • Iterfaccia utente altamente reattiva e multitasking più veloce

Che dire poi del multi-tasking? Riuscirebbe un single-core a gestire attività come la navigazione Web, streaming audio, sincronizzazione delle mail e dei social network e news feeders contemporaneamente?

Immaginiamo ad esempio una situazione in cui un utente sta giocando ad un gioco “oneroso” dal punto di vista grafico e allo stesso tempo sta ascoltando musica da una applicazione come Pandora e scaricando del contenuto da internet. Un simile multitasking si rifletterebbe in ritardi di risposta ai comandi e lentezza dell’interfaccia.  Infatti il gaming richiede un lavoro intenso da parte del processore, ma l’aggiunta di task real-time come la musica in streaming o il download di file porterebbe rapidamente al “sovraccarico” della CPU.

Con un dual-core invece le due attività, gaming da una parte e streaming/download dall’altra , vengono delegate ognuna a ciascun core. La figura sottostante mostra il confronto in termini di FPS (Frame per secondo) con i giochi Quake e Dungeon Defender in condizioni di multi-tasking descritte sopra, tra il Tegra dual-core Cortex A9 e l’equivalente single-core.

 

Conclusione

Un’architettura multi-core è un requisito necessario per gli smartphone e i tablet del futuro. Ma restano alcuni dubbi: siamo sicuri che gli attuali sistemi operativi sfruttino appieno le potenzialità offerte dai dual-core? Inoltre quali sarebbero i consumi di potenza, rispetto al single core, se entrambi i core lavorassero a pieno carico?

Appassionato di tutto il mondo della tecnologia e dell'elettronica, soprattutto consumer. Sogna di non aver più bisogno di dormire per riuscire a dedicare il giusto tempo alle proprie passioni.