Resumen:
Los procesadores con múltiples núcleos de hoy en día requieren nuevas estrategias para sacar ventaja del hardware subyacente. Dos aspectos que afectan drásticamente el desempeño son el grado de paralelismo y la localía de datos. Una forma de mejorar estos aspectos es a través del uso de compiladores que puedan, automáticamente, paralelizar el código con muy poca intervención del programador. Dado que los ciclos juegan un rol central en el tiempo de ejecución total de las aplicaciones, los compiladores prestan particular atención a ellos. Esta tesis se enfoca en el problema de paralelizar automáticamente ciclos. Un modelo matemático llamado modelo del poliedro cubre la teoría detrás del análisis y transformación de ciclos. Sin embargo, este modelo, originalmente, esta limitado a ciclos que pueden ser precisamente analizados en tiempo de ejecución, no puede tratar con ciclos con accesos a memoria a través de punteros o indirecciones. VMAD es un framework que permite instrumentación en tiempo de ejecución y paralelización dinámica. Adaptando el modelo del poliedro a una técnica llamada paralelización especulativa, este framework puede tratar con ciclos que no pueden ser paralelizados utilizando las técnicas tradicionales. Esta tesis continua el trabajo hecho en VMAD de la siguiente forma: 1. Extendiendo la cantidad de transformaciones soportadas por VMAD dando soporte para tiling, una transformación que mejora la localía de datos. 2. Proponemos una paralelización de ciclos optimizada, para ciclos que pueden ser paralelizados sin aplicar ningún tipo de transformación. 3. Presentamos una optimización para reducir la penalización impuesta por utilizar paralelización especulativa. Evaluamos empíricamente la efectividad de las extensiones usando una serie de benchmarks bien conocidos.
Abstract:
Today’s multi-core processors impose new strategies to take advantage of the underlying hardware. Two important aspects that drastically affects the performance are the degree of parallelism and data locality. One way to improve these aspects is through the use of parallelizing compilers, which can automatically parallelize code with very little programmer intervention. Since loops play an central role in the overall execution time of every application, compiler play particular attention to them. This thesis focuses on the problem of automatically parallelizing loops. A mathematical framework called the polytope model cover the theory behind loop analysis and transformation. Nevertheless, this theory is originally limited to loops which can be precisely analyzed at compile time, it cannot handle loops with memory accesses through pointers or indirections. VMAD is a framework which enables runtime instrumentation and dynamic parallelization. By adapting the polytope model to a technique called speculative parallelization, this framework is able to handle loops which cannot be parallelized using the traditional techniques. This thesis continues the work done in VMAD by: 1. Proposing an optimized loop parallelization, when the loop can be parallelized without applying any transformation. 2. Extending the transformation scope supported in VMAD by enabling tiling, a transformation which improves data locality. 3. Introducing an optimization to reduce the overhead imposed by speculative parallelization. We empirically evaluate the effectiveness of the extensions using a series of well known benchmarks.
Citación:
---------- APA ----------
Martinez Caamaño, Juan Manuel. (2013). Enhancing speculative code parallelization in VMAD with new patterns. (Tesis de Grado. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales.). Recuperado de https://hdl.handle.net/20.500.12110/seminario_nCOM000488_MartinezCaamano
---------- CHICAGO ----------
Martinez Caamaño, Juan Manuel. "Enhancing speculative code parallelization in VMAD with new patterns". Tesis de Grado, Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales, 2013.https://hdl.handle.net/20.500.12110/seminario_nCOM000488_MartinezCaamano
Estadísticas:
Descargas mensuales
Total de descargas desde :
https://bibliotecadigital.exactas.uba.ar/download/seminario/seminario_nCOM000488_MartinezCaamano.pdf
Distrubución geográfica