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...
Main Author: | |
---|---|
Other Authors: | |
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 |