• Passa alla navigazione primaria
  • Passa al contenuto principale
  • Passa al piè di pagina
E4 Computer Engineering

E4 Computer Engineering

HPC and Enterprise Solutions

  • It
  • En
  • Soluzioni
    • Kaptain
    • Medooza
    • Fluctus
    • Gaia
    • Virtualization
  • Case history
  • Blog
  • Eventi
  • Chi siamo
    • Lavora in E4
  • Contatti
  • Search

Che cos’è il GPU Computing?

22 Maggio 2022

I nostri primi 20 anni!

Ultime news

3 Maggio 2022

E4 Computer Engineering entra nella RISC-V International

HPC, Press, Ultime news

15 Aprile 2022

Digital Transformation: quale sarà lo scenario dei prossimi anni?

Artificial Intelligence, HPC

23 Marzo 2022

E4 nella Data Valley d’Europa

Artificial Intelligence, HPC, Ultime news

8 Marzo 2022

Intelligenza Artificiale: ecco i vantaggi per le PMI.

Artificial Intelligence, Ultime news

PreviousNext

Che cos’è il GPU Computing?

24 Febbraio 2021

E4 GPU computing

Oggi vi parleremo di GPU Computing: che cos’è, quale funzione ha e perché viene utilizzato nella maggior parte delle operazioni di calcolo ad alte prestazioni con funzione di acceleratore, per l’elaborazione di dati in ambito scientifico e di uso generale.

Al giorno d’oggi, le GPU (Graphic Processing Unit), infatti, sono diventate gli elementi di riferimento per accelerare i carichi di lavoro in ambito High Performance Computing (HPC) e per le applicazioni legate al training e all’inferenza nell’ambito Deep Learning e Intelligenza Artificiale.

Tecnicamente, la GPU è un “coprocessore”, ossia funziona da supporto alla CPU (Central Processor Unit), all’interno di un computer, dedicandosi alle operazioni che richiedono l’elaborazione di immagini grafiche. Le GPU vengono oggi utilizzate anche per operazioni general purpose  (GPGPU – General Purpose Computing on GPU), in diversi ambiti, da quello scientifico e della ricerca a quello finanziario, per citarne alcuni, ove sia necessaria un’elaborazione di ingenti quantità di dati. Nell’ambito del data center, le GPU permettono, infatti, di supportare il calcolo parallelo: ogni server accelerato da una GPU sostituisce decine di server dotati di generiche CPU, fornendo un aumento sostanziale del throughput applicativo a costi più contenuti.

La GPU accelera le applicazioni che girano su CPU, occupandosi di quelle porzioni di codice che richiedono tempi più lunghi per l’elaborazione, mentre tutto il resto continua a girare su CPU. In questo modo la prestazione totale del sistema migliora.

A cosa servono le GPU?

Circa venti anni fa, le GPU venivano utilizzate principalmente per l’elaborazione grafica 3D, soprattutto in ambito gaming. Ben presto, gli informatici hanno realizzato il reale potenziale di questi sistemi di elaborazione. Ora, la tecnologia grafica viene applicata in modo più estensivo a una serie sempre più ampia di problemi. Le GPU odierne sono più programmabili che mai, offrendo loro la flessibilità per accelerare un’ampia gamma di applicazioni che vanno ben oltre il rendering grafico tradizionale.

In quali ambiti vengono utilizzate?

GAMING:

In ambito gaming si è assistito a un avanzamento delle tecnologie di visualizzazione, basti pensare agli schermi 4K, all’aumento di giochi di realtà virtuale o alle frequenze di aggiornamento elevate. Le GPU rispondono perfettamente a queste nuove esigenze, permettendo un’esperienza di gioco fluida e veloce.

VIDEO EDITING E CREAZIONE CONTENUTI MULTIMEDIALI:

Grazie all’elaborazione parallela offerta dalle GPU è possibile avere tempi di rendering di video e grafica in alta definizione molto ridotti. Inoltre, le GPU permettono una maggiore efficienza energetica.

GPU PER MACHINE LEARNING

Alcune delle applicazioni più interessanti per la tecnologia GPU riguardano l’intelligenza artificiale e il machine learning. Il riconoscimento immagini, ad esempio, è una di quelle applicazioni perfette per una GPU, poiché sfruttano il loro meccanismo di elaborazione di calcolo parallelo.

HIGH PERFORMANCE COMPUTING

L’architettura delle GPU si presta ottimamente all’esecuzione dei piu’ comuni kernel computazionali utilizzati nel calcolo scientifico, quali algebra lineare, trasformate di Fourier, metodi Monte Carlo… L’utilizzo di tali primitive consente da anni un efficiente sfruttamento  delle GPU in un ampia gamma di applicazioni tecniche e scientifiche, rendendo la transizione verso il GPU computing molto semplice.

Quali sono le differenze principali tra CPU e GPU?

Il processore, chiamato anche CPU (Central Processing Unit), è l’unità di elaborazione centrale del computer perché coordina in maniera centralizzata tutte le altre unità di elaborazione presenti in un sistema, sia sulle periferiche esterne sia sulle schede elettroniche interne, come ad esempio la scheda audio, la scheda video e la scheda di rete.
La CPU si occupa, inoltre, dell’esecuzione di tutte le istruzioni che arrivano dai programmi, che passano dall’hard-disk alla RAM, lavorando su operazioni tra loro sequenziali. Ogni CPU presenta qualche decina di core e lavora con una frequenza di clock che va dai 2 ai 5 GHz. In una CPU i diversi core si occupano di operazioni diverse e indipendenti le une dalle altre. Si tratta del sistema denominato MIMD: multiple instructions, multiple data.

La GPU, invece, presenta una struttura altamente parallela. Essa è composta normalmente da centinaia o migliaia di core capaci di lavorare con una frequenza nell’ordine del singolo GHz. Nonostante lavori, dunque, a frequenze più basse rispetto a una CPU, la GPU è in grado di elaborare grandi blocchi di dati in modo parallelo, funzionando secondo il sistema SIMD: single instruction, multiple data. In pratica, viene seguita una sola istruzione per volta, ma tramite un sistema di calcolatori che lavorano in parallelo.
Questi piccoli calcolatori vengono chiamati CUDA cores da NVIDIA, il principale produttore al mondo di GPU.

Le GPU sono dispositivi molto versatili: posso infatti operare sugli usuali dati a 32 e 64 bit, ma dispongono anche di unità specializzate (i Tensor Cores), in grado di accelerare gli algoritmi di Intelligenza Artificiale e le applicazioni che richiedono una minore accuratezza del singolo dato.

Nelle GPU la capacità di poter elaborare un ampio dataset in parallello è supportata dalla possibilità di leggere e scrivere dati dalla propria memoria con un elevatissimo transfer rate (nell’ordine di 1TB/s), rendendo la GPU un dispositivo idoneo anche per applicazioni memory-bound.

Vuoi saperne di più sul GPU Computing?

Le nostre soluzioni ad alte prestazioni sfruttano queste tecnologie, contattaci per approfondire!

Archiviato in: Nerd Herd

By Agnese Reina

Footer

Iscriviti alla Newsletter

Scarica il Company Profile

Contatti

Via Martiri della Libertà, 66
42019 Scandiano (RE) – Italy
+39 0522 991811
info@e4company.com

Vai
  • YouTube
  • Twitter
  • LinkedIn

#whenperformancematters

©️2002-2021 E4 COMPUTER ENGINEERING S.p.A. - P.IVA/VAT No. IT 02005300351 - R.A.E.E. IT0802 000 000 1117 - CAP. SOC. EURO 150.000,00 I.V. - Privacy policy - Cookie Policy - Manage cookie settings

WebSite by Black Studio