Milla, Andrés

Un estudio comparativo entre traductores de Python para aplicaciones paralelas de memoria compartida - 2021 - 1 archivo (1,44 MB) : il. col.

Tesina (Licenciatura en Informática) - Universidad Nacional de La Plata. Facultad de Informática, 2021.

1. Introducción -- 1.1. Motivación -- 1.2. Objetivo y metodología -- 1.3. Contribuciones -- 1.4. Publicaciones -- 1.5. Organización del documento -- 2. Marco teórico -- 2.1. Python -- 2.1.1. NumPy -- 2.1.2. PyPy -- 2.1.3. Threading -- 2.1.3.1. Limitaciones -- 2.1.4. Multiprocessing -- 2.1.5. Numba -- 2.1.6. Cython -- 2.2. N-Body -- 2.2.1. Fundamentos -- 2.2.2. Algoritmo -- 2.3. Estado del arte -- 2.4. Resumen -- 3. Optimización de N-Body usando CPython y PyPy -- 3.1. Implementaciones -- 3.1.1. Implementación Naive -- 3.1.2. Integración de NumPy -- 3.1.3. Broadcasting -- 3.1.4. Localidad de datos -- 3.1.5. Multi-hilado -- 3.2. Resultados experimentales -- 3.2.1. Diseño experimental -- 3.2.2. Rendimiento -- 3.3. Resumen -- 4. Optimización de N-Body usando Numba -- 4.1. Implementaciones -- 4.1.1. Implementación Naive -- 4.1.2. Integración de Numba -- 4.1.3. Multi-hilado -- 4.1.4. Arreglos con tipos de datos simples -- 4.1.5. Operaciones matemáticas -- 4.1.6. Vectorización -- 4.1.7. Localidad de datos -- 4.1.8. Threading layer -- 4.2. Resultados experimentales -- 4.2.1. Diseño experimental -- 4.2.2. Rendimiento -- 4.3. Resumen -- 5. Optimización de N-Body usando Cython -- 5.1. Implementaciones -- 5.1.1. Implementación Naive -- 5.1.2. Integración de Cython -- 5.1.3. Tipado explícito -- 5.1.4. Multi-hilado -- 5.1.5. Operaciones matemáticas -- 5.1.6. Localidad de datos -- 5.2. Resultados experimentales -- 5.2.1. Diseño experimental -- 5.2.2. Rendimiento -- 5.3. Resumen -- 6. Comparación de prestaciones de traductores de Python -- 6.1. Rendimiento -- 6.1.1. Diseño experimental -- 6.1.2. Comparación -- 6.2. Esfuerzo de programación -- 6.2.1. Diseño experimental -- 6.2.2. Comparación -- 6.3. Resumen -- 7. Conclusiones y trabajos futuros

DIF-M8601


PYTHON
OPTIMIZACIÓN
EVALUACIÓN DE RENDIMIENTO
COMPUTACIÓN DE ALTO RENDIMIENTO - HPC
PROGRAMACIÓN MULTIHILO

Numba Cython PyPy N-body CPU-bound