Sunteți pe pagina 1din 26

INTEGRANTES

Escudero Caporal Daniel


Hernndez Cruz Luis
Ortiz Martnez Josu

La creciente complejidad de los problemas tratados en


ciertas reas de la ciencia, la ingeniera, el
procesamiento de datos, etc., requieren una gran
capacidad de clculo. Es un hecho establecido que
para algunos problemas como los mtodos numricos,
la simulacin, la optimizacin, etc., la computacin
paralela ofrece soluciones eficientes.

La computacin paralela o procesamiento en paralelo


consiste en acelerar la ejecucin de un programa.
Surge de forma natural, la idea de la computacin
paralela, que genricamente consiste en utilizar n
computadores para multiplicar, idealmente por n la
velocidad computacional obtenida de un nico
computador.

En este sentido se habla de mayor o menor grado de


paralelismo en la medida en que un algoritmo sea ms
o menos divisible en partes independientes con igual
coste computacional. Entre las interacciones hay que
considerar principalmente las dos siguientes:
a) La transferencia de datos.
b) La sincronizacin de los clculos de los diferentes
procesadores.

Con el fin de comprender en su conjunto las


arquitecturas paralelas, seguidamente se exponen
diferentes clasificaciones que muestran tanto la
complejidad de esta disciplina como las mltiples
posibilidades de las que se dispone. Debe entenderse
que esta descripcin se realiza anteponiendo la
amplitud a la profundidad, de manera que se
presentan los conceptos generales bsicos sin entrar en
detalles sobre posibles implementaciones prcticas.

4.2.1 TAXONOMA DE LAS


ARQUITECTURAS PARALELAS
Las diferentes posibilidades existentes para desarrollar
sistemas paralelos hacen que una clasificacin
definitiva sea complicada, y seguramente estril. Por
ello, en primer lugar se recuerdan las caractersticas
bsicas del modelo secuencial, con el fin de delimitar
los aspectosbsicos que son comunes o diferentes de
los sistemas paralelos.

Seguidamente se muestra una clasificacin clsica


propuesta por Flynn, que se basa en el flujo de
instrucciones y en el flujo de datos, es decir, el
mecanismo de control utilizado. Sin embargo, existe
una gran cantidad de criterios, aunque no todos
mutuamente excluyentes entre s, para establecer una
clasificacin de las distintas arquitecturas paralelas.

4.2.2 ARQUITECTURA DE LOS


COMPUTADORES SECUENCIALES
Como es bien sabido, los computadores secuenciales,
tambin denominados computadores serie, se basan
en la arquitectura de J. von Neumann. Modelo que
tiene como elementos fundamentales una Unidad
Central de Procesamiento, y una memoria, que se
caracteriza porque en ella no se distinguen datos e
instrucciones . En este modelo se considera una nica
secuencia de instrucciones que tratan una nica
secuencia de datos.

Por ello se conocen como computadores SISD, Single


Instruction Stream, Single Data Stream (nico flujo de
instrucciones, nico flujo de datos). El modelo de von
Neumann presenta dos limitaciones bsicas. La
velocidad de ejecucin de las instrucciones y la
velocidad de transferencia de informacin entre CPU y
memoria.

La primera termino est relacionada con los


componentes y la tecnologa electrnica asociada. La
ms conocida es la segmentacin (pipelining). La
segmentacin de instrucciones consiste en traer a la
cola de instrucciones la instruccin siguiente a la que
se est ejecutando.

En ltimo trmino se realiza la segmentacin de


ejecucin, o segmentacin encauzada, en la que se
permite que varias instrucciones se ejecuten
simultneamente en diferentes unidades funcionales
de clculo, durante las diferentes etapas en las que se
divide la ejecucin de la instruccin.

a)Modelo bsico de J. von Neumann. b) Procesador con segmentacin.

El rendimiento que se obtiene recurriendo a una


mquina con segmentacin es muy superior al de la
versin no segmentada
En la siguiente imagen se muestra una segmentacin
tpica e ideal de un procesador RISC (Reduced
Instruction Set Computer) con cinco etapas de
ejecucin: IF (bsqueda de la instruccin), ID
(decodificacin de la instruccin y lectura de los
registros), EX (operaciones aritmticas), MEM
(lectura/escritura de/en memoria) y WB (escritura en
los registros).

La gran ventaja que proporciona la segmentacin, es


posible comenzar la ejecucin de una nueva
instruccin en cada ciclo de reloj. As, aunque la
instruccin consume sus cinco ciclos, el resultado real
es que en cada ciclo de reloj se concluye la ejecucin de
una instruccin. De esta forma, y sin considerar los
riesgos de la segmentacin, el rendimiento obtenido es
de cinco con respecto a la misma mquina no
segmentada.

Sin embargo, pese a que la segmentacin produce un


incremento de la productividad, el tiempo total de
ejecucin de la instruccin segmentada es superior al
de su equivalente no segmentada. Esto es debido a que
el tiempo de ejecucin de una instruccin en la
segmentacin viene determinado por varios factores:

Factores que determinan una instruccin

en la segmentacin
Los cerrojos que hay que colocar en el camino de datos

del procesador con el objeto de aislar la informacin


entre etapas.
La duracin de todas las etapas de la segmentacin es
similar y viene determinada por la etapa ms lenta.
Los riesgos que se producen en la segmentacin y que
introducen detenciones en el encauzamiento.

4.2.2.1 TAXONOMA DE FLYNN


En 1966 Flynn propuso una clasificacin generalista de
los computadores, adoptando como criterio el flujo de
instrucciones y el flujo de datos que en ellos se
desarrolla. Se entiende por flujo (stream) una
secuencia de elementos, en este caso de datos o de
instrucciones.

As, la clasificacin de Flynn es la siguiente:


1. SISD (Single Instruction, Single Datu), instruccin
nica, datos nicos. Las instrucciones se ejecutan
secuencialmente pero pueden estar solapadas en las
etapas de ejecucin (segmentacin encauzada). Un
computador SISD puede tener ms de una unidad de
recursos de clculo, pero todas ellas estn bajo el
control de una nica unidad de control.

2. SIMD (Single Instruction, Multiple Data),


instruccin nica, datos mltiples. En esta clase se
sitan los procesadores matriciales en los que existen
varias unidades de procesamiento trabajando sobre
flujos de datos distintos pero ejecutando la misma
instruccin proporcionada por una nica unidad de
control. Estos computadores garantizan sincronismo
entre procesadores despus de cada ciclo de ejecucin
de las instrucciones.

3. MISD (Multiple Instruction, Single Data), instrucciones


mltiples, datos nicos. Este tipo de organizacin se
caracteriza por la existencia de varias unidades de
procesamiento cada una ejecutando una instruccin
diferente pero sobre el mismo flujo de datos. En sentido
estricto no se conoce ninguna materializacin real de esta
categora, ya que limita las posibilidades del hardware sin
claros beneficios sobre otros modelos. Del mismo modo,
las arquitecturas sistlicas tambin pueden ser
consideradas MISD. Se pueden considerar como un mtodo
de diseo de computadores de propsito especial para
equilibrar recursos, ancho de banda de E/S y clculo.

4.2.2.2ORGANIZACIN DEL ESPACIO DE


DIRECCIONES DE MEMORIA
El intercambio de informacin entre procesadores depende del
sistema de almacenamiento que se disponga. Atendiendo a este
criterio se obtiene una nueva clasificacin de las arquitecturas
paralelas en:
Sistemas de memoria compartida o multiprocesadores.
Sistemas de memoria distribuida o multicomputadores.

En esta Seccin se introducen de forma general ambas


arquitecturas, comparando seguidamente sus caractersticas.
Sistemas de memoria compartida o multiprocesadores. Los
procesadores de los sistemas con memoria compartida se
caracterizan por compartir fsicamente la memoria, es decir,
todos acceden al mismo espacio de direcciones. Un valor escrito
en memoria por un procesador puede ser ledo directamente por
cualquier otro.

En principio, en esta arquitectura la memoria es igualmente


accesible por todos los procesadores a travs de la red de
interconexin. As se desarrollaron los primeros
computadores de esta arquitectura, tales como el NYU
Ultracomputer.

En este contexto, la red de interconexin es


determinante para la eficacia del sistema, son
fundamentales dos parmetros que caracterizan los
sistemas paralelos:la latencia de red y el ancho de
banda. Ambos determinan la velocidad en la
transferencia de datos entre elementos bsicos del
sistema paralelo. El primero se define como el tiempo
que se tarda en enviar un mensaje a travs de la red de
interconexin del sistema paralelo, mientras que, en
este contexto, se define el ancho de banda como el
nmero de bits que se pueden enviar por unidad de
tiempo.

La mayora de los sistemas de memoria compartida


incorporan una memoria cache local en cada
procesador, y del mismo modo que en los
computadores secuenciales. Cuando se utilizan
memorias cache es fundamental asegurar la
coherencia de la informacin en la memoria cache, de
modo que cuando un procesador modifique el valor de
una variable compartida los dems procesadores no
consideren su valor anterior, ya que es incorrecto desde
ese momento.

En los sistemas de memoria distribuida cada procesador


dispone de su propia memoria, denominada local o
privada, independiente del resto y accesible slo por su
procesador. La comunicacin se realiza por paso de
mensajes, es decir, para que un dato que reside en la
memoria de un procesador pase a la de otro, el primero
debe construir un mensaje por software, enviarlo a
travs de una red de interconexin y el segundo debe
recibirlo. Como puede observarse es un mecanismo
ms complejo que con memoria compartida.

S-ar putea să vă placă și