SlideShare a Scribd company logo
1 of 20
Download to read offline
SOLUZIONE NUMERICA DI
EQUAZIONI DIFFERENZIALI A
GRANDI DIMENSIONI SU GPUs
Relatore: Candidato:
Dajana Conte Vitale Luca
•  Calcolo parallelo
•  CUDA
•  Librerie di ottimizzazione
•  Equazioni Differenziali
•  Calcolo parallelo
•  CUDA
•  Librerie di ottimizzazione
•  Equazioni Differenziali
•  Cos’è?
•  Vantaggi
•  Applicazioni
GPGPU – General-Purpose Computing on
Graphics Processing Units
Legge di Amdahl
•  Algoritmi Paralleli
•  Speedup
•  Calcolo parallelo
•  CUDA
•  Librerie di ottimizzazione
•  Equazioni Differenziali
CUDA - Compute Unified Device Architecture
•  Vantaggi
Algoritmi Paralleli principali:
•  Prodotto scalare tra Vettori
•  Norma Infinito
•  Prodotto Matrice Vettore
•  Prodotto Matrice Matrice
•  Calcolo parallelo
•  CUDA
•  Librerie di ottimizzazione
•  Equazioni Differenziali
Basic Linear Algebra Subprograms
•  BLAS - Seriale
•  cuBLAS - Parallelo
THRUST
•  Calcolo parallelo
•  CUDA
•  Librerie di ottimizzazione
•  Equazioni Differenziali
Sistemi di ODEs a grandi dimensioni:
Con
!′ ! = ! !, ! ! , !" !!, !
! !! = !!
!
! !: !!, ! !!ℝ!
→ ℝ!
!
Applicazioni:
•  Circuiti integrati su larga scala
•  Semidiscretizzazione spaziale di equazioni alle derivate
parziali
Metodi Waveform Relataxion
Si costruisce una successione che soddisfa:
Con
•  Approssimazione iniziale y(0)(t)
•  Funzione di Splitting
•  Condizione di consistenza
•  Convergenza
! !!!
(!) !!!
!
!(!!!)!
! = ! !, ! !!!
, !(!)
!
!(!!!)
!! = !!
!
!: !!, ! !!ℝ!
!ℝ!
→ ℝ!
!
! !, !, ! = !(!, !)!
lim
!→!
! !
! = !!(!)!
Picard
Che porta al seguente sistema:
Per Picard bisogna scegliere la funzione F
! !, !, ! = !(!, !)!
!!
(!!!)!
! = !" !, ! !
(!) !! = 1,2 … !!
!(!!!)
! = !!
!
! !, !(!!!)
, !(!)
= !(!, !(!)
)!
Nel caso in cui f è lineare abbiamo:
Con derivano dalla
semidiscretizzazione parziale di PDEs dipendenti dal tempo.
Scriviamo la matrice A = N – M :
WR Picard: M= 0, N=A
!!
! = !" ! + !(!)
! !! = !!
!
Α ∈ ℝ!"!
, !, !: [!!, !] → ℝ!
!
! !!! !
! + !! !!! ! = !! ! + ! ! !
!
Discretizzazione temporale
Metodi lineare multistep
Metodi WR a tempo discreto
!!!!!! = ℎ !!!(!!!!, !!!!)
!
!!!
!
!!!
!
con!!!j,!!! ∈ ℝ, ! = 0,1, … , !!!! ≈ ! !! , !! = !! +
!ℎ, ! = 0, … , !!
!!!!!!
(!!!)
+ ℎ !!!!!!!
(!!!)
!
!!!
!
!!!
= ℎ !!!!!!!
(!)
+ ℎ !!! !! + ! !"#!! ≥ 0
!
!!!
!
!!!
!
!
Analisi della convergenza
!
1
ℎ
!!
!!
! + !
!!
! < 1!
Equazione del calore 2D
0
2
4
6
8
10
12
14
256 512 1024 2048 4096 8192 16384
Picard Ottimizzato
vs Picard CUDA
Picard ottimizzato
vs Picard seriale
Picard CUDA vs
Picard seriale
FINE

More Related Content

More from Luca Vitale

Estimation of the Latent Signals for Consensus Across Multiple Ranked Lists u...
Estimation of the Latent Signals for Consensus Across Multiple Ranked Lists u...Estimation of the Latent Signals for Consensus Across Multiple Ranked Lists u...
Estimation of the Latent Signals for Consensus Across Multiple Ranked Lists u...Luca Vitale
 
A pathway and SVM based tool for tumor classification
A pathway and SVM based tool for tumor classificationA pathway and SVM based tool for tumor classification
A pathway and SVM based tool for tumor classificationLuca Vitale
 
Pathway based OMICs data classification
Pathway based OMICs data classificationPathway based OMICs data classification
Pathway based OMICs data classificationLuca Vitale
 
Metodi per la soluzione di problemi di programmazione non lineare
Metodi per la soluzione di problemi di programmazione non lineareMetodi per la soluzione di problemi di programmazione non lineare
Metodi per la soluzione di problemi di programmazione non lineareLuca Vitale
 
Shrinkage methods
Shrinkage methodsShrinkage methods
Shrinkage methodsLuca Vitale
 
Log structured-file-system
Log structured-file-systemLog structured-file-system
Log structured-file-systemLuca Vitale
 
Utilizzo dei Thread
Utilizzo dei ThreadUtilizzo dei Thread
Utilizzo dei ThreadLuca Vitale
 
Linguaggi Context-Sensitive e Linear Bounded Automata
Linguaggi Context-Sensitive e Linear Bounded AutomataLinguaggi Context-Sensitive e Linear Bounded Automata
Linguaggi Context-Sensitive e Linear Bounded AutomataLuca Vitale
 

More from Luca Vitale (10)

Estimation of the Latent Signals for Consensus Across Multiple Ranked Lists u...
Estimation of the Latent Signals for Consensus Across Multiple Ranked Lists u...Estimation of the Latent Signals for Consensus Across Multiple Ranked Lists u...
Estimation of the Latent Signals for Consensus Across Multiple Ranked Lists u...
 
A pathway and SVM based tool for tumor classification
A pathway and SVM based tool for tumor classificationA pathway and SVM based tool for tumor classification
A pathway and SVM based tool for tumor classification
 
Pathway based OMICs data classification
Pathway based OMICs data classificationPathway based OMICs data classification
Pathway based OMICs data classification
 
JSON-LD
JSON-LDJSON-LD
JSON-LD
 
Metodi per la soluzione di problemi di programmazione non lineare
Metodi per la soluzione di problemi di programmazione non lineareMetodi per la soluzione di problemi di programmazione non lineare
Metodi per la soluzione di problemi di programmazione non lineare
 
Shrinkage methods
Shrinkage methodsShrinkage methods
Shrinkage methods
 
Log structured-file-system
Log structured-file-systemLog structured-file-system
Log structured-file-system
 
Utilizzo dei Thread
Utilizzo dei ThreadUtilizzo dei Thread
Utilizzo dei Thread
 
S3
S3S3
S3
 
Linguaggi Context-Sensitive e Linear Bounded Automata
Linguaggi Context-Sensitive e Linear Bounded AutomataLinguaggi Context-Sensitive e Linear Bounded Automata
Linguaggi Context-Sensitive e Linear Bounded Automata
 

Soluzione numerica di equazioni differenziali a grandi dimensioni su GPUs

  • 1. SOLUZIONE NUMERICA DI EQUAZIONI DIFFERENZIALI A GRANDI DIMENSIONI SU GPUs Relatore: Candidato: Dajana Conte Vitale Luca
  • 2. •  Calcolo parallelo •  CUDA •  Librerie di ottimizzazione •  Equazioni Differenziali
  • 3. •  Calcolo parallelo •  CUDA •  Librerie di ottimizzazione •  Equazioni Differenziali
  • 5. GPGPU – General-Purpose Computing on Graphics Processing Units
  • 6. Legge di Amdahl •  Algoritmi Paralleli •  Speedup
  • 7. •  Calcolo parallelo •  CUDA •  Librerie di ottimizzazione •  Equazioni Differenziali
  • 8. CUDA - Compute Unified Device Architecture •  Vantaggi
  • 9. Algoritmi Paralleli principali: •  Prodotto scalare tra Vettori •  Norma Infinito •  Prodotto Matrice Vettore •  Prodotto Matrice Matrice
  • 10. •  Calcolo parallelo •  CUDA •  Librerie di ottimizzazione •  Equazioni Differenziali
  • 11. Basic Linear Algebra Subprograms •  BLAS - Seriale •  cuBLAS - Parallelo THRUST
  • 12. •  Calcolo parallelo •  CUDA •  Librerie di ottimizzazione •  Equazioni Differenziali
  • 13. Sistemi di ODEs a grandi dimensioni: Con !′ ! = ! !, ! ! , !" !!, ! ! !! = !! ! ! !: !!, ! !!ℝ! → ℝ! ! Applicazioni: •  Circuiti integrati su larga scala •  Semidiscretizzazione spaziale di equazioni alle derivate parziali
  • 14. Metodi Waveform Relataxion Si costruisce una successione che soddisfa: Con •  Approssimazione iniziale y(0)(t) •  Funzione di Splitting •  Condizione di consistenza •  Convergenza ! !!! (!) !!! ! !(!!!)! ! = ! !, ! !!! , !(!) ! !(!!!) !! = !! ! !: !!, ! !!ℝ! !ℝ! → ℝ! ! ! !, !, ! = !(!, !)! lim !→! ! ! ! = !!(!)!
  • 15. Picard Che porta al seguente sistema: Per Picard bisogna scegliere la funzione F ! !, !, ! = !(!, !)! !! (!!!)! ! = !" !, ! ! (!) !! = 1,2 … !! !(!!!) ! = !! ! ! !, !(!!!) , !(!) = !(!, !(!) )!
  • 16. Nel caso in cui f è lineare abbiamo: Con derivano dalla semidiscretizzazione parziale di PDEs dipendenti dal tempo. Scriviamo la matrice A = N – M : WR Picard: M= 0, N=A !! ! = !" ! + !(!) ! !! = !! ! Α ∈ ℝ!"! , !, !: [!!, !] → ℝ! ! ! !!! ! ! + !! !!! ! = !! ! + ! ! ! !
  • 17. Discretizzazione temporale Metodi lineare multistep Metodi WR a tempo discreto !!!!!! = ℎ !!!(!!!!, !!!!) ! !!! ! !!! ! con!!!j,!!! ∈ ℝ, ! = 0,1, … , !!!! ≈ ! !! , !! = !! + !ℎ, ! = 0, … , !! !!!!!! (!!!) + ℎ !!!!!!! (!!!) ! !!! ! !!! = ℎ !!!!!!! (!) + ℎ !!! !! + ! !"#!! ≥ 0 ! !!! ! !!! ! !
  • 19. Equazione del calore 2D 0 2 4 6 8 10 12 14 256 512 1024 2048 4096 8192 16384 Picard Ottimizzato vs Picard CUDA Picard ottimizzato vs Picard seriale Picard CUDA vs Picard seriale
  • 20. FINE