Nuevos mecanismos hardware-software para explotar paralelismo en sistemas multinúcleo masivos

Uno de los componentes principales de cualquier computadora de propósito general es el procesador. Éste se puede encontrar en sistemas tan diversos como servidores o sistemas de cómputo de alto rendimiento (HPC) hasta plataformas portátiles como tablets, inclusive en smartcards. Su principal tarea es ejecutarprogramas tan rápido como sea posible considerando limitaciones como el costo del propio sistema y su consumo de energía. Los procesadores multicore se pueden encontrar en todos los segmentos del mercado,desde procesadores embebidos hasta procesadores para HPC, pero pocas aplicaciones pueden hacer uso eficiente de estos recursos computacionales. Los actuales frameworks tienen como objetivo soportar paralelismo a nivel de thread en aplicaciones o permitir sincronizar el cómputo por medio de pasaje explícito de mensajes, pero el overhead que se agrega al utilizar estas técnicas impide su uso para instancias pequeñas de problemas. En esta tesis se presenta Micro-threads (Mth), una propuesta co-diseñada de hardware-software enfocada en la administración de threads y a permitir que las aplicaciones puedan acceder a recursos paraleloscon un overhead reducido. Se busca, entonces, ejecutar eficientemente fragmentos de código pequeños o instancias de problemas que, de otra manera, resultaría impracticable debido al overhead. El mecanismopropuesto se basa en delegar el control de los recursos a las aplicaciones y a mejorar la forma en que se almacena y carga un contexto de ejecución, junto con un eficiente sistema de sincronización de threads. Los experimentos realizados sobre la propuesta seenfocansobre dos aspectos, por un lado, un conjunto de algoritmos paradigmáticos bien definidos que cubren un amplio espectro de formas de sincronización y patrones de cómputo: filtro de conversión a HSL (trivialmente paralelizable), FFT Radix2 (algoritmo recursivo), descomposición LU (barrera de sincronización en cada ciclo) y algoritmo de camino mínimo de Dantzig (basado en grafos y operaciones sobre matrices). Los resultados muestran un notable speedup paratodos los casos, incluso para instancias de tamaño reducido, donde su tamaño no supera los cientos de bytes. Además, el estudio muestra que la inicialización y sincronización no impacta de forma significativasobre Mth a diferencia de otras tecnologías estudiadas. Por otro lado, se analizó el comportamiento de Mth sobre una aplicación de interés real y amplio uso. Los motores de base de datos (DBMS) constituyen no solo una parte fundamental de cualquier negocio, sino que también son utilizados diariamente en sistemas embebidos en aplicaciones móviles. Se propuso implementar modificaciones a un DBMS embebido utilizando Mth de manera que pudiera soportar la resolución de planificaciones paralelas de consultas. La propuesta incluye dar soporte al paralelismoutilizando Mth y un esquema para coordinar los recursos resolviendo planificaciones en múltiples máquinas virtuales. La combinación de ambos enfoques produjo un uso eficiente de los recursos computacionales,incluso para consultas de muy bajo volumen de datos, permitiendo la ejecución en paralelo de consultas que no pueden ser resueltas de esta forma por los DBMS actuales. Los resultados muestran una notable ganancia en términos de reducción del tiempo de ejecución y consumo de energía utilizando Mth aplicado a una DBMS embebida (SQLite). En términos generales, los resultados obtenidos alientan la utilización del esquema propuesto en Mth, que aparece como una solución gradual al uso de múltiples cores en aplicaciones que actualmente no pueden aprovechar el incremento en la cantidad de recursos paralelos disponibles.

Saved in:
Bibliographic Details
Main Author: González Márquez, David Alejandro
Other Authors: Mocskos, Esteban
Format: info:eu-repo/semantics/doctoralThesis biblioteca
Language:spa
Published: Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales
Online Access:https://hdl.handle.net/20.500.12110/tesis_n6347_GonzalezMarquez
http://repositoriouba.sisbi.uba.ar/gsdl/cgi-bin/library.cgi?a=d&c=aextesis&d=tesis_n6347_GonzalezMarquez_oai
Tags: Add Tag
No Tags, Be the first to tag this record!