HSA 1.0 e una gestione dei dati diversa

Ecco Carrizo, la nuova APU per i notebook di AMD. Tante novità all'insegna dell'efficienza energetica per trovare spazio nei portatili mainstream.

Avatar di Tom's Hardware

a cura di Tom's Hardware

Carrizo e la sicurezza

Carrizo ha un sotto sistema di sicurezza dedicato, che include un ARM Cortex-A5 integrato nel die dell'APU. Questo microcontroller ha la propria ROM e SROM dedicate e isolate dal resto del sistema. Il microcontroller ha accesso alla memoria di sistema se necessario.

amd carrizo 18

Clicca per ingrandire

All'interno di Carrizo troviamo anche un coprocessore crittografico usato per gestire RSA fino a 16,384 bit e altri metodi crittografici. Usare una soluzione dedicata permette di gestire la codifica usando pochissima energia. Questo chip si occupa di Secureboot, della codifica hardware e delle applicazioni TrustZone. AMD vede un futuro in cui le soluzioni di sicurezza saranno eseguite direttamente nel chip di sicurezza.

amd carrizo 19

Clicca per ingrandire

Heterogeneous System Architecture 1.0

AMD supporta completamente la specifica HSA 1.0. Con Kaveri i core di CPU e GPU possono accedere a tutta la memoria disponibile, fino a un limite di 32 GB, ma la memoria allocata ai core della CPU era separata da quella indirizzata ai core GCN. Se un flusso di lavoro richiedeva sia core GCN che CPU, la memoria doveva essere riflessa piuttosto che condivisa.

amd carrizo 20

Clicca per ingrandire

La specifica HSA permette un accesso alla memoria lungo i 12 Compute Core. Ora i carichi di lavoro inviati ai core GCN non sono limitati alla memoria allocata alla grafica: è disponibile tutta la memoria di sistema e i core della CPU possono vedere lo stesso carico.

La capacità di gestire equamente il lavoro tra CPU e GPU è uno dei principali vantaggi di HSA. Queste due unità di calcolo amministrano i carichi in modo radicalmente differente. Nella teoria che sta alla base di HSA entrambi i core devono essere in grado di scambiarsi dati, ma in presenza di connessioni rigide i due tendono a combattersi l'un l'altro.

Normalmente per gestire il tutto servirebbe un driver, ma un driver che agisce come task manager si rivelerebbe lento nel gestire il lavoro. AMD perciò usa il cosiddetto heterogeneous queuing (hQ) e ha descritto queste code come elastici che connettono i data path tra i core. Ciò dà la flessibilità di gestire carichi di lavoro di non omogenei senza creare difficoltà a core x86 e grafici.

Carrizo è in grado di accelerare linguaggi di programmazione popolari come Java, C++ AMP e Python permettendo agli sviluppatori di sfruttare le attuali - e future - soluzioni HSA.

GPU: gestire calcoli generici e grafica 3D

Osservando una APU ci si attende che la GPU integrata sia in grado di eseguire due operazioni differenti tra loro: grafica 3D e calcoli. Per farlo i core GCN devono essere veloci ed efficienti nel passare da un'operazione all'altra.

Il "context switching" è la capacità di mettere da parte un'operazione all'interno di uno stato sicuro per far spazio a un'operazione differente. Non è un'idea nuova: la vostra CPU lo fa da sempre. Date uno sguardo ai processi in background di Windows. Immaginate di richiedere un core per ogni processo in funzione. Avreste bisogno di una CPU con migliaia di core. Il Context switching evita tutto questo e permette ai core di scambiarsi rapidamente il lavoro.

amd carrizo 21

Clicca per ingrandire

Mentre il context switching su una CPU è una pratica accettata, AMD ha dovuto affrontare alcune sfide per adeguarlo alle APU. Il principale è che la gestione della grafica implica molti dati e cambiare operazione significa mettere tutto da parte. Il calcolo d'altra parte, non ha bisogno di così tanto spazio. Ed è su questi due fattori che AMD ha giocato.

La pipeline 3D è molto più ampia rispetto al volume dei calcoli generici e così quando un carico grafico viene messo da parte la maggior parte dei dati rimane archiviata nella pipeline mentre il resto dello spazio necessario viene allocato ai dati di calcolo. I dati legati al calcolo generico possono cambiare contesto in modo indipendente rispetto ai carichi 3D. Tutto questo è fatto in background senza interruzioni.

Conclusioni

Il nuovo processore di AMD è foriero di un sacco di promesse, sulla carta. Il livello di produttività che può essere raggiunto con una piattaforma di HSA è ancora da dimostrare, ma è facile intuire che potrebbe avere un effetto dirompente. Abbiamo visto in prima persona cosa può fare Carrizo e riteniamo possa rappresentare un punto di svolta per il mercato mobile, ma prima di trarre qualsiasi conclusione bisognerà mettere le mani sui prodotti finali.