Computación Paralela

Laboratorio 1 - Optimización secuencial

Cosas para hacer

  1. Encontrar una métrica de performance del problema.
    • Que sea comparable para cualquier tamaño del problema.
    • Mejor performance para mayores valores.
    • Idealmente FLOPS/IPS si se puede calcular.
  2. Mejorar la performance cambiando cosas, por ejemplo:
    • Compiladores. (GCC, Clang, Intel, NVIDIA/PGI?)
    • Opciones de compilación. (explorar mucho)
    • Mejoras algorítmicas y/o numéricas. (si hubiera, e.g. RNG)
    • Optimizaciones de cálculos. (que no haga ya el compilador)
    • Unrolling de loops y otras fuentes de ILP. (nuevamente, que no haga el compilador)
    • Sistema de memoria: Hugepages y estrategias cache-aware. (altamente probable que no rindan hasta agregar paralelismo, ni para sistemas pequeños)

Hints

Entrega

Presentación de los resultados en clase (10 minutos) e informe breve.