Aviso: para depositar documentos, por favor, inicia sesión e identifícate con tu cuenta de correo institucional de la UCM con el botón MI CUENTA UCM. No emplees la opción AUTENTICACIÓN CON CONTRASEÑA
 

List ranking on multicore systems

dc.contributor.advisorGautier, Thierry
dc.contributor.advisorPrieto Matías, Manuel
dc.contributor.authorVegas Carrasco, Hugo María
dc.date.accessioned2023-06-20T06:10:17Z
dc.date.available2023-06-20T06:10:17Z
dc.date.issued2010
dc.descriptionMáster en Investigación en Informática, Facultad de Informática, Departamento de Arquitectura de Computadores y Automática, curso 2009-2010
dc.description.abstractEn este proyecto hemos revisado la implementación de algoritmos paralelos para el ranking de listas enlazadas en procesadores multicore. Este tipo de algoritmos exhibe patrones de acceso a memoria fuertemente irregulares que no se benefician de los mecanismos agresivos que integran las arquitecturas actuales para ocultar los costosos accesos a memoria (caches, mecanismos de prebúsqueda, ...). Debido a esta característica intrínseca, el rendimiento de cualquier algoritmo para el ranking de listas esta limitado por los accesos a memoria no consecutivos. En los algoritmos paralelos los problemas de rendimiento se agravan ya que los patrones de acceso irregular suelen provocar mayor contención por recursos compartidos y por lo tanto, continua siendo un importante desafío disear algoritmos eficientes para esta aplicación. Desde comienzos de los 80 se han propuesto un buen número de alternativas para obtener algoritmos paralelos eficientes, pero recientemente ha aumentado el interés debido al auge de muchas aplicaciones, muchas de ellas relacionados con Internet, donde se manejan grandes cantidades de datos almacenadas en estructuras de datos tipo listas enlazadas. Algunos artículos recientes han analizado la implementación de estos algoritmos en GPUs, pero los sistemas basados en procesadores multicore todavía dominan ampliamente el mercado de servidores para muchas de estas aplicaciones. Nos hemos centrado en el algoritmo de Helman y Jájá’s, ya que los intentos por obtener resultados satisfactorios con otros algoritmos, como ha sido el caso de la conocida técnica de pointer jumping propuesta por Wyllie no ha dado resultados atisfactorios. Como principal aportación mostramos como es posible optimizar el algoritmo standard de Helman y Jájá’s para reducir el número de accesos a memoria no consecutivos. También sugerimos una implementación dinámica basada en el paradigma de work-stealing paradigm, aunque todavía, los resultados preliminares no son satisfactorios. [ABSTRACT] In this project we have revisited the implementation of parallel linked-list ranking algorithms on modern Multicore processors. This computation exhibits highly irregular memory referencing patterns, which do not typically benefit from the aggressive mechanisms that integrate current architectures to hide the large latency of main-memory accesses (cache hierarchies, data pre-fetching, ...). Because of this intrinsic characteristic, the performance of any List Ranking algorithm on modern cache-based processors is seriously limited by non-contiguous memory accesses. On a parallel setting, performance is further aggravated since concurrent irregular memory access patterns usually cause more contention for shared memory resources and as such, List Ranking represents a challenging problem for parallel computing. The development of parallel algorithms for List Ranking has received significant attention in previous literature dating back to the early 80’s but most recently, the emerge of many Internet applications that involve extremely large amount of data with linked structures has renewed the interest in List Ranking. Some recent papers have discussed the implementation of these algorithms on modern GPUs but multicore systems still dominate the server market for many applications. We have focused on the Helman and Jájá’s algorithm, since any attempt to achieve satisfactory results with other algorithms such as the famous Wyllie’s pointer jumping technique have proven to be ineffective. As main contribution we have shown how the standard Helman and J´aj´a’s implementation can be optimized to reduce the number of non-contiguous memory access. We have also suggested a dynamic parallel version based on the work-stealing paradigm, although preliminary results are still unsatisfactory.
dc.description.departmentDepto. de Arquitectura de Computadores y Automática
dc.description.facultyFac. de Informática
dc.description.refereedFALSE
dc.description.statusunpub
dc.eprint.idhttps://eprints.ucm.es/id/eprint/11387
dc.identifier.urihttps://hdl.handle.net/20.500.14352/46260
dc.language.isoeng
dc.page.total59
dc.rightsAtribución-NoComercial 3.0 España
dc.rights.accessRightsopen access
dc.rights.urihttps://creativecommons.org/licenses/by-nc/3.0/es/
dc.subject.cdu519.688(043.3)
dc.subject.cdu004.272(043.3)
dc.subject.keywordAlgoritmos paralelos para el ranking de listas enlazadas
dc.subject.keywordPrefix
dc.subject.keywordAlgoritmos irregulares
dc.subject.keywordPointer Jumping
dc.subject.keywordAlgoritmo de Wyllie
dc.subject.keywordAlgoritmo de Helman y Jájá’
dc.subject.keywordWork-stealing
dc.subject.keywordParallel List Ranking
dc.subject.keywordPrefix Computation
dc.subject.keywordIrregular Algorithms
dc.subject.keywordWyllie’s algorithm
dc.subject.keywordHelman and Jájá’s algorithm.
dc.subject.ucmSistemas expertos
dc.subject.ucmProgramación de ordenadores (Informática)
dc.subject.unesco1203.23 Lenguajes de Programación
dc.titleList ranking on multicore systems
dc.typemaster thesis
dspace.entity.typePublication
relation.isAdvisorOfPublication5d3f6717-1495-4217-853c-8c9c75d56620
relation.isAdvisorOfPublication.latestForDiscovery5d3f6717-1495-4217-853c-8c9c75d56620

Download

Original bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
HugoDocument.pdf
Size:
1.33 MB
Format:
Adobe Portable Document Format