Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Paralelismo
Algoritmos
Concurrentes y
Paralelos
1
1. Tipos de paralelismo
El hardware en los uniprocesadores incorporan algunos mecanismos con el
objetivo de explotar el paralelismo a nivel de instrucción, a nivel de thread
y a nivel de datos.
3
Las ventajas de los VLIW son que hace más simple la arquitectura del
hardware, al no tener que planificar el código, y requiere menor potencia,
por lo cual disminuye el consumo.
Por su parte, los inconvenientes son que los compiladores que precisa son
mucho más complejos, además de que se debe cambiar el juego de
instrucciones para cualquier mejora en la arquitectura del hardware
(compatibilidad hacia atrás nula).
4
thread continúa la ejecución de instrucciones hasta que se produce
un bloqueo causado por un salto, un conflicto de datos, etcétera.
En un procesador con soporte multithreading de grano grueso, los
threads se pueden ejecutar en más de un ciclo consecutivo. Esto hace
que se reduzca la necesidad de múltiples bancos de registros.
5
El paralelismo de datos está relacionado con programas con ciclos que hacen
foco en la distribución entre los diferentes nodos de los datos que se tratan
en paralelo. Es común observar paralelismo de datos en aplicaciones
científicas y de ingeniería.
6
2. Ley de Amdahl y ley
Gustafson
La aceleración óptima aplicando la paralelización es lineal, o sea, al duplicar
el número de elementos de procesamiento se debería disminuir a la mitad
el tiempo de ejecución. Si se duplica nuevamente, debe reducir el tiempo a
la mitad por segunda vez, pero pocos algoritmos paralelos se acercan a los
resultados de esta aceleración óptima. La mayoría de los algoritmos logran
para pocos elementos de procesamiento una aceleración casi lineal y para
un gran número de elementos de procesamiento pasa a ser constante.
7
Figura 1: Ley de Amdahl
8
debido a que debe respetarse el orden de los cálculos que dependen de
cálculos previos. Gran parte de los algoritmos tienen la posibilidad de
ejecutar cálculos independientes en paralelo sin tener largas cadenas de
cálculos dependientes.
Primera condición: 𝐼𝑗 ∩ 𝑂𝑖 = ∅
Segunda condición: 𝐼𝑖 ∩ 𝑂𝑗 = ∅
Tercera condición: 𝑂𝑖 ∩ 𝑂𝑗 = ∅
9
Referencias
Dvd.darias. (29 de diciembre de 2012). [Imagen sin título sobre ley de
Amadahl]. Recuperada de
https://commons.wikimedia.org/wiki/File:AmdahlsLaw-es.svg
10