Evolución del diseño de soluciones paralelas sobre clústers de multicore a fin de maximizar la performance

En este trabajo se realiza un análisis comparativo de las técnicas de programación paralela, en el que puede observarse cómo la evolución en el diseño de la solución a un mismo problema permite maximizar la performance de algoritmos paralelos en arquitecturas clúster de multicore. Este análisis se...

Full description

Bibliographic Details
Main Author: Leibovich, Fabiana
Other Authors: Naiouf, Marcelo
Language:es
Published: 2013
Subjects:
Online Access:http://hdl.handle.net/10915/31210
http://sedici.unlp.edu.ar/handle/10915/31210
id ndltd-SEDICI-oai-sedici.unlp.edu.ar-10915-31210
record_format oai_dc
spelling ndltd-SEDICI-oai-sedici.unlp.edu.ar-10915-312102013-11-22T03:59:48ZEvolución del diseño de soluciones paralelas sobre clústers de multicore a fin de maximizar la performanceLeibovich, Fabianacluster de multicoreprogramación híbridajerarquía de memoriaperformanceClusteringPerformanceParallel programmingCiencias InformáticasEn este trabajo se realiza un análisis comparativo de las técnicas de programación paralela, en el que puede observarse cómo la evolución en el diseño de la solución a un mismo problema permite maximizar la performance de algoritmos paralelos en arquitecturas clúster de multicore. Este análisis se realiza utilizando un caso de estudio ampliamente estudiado en el área como lo es la multiplicación de matrices. Para ello, se implementaron diferentes soluciones para resolver el problema, partiendo de soluciones de alto nivel y bajo acoplamiento con la arquitectura, hasta llegar a soluciones de bajo nivel, dependientes de la arquitectura de prueba subyacente y que aprovechan las características de la misma, como por ejemplo la jerarquía de memoria. Las soluciones implementadas son una solución utilizando pasaje de mensajes, y tres soluciones híbridas teniendo en cuenta diferentes librerías de programación paralela (OpenMPI, Pthreads y OpenMP), y diferentes esquemas de descomposición de los datos. Asimismo, las pruebas de los algoritmos implementados se analizan desde distintos puntos de vista. Por un lado, escalando el tamaño del problema a resolver y por otro, escalando la cantidad de núcleos de procesamiento utilizados.Naiouf, MarceloDe Giusti, Laura Cristina2013-11-20T14:21:08Z2013-09-232013-11-20TesisTrabajo de especializacionhttp://hdl.handle.net/10915/31210eshttp://creativecommons.org/licenses/by-nc-nd/2.5/ar/Atribución-NoComercial-SinDerivadas 2.5 Argentinahttp://sedici.unlp.edu.ar/handle/10915/31210
collection NDLTD
language es
sources NDLTD
topic cluster de multicore
programación híbrida
jerarquía de memoria
performance
Clustering
Performance
Parallel programming
Ciencias Informáticas
spellingShingle cluster de multicore
programación híbrida
jerarquía de memoria
performance
Clustering
Performance
Parallel programming
Ciencias Informáticas
Leibovich, Fabiana
Evolución del diseño de soluciones paralelas sobre clústers de multicore a fin de maximizar la performance
description En este trabajo se realiza un análisis comparativo de las técnicas de programación paralela, en el que puede observarse cómo la evolución en el diseño de la solución a un mismo problema permite maximizar la performance de algoritmos paralelos en arquitecturas clúster de multicore. Este análisis se realiza utilizando un caso de estudio ampliamente estudiado en el área como lo es la multiplicación de matrices. Para ello, se implementaron diferentes soluciones para resolver el problema, partiendo de soluciones de alto nivel y bajo acoplamiento con la arquitectura, hasta llegar a soluciones de bajo nivel, dependientes de la arquitectura de prueba subyacente y que aprovechan las características de la misma, como por ejemplo la jerarquía de memoria. Las soluciones implementadas son una solución utilizando pasaje de mensajes, y tres soluciones híbridas teniendo en cuenta diferentes librerías de programación paralela (OpenMPI, Pthreads y OpenMP), y diferentes esquemas de descomposición de los datos. Asimismo, las pruebas de los algoritmos implementados se analizan desde distintos puntos de vista. Por un lado, escalando el tamaño del problema a resolver y por otro, escalando la cantidad de núcleos de procesamiento utilizados.
author2 Naiouf, Marcelo
author_facet Naiouf, Marcelo
Leibovich, Fabiana
author Leibovich, Fabiana
author_sort Leibovich, Fabiana
title Evolución del diseño de soluciones paralelas sobre clústers de multicore a fin de maximizar la performance
title_short Evolución del diseño de soluciones paralelas sobre clústers de multicore a fin de maximizar la performance
title_full Evolución del diseño de soluciones paralelas sobre clústers de multicore a fin de maximizar la performance
title_fullStr Evolución del diseño de soluciones paralelas sobre clústers de multicore a fin de maximizar la performance
title_full_unstemmed Evolución del diseño de soluciones paralelas sobre clústers de multicore a fin de maximizar la performance
title_sort evolución del diseño de soluciones paralelas sobre clústers de multicore a fin de maximizar la performance
publishDate 2013
url http://hdl.handle.net/10915/31210
http://sedici.unlp.edu.ar/handle/10915/31210
work_keys_str_mv AT leibovichfabiana evoluciondeldisenodesolucionesparalelassobreclustersdemulticoreafindemaximizarlaperformance
_version_ 1716615706823360512