TEL-420 Sistemas Paralelos P1b taller leyes amdahl gustafson · M1
M1 Guía de Práctica / Taller
Descargar .md

P1b · Taller de aplicación de la Ley de Amdahl y Ley de Gustafson

Contenido del programa: §20.1 · contenido 1.5 Horas de laboratorio: 4 · Modalidad: individual


1. Propósito y objetivos

Modelar analíticamente el techo de rendimiento teórico de aplicaciones paralelas bajo dos hipótesis fundamentales:

  1. Escalabilidad Fuerte (Strong Scaling): Tamaño del problema constante, modelado por la Ley de Gene Amdahl (1967).
  2. Escalabilidad Débil (Weak Scaling): Tamaño del problema proporcional al hardware disponible, modelado por la Ley de John Gustafson (1988).

Al finalizar la práctica, el estudiante es capaz de estimar la fracción estrictamente secuencial (s = 1 - f) de un programa a partir de corridas experimentales y predecir el beneficio económico y computacional de incorporar procesadores adicionales.


2. Marco analítico

2.1 Ley de Amdahl (Escalabilidad Fuerte)

Sea f la fracción del tiempo de cómputo que puede paralelizarse perfectamente ([0 \le f \le 1]), y s = 1 - f la fracción estrictamente secuencial. El tiempo de ejecución con p procesadores es:

$$T(p) = T_1 \cdot \left( (1 - f) + \frac{f}{p} \right)$$

El Speedup resultante queda acotado por:

$$S(p) = \frac{T_1}{T(p)} = \frac{1}{(1 - f) + \frac{f}{p}}$$

**Límite asintótico (p \to \infty):** $$S_{max} = \lim_{p \to \infty} S(p) = \frac{1}{1 - f} = \frac{1}{s}$$

Si un programa posee un 5\% estrictamente secuencial (s = 0.05), el Speedup máximo absoluto jamás superará S_{max} = 1 / 0.05 = 20\text{x}, aun si se emplean 100.000 procesadores en un supercomputador.

2.2 Ley de Gustafson (Escalabilidad Débil)

Gustafson observó que en problemas reales de ingeniería, cuando se dispone de computadoras más grandes, los científicos no resuelven el mismo problema pequeño más rápido, sino problemas mucho más grandes y detallados en el mismo lapso de tiempo.

Si en el sistema paralelo de p procesadores la fracción del tiempo empleada en la parte secuencial es \alpha_{serie}, el Speedup escalado es:

$$S_{Gustafson}(p) = p - \alpha_{serie} \cdot (p - 1)$$


3. Ejercicios prácticos de resolución analítica

Ejercicio 1: Predicción de viabilidad en inversión de hardware

Una empresa agroindustrial de Yacuiba procesa el modelo estocástico de riesgo hídrico en un servidor de 8 núcleos tardando 4 horas. Un perfilado indica que el 10\% del tiempo se consume en lectura y parseo secuencial de archivos CSV de estaciones meteorológicas (s = 0.10), mientras el 90\% restante corresponde a simulaciones Monte Carlo paralelizables (f = 0.90).

  • La gerencia evalúa comprar un servidor de 64 núcleos.
  • Calcule el Speedup teórico esperado para p = 8, p = 16, p = 32 y p = 64.
  • Determine el techo máximo inalcanzable S_{max}.
  • Emita una recomendación de ingeniería justificando si la inversión en 64 núcleos se justifica frente a optimizar primero la lectura secuencial de los datos.

Ejercicio 2: Deducción de la fracción secuencial oculta

Un estudiante ejecuta una simulación en el laboratorio Dell OptiPlex obteniendo los siguientes resultados:

  • Con 1 núcleo: T_1 = 180\text{ s}.
  • Con 8 núcleos: T_8 = 36\text{ s}.
  • Despeje algebraicamente f de la fórmula de Amdahl a partir de los datos observados.
  • Calcule cuál sería el tiempo de ejecución esperado si se ejecuta el mismo binario en un nodo de 16 núcleos.

4. Criterios de evaluación

La resolución debe entregarse en formato escrito o PDF y será calificada mediante la file:///home/eliasdev/sistemas_paralelos/10-modulos/M1-fundamentos/rubrica-ejercicio-calculos.md (claridad en el planteamiento, exactitud matemática y rigor en la interpretación física).