In this work we analyze an open-source multifrontal solver implementation (UMFPACK) and modify it to transfer the computation load on an OpenCL device, typically a GPU. To achieve this result the dbOpenCL library has been created, which allows a neat integration of OpenCL code into existent C or C++ code. An analysis and pro ling of both the original and the modi ed UMFPACK implementation is given while solving an example problem built with the LifeV nite element library.
In questo lavoro analizziamo una implementazione open-source di un risolutore multifrontale (UMFPACK). Questa implementazione è in seguito modi cata per trasferire le operazioni computazionalmente intensive su una scheda gra ca o un qualunque dispositivo compatibile con OpenCL. Per ottenere questo risultato abbiamo realizzato la libreria dbOpenCL, che permette una facile integrazione di codice OpenCL in programmi C o C++ già esistenti. E ettuiamo inoltre il pro- ling e l'analisi di entrambe le versioni di UMFPACK mentre fattorizzano una matrice di esempio prodotta dalla libreria di risoluzione di problemi ad elementi niti LifeV.
A framework to implement a multifrontal scheme on GPU architectures with OpenCL
BONELLI, FEDERICO
2010/2011
Abstract
In this work we analyze an open-source multifrontal solver implementation (UMFPACK) and modify it to transfer the computation load on an OpenCL device, typically a GPU. To achieve this result the dbOpenCL library has been created, which allows a neat integration of OpenCL code into existent C or C++ code. An analysis and pro ling of both the original and the modi ed UMFPACK implementation is given while solving an example problem built with the LifeV nite element library.File | Dimensione | Formato | |
---|---|---|---|
Thesis UMFPACK OpenCL Federico Bonelli 20110319.pdf
accessibile in internet per tutti
Descrizione: Thesis report
Dimensione
848.4 kB
Formato
Adobe PDF
|
848.4 kB | Adobe PDF | Visualizza/Apri |
I documenti in POLITesi sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.
https://hdl.handle.net/10589/16608