Programación Secuencial y Paralela Flashcards
¿Qué es un programa?
Secuencia de instrucciones que un sistema informático realiza o ejecuta.
Escrito antes de ser ejecutado.
¿Qué es un task?
Tarea compuesta por una o varias instrucciones, pero es una parte del trabajo lógicamente independiente.
Características de la ejecución en serie:
Importa el orden.
Pequeñas tareas (tasks).
Marco para construir programas modularmente.
Parte del trabajo lógicamente independiente.
Ejecución en cadena, sin superponer periodos de tiempo.
Ventajas de la computación secuencial:
Simplicidad (pro): conjunto claro de
instrucciones paso a paso sobre qué hacer y cuándo hacerlo.
Desventajas de la computación secuencial:
Solo tiene escalado vertical.
Sobrecargar indirecta de infrautilización de los recursos de procesamiento disponible.
Características de la ejecución paralela:
Independencia de tareas.
Ejecución de tareas físicamente simultáneas.
Características de un problema vergonzosamente paralelo:
Sincronización en puntos y bajas necesidades comunicación entre tareas.
Ley de Amdahl:
Un programa paralelo se ejecuta tan rápido como su parte secuencial más lenta.
Describe la aceleración máx. que podemos esperar cuando añadimos recursos al sistema, asumiendo computación paralela.
Ley de Gustafson:
Si seguimos aumentando la cantidad de trabajo, las partes secuenciales
tendrán cada vez menos efecto, y podemos ver una aceleración en proporción al
número de procesadores que tenemos
Una aplicación puede ser concurrente pero no paralela:
Procesar más de una
tarea durante un período determinado (es decir, haciendo malabarismos con
más de una tarea incluso si no se están ejecutando dos tareas en el mismo
instante).