Ph.D. Thesis - hpca.ual.es · PDF fileAlmer´ıa, May 2014. 4. ... FPGAs, GPUs,...

182
University of Almer´ ıa Department of Informatics Ph.D. Thesis High Performance Computing for solving large sparse systems. Optical Diffraction Tomography as a case of study. (Computaci ´ on de altas prestaciones para la resoluci ´ on de sistemas dispersos de grandes dimensiones. Tomograf ´ ıa ´ Optica Difraccional como caso de estudio) Gloria Ortega L´ opez Almer´ ıa, May 2014

Transcript of Ph.D. Thesis - hpca.ual.es · PDF fileAlmer´ıa, May 2014. 4. ... FPGAs, GPUs,...

  • University of AlmeraDepartment of Informatics

    Ph.D. Thesis

    High Performance Computing for solving

    large sparse systems. Optical Diffraction

    Tomography as a case of study.

    (Computacion de altas prestaciones para la

    resolucion de sistemas dispersos de grandes

    dimensiones. Tomografa Optica Difraccional

    como caso de estudio)

    Gloria Ortega LopezAlmera, May 2014

    ./Titulo/figures/logo.eps

  • 2

  • Ph.D. Thesis

    High Performance Computing for solving large sparse

    systems. Optical Diffraction Tomography as a case of study.

    (Computacion de altas prestaciones para la resolucion de

    sistemas dispersos de grandes dimensiones. Tomografa

    Optica Difraccional como caso de estudio)

    University of Almera

    Department of Informatics

    Author: Gloria Ortega LopezSupervisors: Inmaculada Garca Fernandez

    Gracia Ester Martn Garzon

    Almera, May 2014

    ./Titulo/figures/logo.eps

  • 4

  • A mis padres y a mi hermano

  • ii

  • Agradecimientos

    Esta tesis ha sido posible gracias a la financiacion recibida del Ministerio de

    Educacion, Cultura y Deporte a traves de la beca FPU (AP2009-4797), del

    Ministerio de Economa y Competitividad a traves de los proyectos de inves-

    tigacion TIN2008-01117 y TIN2012-37483 y a la Consejera de Economa,

    Innovacion, Ciencia y Empleo de la Junta de Andaluca a traves de los

    proyectos P10-TIC6002 y P11-TIC7176, cofinanciados por el Fondo Eu-

    ropeo de Desarrollo Regional (FEDER).

    Igualmente, quiero expresar mi agradecimiento al Programa HPC-Europa2

    y al Plan Propio de Investigacion de la Universidad de Almera, por darme

    la oportunidad de realizar estancias en el extranjero, que han sido muy im-

    portantes en el desarrollo de esta tesis y en mi propia formacion cientfica

    y humana. Este agradecimiento se hace extensivo a los centros de Super-

    computacion Edinburgh Parallel Computing Centre (EPCC) y High Per-

    formance Computing Center Stuttgart (HLRS) por poner a mi disposicion

    sus recursos, tanto tecnicos como cientficos. En particular, me gustara

    agradecer a los Drs. D. David Henty y D. Jose Gracia su soporte y profe-

    sionalidad.

    La realizacion de esta Tesis Doctoral ha resultado ser un reto, tanto personal

    como intelectual, que se ha hecho posible gracias al apoyo recibido de todas

    aquellas personas que me han acompanado en este largo camino.

    En primer lugar me gustara agradecer a mis dos supervisoras, Dras. Da

    Inmaculada Garca Fernandez y Da Gracia Ester Martn Garzon, su consejo,

    dedicacion y confianza depositada en m. El hecho de compatir con ellas

    este tiempo ha sido un aspecto clave en mi desarrollo personal y labor

    investigadora.

  • Notable reconocimiento merecen los companeros del grupo de investigacion

    TIC-146 Supercomputacion: Algoritmos, con los que he compartido muy

    buenos momentos durante estos anos. En especial me gustara agradecer

    al Dr. D. Francisco Vazquez Lopez, por poner a mi disposicion el codigo

    de la valiosa rutina ELLR-T que fue la base de su tesis. Ademas, quiero

    expresar mi agradecimiento al Dr. D. Jose Antonio Martnez Garca por su

    estimable apoyo en tierras alemanas.

    Quisiera hacer extensible mi sincera gratitud a las Dras. Da Ma del Pilar

    Arroyo Grandes, Da Julia Lobera Salazar y Da Siham Tabik ya que su

    colaboracion ha sido importante para mi formacion.

    Esta tesis se la dedico principalmente a mis padres, que son un pilar fun-

    damental en mi vida. Ellos me han ensenado el valor de las cosas y que el

    esfuerzo no tiene lmites cuando te propones alcanzar un sueno. Con este

    logro quiero devolver un poco de lo que me han dado desde que nac.

    A mi hermano Luis, porque siempre ha estado a mi lado a pesar de la

    distancia. Gracias por ser mi apoyo incondicional y mi fuente de inspiracion

    cuando mas lo he necesitado.

    Un agradecimiento muy especial merece la comprension, paciencia y el

    animo recibidos de mi familia y amigos. En especial a aquellos que me

    han hecho compana incluso en el extranjero.

    A todos ellos, muchas gracias.

  • Prefacio

    Esta tesis titulada High Performance Computing for solving large sparse

    systems. Optical Diffraction Tomography as a case of study (Computacion

    de altas prestaciones para la resolucion de sistemas dispersos de grandes di-

    mensiones. Tomografa Optica Difraccional como caso de estudio) investiga

    los aspectos computacionales asociados con la resolucion de sistemas de

    ecuaciones lineales procedentes de la discretizacion de modelos fsicos des-

    critos mediante sistemas de Ecuaciones Diferenciales en Derivadas Parciales

    (PDEs). Estos modelos fsicos se conciben para describir el comportamiento

    espacio-temporal de algun fenomeno fsico f(x, y, z, t) en terminos de sus

    variaciones (derivadas parciales) con respecto a algunas de las variables

    de las que depende el fenomeno. Existe una gran diversidad de metodos

    de discretizacion de PDEs. Los dos mas extendidos son el Metodo de las

    Diferencias Finitas (FDM) y el Metodo de los Elementos Finitos (FEM).

    Ambos metodos dan lugar a una descripcion algebraica del modelo que se

    traduce en el planteamiento de un sistema de ecuaciones lineales del tipo

    (Ax = b), donde A es una matriz dispersa (porcentaje muy alto de elemen-

    tos nulos) cuyo tamano depende de la precision con la que se desee modelar

    el fenomeno.

    En esta tesis partimos de la descripcion algebraica del modelo asociado al

    fenomeno fsico, y nuestras contribuciones estan relacionadas con el diseno

    de tecnicas y modelos computacionales que permiten resolver estos sistemas

    de ecuaciones. Nuestro interes se centra en modelos que requieren un nivel

    de discretizacion muy fino y que por lo tanto generan matrices, A, que

    tienen una estructura dispersa y un gran tamano. La literatura cientfica

    caracteriza este tipo de problemas por una alta demanda computacional

    (debido al grado de discretizacion) y por la dispersion de las matrices que

    i

  • los definen, planteando que unicamente se pueden abordar mediante el uso

    de metodos y arquitecturas computacionales de alto rendimiento.

    Actualmente, las arquitecturas de alto rendimiento mas extendidas son

    los sistemas heterogeneos formados por clusteres de multiprocesadores de

    memoria distribuida, donde cada nodo posee una arquitectura multi-core

    con distinto numero de nucleos. Ademas, estas arquitecturas pueden dis-

    poner de diversos elementos aceleradores, tales como unidades vectoriales,

    FPGAs, GPUs, Coprocesadores Intel Xeon Phi y una red de interconexion

    heterogenea compuesta por enlaces de distinto ancho de banda y latencia.

    Uno de los principales objetivos de esta tesis es investigar las posibles al-

    ternativas que permitan la implementacion de rutinas capaces de resolver

    sistemas lineales dispersos de grandes dimensiones y basadas en el aprove-

    chamiento de las modernas plataformas de altas prestaciones. El uso de

    plataformas masivamente paralelas (GPUs), permite la aceleracion de estas

    rutinas, ya que presentan ventajas para esquemas de computacion vecto-

    rial. Por otro lado, el uso de plataformas de memoria distribuida permite

    la resolucion de problemas que pueden ser modelados mediante matrices

    de enorme tamano. Finalmente, la combinacion de ambas tecnicas, com-

    putacion distribuida y multi-GPUs, permitira abordar problemas de interes

    donde intervienen matrices dispersas de gran tamano, en un tiempo muy

    reducido. En este sentido, una de las aportaciones de este trabajo consiste

    en poner a disposicion de la comunidad implementaciones optimizadas para

    clusteres multi-GPU que permitan resolver sistemas de ecuaciones lineales

    dispersos, que son un aspecto clave en la computacion cientfica.

    La segunda parte de esta tesis se centra en un problema fsico real del

    campo de la Tomografa Optica Difraccional basado en datos holograficos.

    La Tomografa Optica Difraccional permite extraer informacion sobre la

    forma de los objetos con una gran precision y sin someterlos a la agresion

    de intensas radiaciones, por lo que posibilita la investigacion de tejidos, mi-

    croorganismos, etc. en vivo, y hace posible el estudio de su dinamica. Un

    modelo fsico preliminar basado en la reconstruccion bidimensional de la dis-

    tribucion de partculas sembradoras en fluidos fue propuesto por J. Lobera

    ii

  • y J.M. Coupland. Sin embargo, su alto coste computacional (memoria y

    tiempo de computo) hace que su extension a un modelo tridimensional tenga

    que basarse, necesariamente, en el uso de tecnicas de computacion de altas

    prestaciones. En la segunda parte de esta tesis se aborda la implementacion

    y validacion de este modelo fsico para el caso de reconstrucciones tridimen-

    sionales. En dicho desarrollo es necesaria la resolucion de grandes sistemas

    de ecuaciones dispersos. Por lo tanto, algunas de las rutinas algebraicas

    que hemos implementado en esta tesis han sido utilizadas para la imple-

    mentacion de estrategias computacionales capaces de resolver el problema

    de la reconstruccion 3D de Tomografa Optica Difraccional.

    Esta tesis esta organizada en seis captulos. El primero de ellos es una

    introduccion a las areas de investigacion en las que se enmarca esta tesis.

    En dicho captulo se presentan los materiales y metodos utilizados. En

    primer lugar