Sunteți pe pagina 1din 13

Arquitectura de Computadoras UAB - CIS - TIS-400

Trabajo de Investigacin 2

ARQUITECTURA DE LA CPU (Optimizacin del rendimiento del sistema)


1. 2. 3. Establecer la diferencia entre la Arquitectura Von Neumann y la Arquitectura Harvard. Describa lo que es un Sistema de Programa Almacenado. Realizar una tabla comparativa de las siguientes filosofias de diseo de Set de Instrucciones para Computadora: 1) RISC - Reduced Instruction Set Computer), 2) CISC - Complex Instruction Set Computer), 3) VLIW ( Very Long Instruction Word) y 4) EPIC - Explicitly Parallel Instruction Computing). Establezca un Clasificacin General del Set de Instrucciones tpico de un procesador de la Familia Intel 80x86. (incluir ejemplos) Establezca una Clasificacin General de los Modos de Direccionamiento (manera de acceder a los datos), para un procesador tpico de la Familia Intel 80x86. (incluir ejemplos) Establezca las caractersticas de los siguientes mtodos de distribucin del espacio de memoria: 1) Segmentacin (segmentation) y 2) Paginamiento (paging), utilizando como modelo procesadores de la Familia Intel 80x86. Describa las caractersticas de la Tecnologa Random Logic (lgica cableada - hardwired logic) utilizada en la Unidad de Control de algunos procesadores. Describa las caractersticas de Tecnologia de Microcdigo (microcode Emulation) utilizada en la Unidad de Control de algunos procesadores. Describa las caracteristicas de la Arquitectura IA-32 (Intel Architecture 32) incluir un listado de procesadores. Describa las caracteristicas de la Arquitectura IA-64 (Instruction Arquitecture-64). Incluir listado Describa como se Decodifica (decode) y Ejecuta (execute) una instruccin. Utilizar como ejemplo las siguientes instrucciones assembler: MOV, ADD, LOOP, y JNZ (jump if not zero) Establezca el concepto de Procesamiento de instrucciones en paralelo (Parallel Processing) Establezca en que consiste la la Cola de Pre-extraccin (Prefetch Queue) o aprovechamiento de de Ciclos de Bus no utilizados. (Unused Bus Cycles). Describa el funcionamiento de un Pipeline tpico (Superposicin en la ejecucin de mltiples instrucciones Overlapping the Execution of Multiple Instructions). Establezca los problemas asociados con el uso de Pipeline (tuberias). Por ejemplo bloqueos en el pipeline (Stalls in a Pipeline) o azar (Hazards) en el uso de pipeline. Establezca la Operacin Superescalar (Superscalar Operation) de un procesador (ejecucin de instrucciones en paralelo). Establezca el concepto de Ejecucin de Instrucciones Fuera de Orden (Out of Order Execution) Establezca el concepto de Renombrado de Registros (Register Renaming), en la ejecucin de instrucciones. Establezca el concepto de Multiprocesamiento de instrucciones (Multiprocessing). Establezca en que consiste la Tecnologa Hyper-Threading (multi-hilo multi-hebra). El uso de un solo procesador fsico que acta como mltiples procesadores lgicos, por ejemplo en los procesadores Pentium/4.. Describa las caracteristicas de los Procesador Multincleo (core). Por ej. Pentium/4 Core 2 Duo, Pentium/4 Quad Core, i3, i5 ei7.

4. 5. 6.

7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21.

Presentacin: Mediante diapositivas (Prezi y Power Point), en grupos de 4 personas Necesariamente debe incluir referencia bibliografia y Webografia consultada.

Ing. J.L. Machicado T.

Arquitectura de Computadoras UAB - CIS - TIS-400

Multiprocesadores de Memoria Compartida


Caractersticas de MMC Redes de Interconexin para MMC Programacin de MMC Tipos de MMC
Universidad de Oviedo Area de Arquitectura y Tecnologa de Computadores

Arquitectura y Tecnologa de Computadores (09/10)


2

Arquitecturas Paralelas, Leccin 9 Multiprocesadores de Memoria Compartida (MMC)

_ Prestaciones (MMC) = f (coste acceso a memoria comn)


Caractersticas de la red de interconexin Trfico soportado por la red

_ Caractersticas de la Red de Interconexin


Coste Rendimiento Tolerancia a fallos (fiabilidad)

_ Reduccin del trfico soportado por la red


utilizacin de memoria cache en cada procesador las escrituras de variables compartidas residentes en cache dan lugar a problemas de coherencia del sistema de memoria se necesitan mecanismos que informen al resto de caches de los cambios
Ing. J.L. Machicado T.

Arquitectura de Computadoras UAB - CIS - TIS-400

Caractersticas de MMC
Universidad de Oviedo Area de Arquitectura y Tecnologa de Computadores

Arquitectura y Tecnologa de Computadores (09/10)


3

Arquitecturas Paralelas, Leccin 9 Multiprocesadores de Memoria Compartida (MMC)

_ Red de Interconexin
acceso de cualquier procesador a cualquier mdulo de memoria (MM)

_ Problemas a minimizar:
cada mdulo de memoria sirve una sola peticin en cada instante 2 o ms peticiones simultneas al mismo mdulo CONFLICTOS 2 o ms peticiones simultneas a diferentes mdulos:
caminos independientes en la RI no hay problema caminos con tramos comunes en la RI CONTENCIONES

Frecuencia (CONFLICTOS) = f (distribucin de datos en los MM) Frecuencia (CONTENCIONES) = f (tipo de RI)

Caractersticas de MMC
Universidad de Oviedo Area de Arquitectura y Tecnologa de Computadores

Ing. J.L. Machicado T.

Arquitectura de Computadoras UAB - CIS - TIS-400

Arquitectura y Tecnologa de Computadores (09/10)


4

Arquitecturas Paralelas, Leccin 9 Multiprocesadores de Memoria Compartida (MMC)

BUS COMN
Estructura: Funcionamiento:
contencin en cuanto dos procesadores acceden a memoria a la vez se necesita un arbitro de bus

Caractersticas:
Coste: bajo Contencin: alta (el rendimiento baja mucho con el n de procesadores) Tolerancia a fallos: nula (si falla el bus cae todo el sistema)

Redes de Interconexin para MMC


M1 M2 Mm P1 P2 Pn
Universidad de Oviedo Area de Arquitectura y Tecnologa de Computadores

Arquitectura y Tecnologa de Computadores (09/10)


5

Arquitecturas Paralelas, Leccin 9 Multiprocesadores de Memoria Compartida (MMC)

CROSSBAR / SWITCH
(Conmutador de barras cruzadas)

Estructura: Funcionamiento:
bus independiente
Ing. J.L. Machicado T.

Arquitectura de Computadoras UAB - CIS - TIS-400

para cada mdulo de memoria peticiones a mdulos diferentes servidas simultneamente

Caractersticas:
Coste: alto ( ~ n de conexiones entre procesadores y mdulos: n x m) Contencin: nula Tolerancia a fallos: alta (si falla un bus, el resto puede seguir funcionando) Redes Multietapa (mltiples switches organizados en etapas / menor coste)

Redes de Interconexin para MMC


M 1 M2 M m P1 P2 Pn Universidad de Oviedo Area de Arquitectura y Tecnologa de Computadores

Arquitectura y Tecnologa de Computadores (09/10)


6

Arquitecturas Paralelas, Leccin 9 Multiprocesadores de Memoria Compartida (MMC)

MLTIPLES BUSES
Estructura: Funcionamiento:
B=1 BUS COMN B=m CROSSBAR Compromiso entre los dos tipos de redes anteriores

Caractersticas:
Coste: intermedio Contencin: intermedia
Ing. J.L. Machicado T.

Arquitectura de Computadoras UAB - CIS - TIS-400

Tolerancia a fallos: intermedia

Redes de Interconexin para MMC


M1 M2 Mm P1 P2 Pn

B buses
Universidad de Oviedo Area de Arquitectura y Tecnologa de Computadores

Arquitectura y Tecnologa de Computadores (09/10)


7

Arquitecturas Paralelas, Leccin 9 Multiprocesadores de Memoria Compartida (MMC)

Programacin de MMC
_ Descomposicin del programa en tareas
(Tarea = Proceso / Hilo)

Esttica:
Compilador (paralelizacin) Programador
- Lib. funciones (OpenMP, Pthreads) - Leng. paralelos (Parallel C, HPF)

Dinmica
gran sobrecarga en tiempo de ejecucin

_ Mecanismos de sincronizacin
bajo nivel (soporte hardware) alto nivel (software) Ej. semforos

_ Planificacin de tareas (SO)


Definicin: donde y cuando se ejecutan Objetivos: mnimos conflictos/contenciones y mxima concurrencia Esttica (conocer los Tejec. de las tareas / desequilibrio
de carga entre CPUs)
Ing. J.L. Machicado T.

Arquitectura de Computadoras UAB - CIS - TIS-400

Dinmica (sobrecarga en tiempo de ejecucin /


equilibrio de carga entre CPUs)
Universidad de Oviedo Area de Arquitectura y Tecnologa de Computadores

Arquitectura y Tecnologa de Computadores (09/10)


8

Arquitecturas Paralelas, Leccin 9 Multiprocesadores de Memoria Compartida (MMC)

SMP (Symmetric MultiProcessor)


acceso simtrico a memoria desde los procesadores

PVP (Parallel Vector Processor)


cada procesador es vectorial

DSM (Distributed Shared Memory)


memoria distribuida entre los procesadores memoria compartida por todos (imagen nica) acceso a memoria no simtrico (mayor coste cuanto ms lejana est la memoria)

Tipos de MMC
Ing. J.L. Machicado T.

Arquitectura de Computadoras UAB - CIS - TIS-400

Tres Modelos de Computadores de Memoria Compartida


1. Uniform Memory Access (UMA) En sistemas con uniform memory access (acceso a memoria uniforme), cada procesador tiene acceso directo a una sola memoria compartida. Todas las ubicaciones de la memoria son equidistantes (en cuanto a tiempos de acceso) a cada procesador. La mayora de los sistemas UMA incorpora cach para eliminar las disputas de la memoria pero este mecanismo no se ve desde las aplicaciones. 2. Non uniform Memory Access (NUMA) Sistemas con nonuniform memory access (acceso a memoria no uniforme) tienen una memoria fsica compartida distribuida . Cada particin de esta memoria se ata directamente a un nodo pero se puede acceder a ella por procesadores en otro nodos via la red de interconexin. As, los tiempos de acceso a la memoria difieren dependiendo de si la ubicacin requerida es local al nodo o remota a este. Este nivel de complejidad agregado puede ser escondido del software de aplicacin pero hacer esto lleva a un desempeo suboptimo. Para hacer mejor uso del hardware, el programador debe tomar la arquitectura en consideracin. El cache se usa entre procesadores y memoria local asi como entre nodos. Mquinas con cach coherente a nivel del hardware se llaman ccNUMA. 3. Cache-only Memory Architecture (COMA) Sistemas con cache only memory access (acceso a memoria solo en caches) no tiene memoria compartida fsica, pero el cache solo constituye la memoria de las mquinas. Se provee un solo espacio fsico de direcciones pero los tiempos de acceso varan dependientemente si la ubicacin de la memoria requerida est en el cach local o en uno remoto. El software de aplicacin ignorara la arquitectura del sistema ya que la mquina se comporta en forma muy parecida a una mquina UMA con cach.

Comparacin de UMA y NUMA Comparacin de ccNUMA y COMA

Comparacin de UMA y NUMA


Los rasgos de UMA
UMA (Uniform Memory Access) La memoria fsica es compartida uniformemente por todo procesadores. Todos los procesadores tienen tiempo de acceso igual a la memoria. Se llama tambin sistema acoplado hermtico debido al alto grado de compartir recursos. La interconexin del sistema toma la forma de un bs comn, un crossbar switch. El modelo UMA es satisfactorio para aplicaciones de propsitos generales y tiempo compartido para mltiples usuarios.

Ing. J.L. Machicado T.

Arquitectura de Computadoras UAB - CIS - TIS-400

Los rasgos de NUMA y pasos de mensajes.


La memoria compartida es fisicamente distribuida a todos los procesadores, llamada memorias locales. La coleccin de todas las memorias locales forma un espacio de la direcciones global accesible por todo procesadores. Es ms lento acceder a la memoria remota atada a otros procesadores debido al retraso agregado por la red de interconexin. Hay dos maneras de comunicacin de datos entre procesadores: Se pueden direccionar memorias separadas como un espacio de direcciones compartido lgicamente, se llama DSM (Distributed Shared Memory: Memoria Distribuida Compartida) o NUMA (NonUniform Memory Access), ya que el tiempo de acceso depende de la ubicacin de memoria, la misma direccin fsica en dos procesadores refiere a la misma localidad en memoria. El espacio de direcciones puede consistir de mltiples espacios de direcciones privados los cuales estn lgicamente disjuntos y no pueden ser direccionados por un procesador remoto, esto es, la misma direccin fsica en dos procesadores diferentes se refiere a dos ubicaciones diferentes en dos memorias diferentes. Po eso se llama arquitectura de paso de mensajes.

Comparacin de costo y escalabilidad


En sistemas UMA, cada procesador conecta a memoria compartida via un bus de sistema o crossbar. Se puede expandir de 2 a 32 procesadores. Debido al ancho de banda del bus y el ancho de banda de la memoria al procesador unido se restringe la escalabilidad. Acerca del costo, debido a que la expansin esta limitada por el tamao, el costo es relativamente ms alto. En cambio, en sistemas de paso de mensajes (NUMA), cada procesador tiene su propia memoria, cache y E/S. No como UMA, se puede extender fcilmente y ninguna restriccin de mquina, as el costo es relativamente ms bajo.

Comparacin de ccNUMA y COMA


En el actual mundo de arquitecturas de memoria distribuida compartida, hay dos arquitecturas dominantes: El ms popular es un diseo llamado Cache-Coherent Non-Uniform Memory Access ( "ccNUMA"). El otro diseo emergente es el Cache Only Memory Architecture ( "COMA"). Asi como UMA difiere de estas ya que tiene una memoria uniforme para todos los procesadores, ccNUMA y COMA se diferencian por la forma de uso del cach (ya que las dos usan memoria distribuida). En una mquina ccNUMA, la direccin (fsica) en un bus de memoria de un nodo de proceso se usa para determinar la ubicacin de memoria del nodo hogar de un dato particular. La jerarqua de cache en cada nodo de proceso se construye para reproducir y mantener copias de los datos de no slo la memoria local, sino tambin de la memoria de nodos remotos. La coherencia del hardware y mecanismo de directorios sirven para mantener stas copias de cachs consistentes. Mientras el cach ayuda a reducir la latencia de acceso a una memoria remota, el total disponible es restringido al tamao del cach en cada nodo. Adems, si los datos estan ubicados en un nodo remoto entonces hay un causa para emigrarlos localmente. De cualquier modo, tal migracin es una operacin costosa envuelviendo sincronisacin del sistema operativo entre todos los nodos compartidos.

Ing. J.L. Machicado T.

Arquitectura de Computadoras UAB - CIS - TIS-400

Servidores Origin de Silicon Graphics Inc.


Introduccin
Durante los ltimos aos, la industria de la computacin ha anhelado una arquitectura de sistema extensible para reemplazar los sistemas SMP. Comprendiendo las limitaciones de las arquitecturas basadas en un bus, Silicon Graphics comenz a desarrollar una arquitectura de computadores revolucionaria que combinara los mejores rasgos y superara los obstculos de desempeo y cuellos de botella de los diseos SMP y MPP. En 1996, Silicon Graphics anunci y comenz la linea de servidores Origin , estableciendo ccNUMA como una plataforma viable para el servidor y proveyendo liderazgo en precio y estadsticas de desempeo. Reconocido por ser la ms acanzada tecnologa de servidores en el mercado, la arquitectura ccNUMA de Origin de Silicon Graphics se dise para darle al modelo de programacin SMP niveles ms altos de escalabilidad y desempeo, mientras al mismo tiempo reducir el costo de la escalabilidad. La implementacin fsica modular de la arquitectura del Origin deja que usuarios agreguen capacidades computacionales como requirieran, en vez del costoso box-swap comn a otras arquitecturas. Finalmente, el diseo del sistema de alto ancho de banda de Origin deja a este muy adelante, ya que como futuro procesador, almacenamiento, gestin de redes y adelantos perifrica pasa los lmites de las arquitecturas de computadores ms convencionales. El Origin 200/2000 de Silicon Graphics Inc. es un multiprocesador ccNUMA diseado y fabricado por Silicon Grphics Inc. El sistema Origin se dise partiendo como un multiprocesador capaz de escalar a cantidades pequeas y grander de procesadores sin mayor costo, menor ancho de banda o mayor

Ing. J.L. Machicado T.

Arquitectura de Computadoras UAB - CIS - TIS-400

latencia. La arquitectura del Origin se dise para escalar por sobre 512 nodos interconectados por una red Craylink. Cada nodo consta de uno o dos procesadores R10000 y ms de 4 GB de memoria coherente. Cada nodo tambin conecta al subsistema escalable de XIO IO. La aceptacin de la industria y el gran xito de Origin han hecho que muchos proveedores de servidors dejen los diseos SMP basados en bus e iniciar inversiones en la plataformas de hardware futuras basadas en ccNUMA. Adems de su innovativo esfuerzo de desarrollo, Silicon Graphics lidera como el proveedor primario de sistemas ccNUMA, calculando encima del 95 por ciento de los envios mundiales de sistemas basados en ccNUMA.

Arquitectura de los Servidores Origin


El xito comercial de la arquitectura ccNUMA de Silicon Graphics se atribuye a la unin con xito de tres metas especficas: Demostrada escalabilidad lineal de la aplicacin ms alta que los existentes SMPs basados en un bus Proteccin de codificacin SMP por usar un modelo de memoria compartida distribuida Rescate de un sistema para el cual el nivel de entrada y el costo incremental del sistema era ms bajo que el alto desempeo de los servidores SMP, pero comparable a un racimo de sistemas "cmodos"

La implementacin de Silicon Graphics de ccNUMA es una arquitectura altamente flexible construida de componentes modulares, de bajo costo que se pueden escalar para soportar configuraciones grandes y altamente paralelas en soporte de sistemas de multiprocesadores muy econmicos. Beneficiado del modelo de programacin de memoria compartida SMP, las aplicaciones corren sin modificaciones mientras demuestra altos niveles de escalabilidad. Este beneficio es dado por la modularidad natural de un solo segmento de memoria lgica, representado por memoria en nodos separados fsicamente. Empleando memoria compartida distribuida (DSM: distributed shared memory) con coherencia de cache en hardware, los clientes se benefician de la escalabilidad de la aplicacin a un costo ms bajo y con un grado ms alto de disponibilidad y fiabilidad, entregada en una infraestructura que crece con el aument del mercado.

Tecnologa de ccNUMA de los Servidores Origin


Interconeccin de las tablas de nodos El tejido de interconexin une tablas de nodo unas con otras, pero difiere de un bus en varias formas importantes. Un bus es un recurso que se puede usar por solo un procesador cada vez. El tejido de interconexin es una malla de transacciones mltiples, simultneas, y ubicables dinamicamente, donde ubicables dinamicamente se define como conexiones hechas de un procesador a otro como sea necesario. Este tejido de conexiones difiere de un bus en la misma manera que mltiples dimensiones difieren de una dimensin sola: si un bus es una linea unidimensional, entonces el tejido de interconexin es una malla multidimensional. Un bus es una unin comn y compartida, que multiprocesadores deben disputar y un recurso que un slo procesador puede usar cada vez. El tejido de interconexin deja que muchos nodos se comuniquen simultneamente. Cada tabla de nodo que contiene dos procesadores MIPS RISC de 64-bit R10000 con cach y memoria asociada es conectada a un router ( "R"). Se construyen caminos a travs del tejido de interconexin cuando son requeridos por los Routers ASICs, crossbars no bloqueantes diseados por Silicon Graphics, que funcionan como interruptores (switches).

Ing. J.L. Machicado T.

Arquitectura de Computadoras UAB - CIS - TIS-400

Tecnologa de ccNUMA de los Servidores Origin


Grado de efectividad de la interconeccin del hipercubo comparada con un bus El tejido de interconeccin CrayLink, que es un tejido consistente de switches crossbar Hub, XBOW, y Router, provee una arquitectura de sistemas escalable que agrega sistema incremental y ancho de banda de E/S naturalmente cuando crece. Un mtodo comn para evaluar la efectividad de la interconectividad de un sistema es mirar el ancho de banda biseccional del sistema. Se determina la ancho de banda biseccional al dividir un sistema por la mitad (bisectando) y contando el nmero de conexiones cortadas que normalmente habra dejado una mitad del sistema para comunicar con la otra. Al crecer el nmero de CPUs en un sistema, es deseable que el ancho de banda crezca proporcionalmente para prevenir cuellos de botalla. Los ejemplos siguientes ilustran las diferencias en ancho de banda biseccional entre el hipercubo del Silicon Graphics ccNUMA y un sistema basado en un bus de tamao equivalente. Ntese como el ancho de banda del procesador a la memoria del sistema de 32 procesadores vara entre ambos diseos.

Ing. J.L. Machicado T.

Arquitectura de Computadoras UAB - CIS - TIS-400

Ing. J.L. Machicado T.

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