Arquitectura de Computadoras - Cluster...
Transcript of Arquitectura de Computadoras - Cluster...
-
Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Śıntesis Lecturas Recomendadas
Arquitectura de Computadoras
-
Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Śıntesis Lecturas Recomendadas
Contenidos
1 IntroducciónComputadoraArquitecturaPartes de una arquitectura
2 Componentes BásicosCPUJerarqúıa de Memoria
3 Concurrencia y ParalelismoArquitecturas concurrentesArquitecturas DistribuidasMemoria compartida y Memoriadistribuida
4 EjemplosEjemplos de arquitecturasCentralizadasEjemplos de ArquitecturasDistribuidas
5 ŚıntesisDefinicionesComponentes básicosConcurrencia y paralelismo
6 Lecturas RecomendadasConceptos básicosTemas avanzados
-
Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Śıntesis Lecturas Recomendadas
Computadora
Una computadora puededefinirse como una máquina deestados que acepta entradas,las procesa utilizando unacolección finita y definida deinstrucciones y genera unresultado según las entradasespecificadas. ”Turing Machine”, Licencia de dominio público
-
Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Śıntesis Lecturas Recomendadas
Arquitectura
La arquitectura de una computadora es el modelo conceptual que describe lascaracteŕısticas de una computadora, las instrucciones que puede ejecutar y la forma enque se ejecutan.Existe una familia de arquitecturas denominada RISC (Reduced Instruction SetComputer) que define un estándar en la forma en que se representan las instrucciones:
Tamaño estándar para todas las instrucciones
Almacenamiento y recuperación de datos sólo a través de instrucciones dedicadas
Menos instrucciones más simples, operaciones más complejas se alcanzan porcomposición
-
Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Śıntesis Lecturas Recomendadas
Partes de una arquitectura
En la actualidad toda computadora cuenta con dos componentes principales:
Unidad Central de Procesamiento o CPU
Jerarqúıa de Memoria
Adicionalmente puede tener componentes adicionales que se encarguen de tareasespecializadas, por ejemplo:
Procesamiento gráfico
Gestión y sincronización de audio
Control de almacenamientos especializados
Comunicación con dispositivos externos
Entre otros
-
Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Śıntesis Lecturas Recomendadas
Componentes Básicos.
-
Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Śıntesis Lecturas Recomendadas
CPU
La Unidad Central de Procesamiento tiene a su vez 3 componentes principales:
Control de Instrucciones (CI): Tiene programadas, por medio de circuitos digitales,todas las instrucciones básicas que puede ejecutar la computadora.Unidad Aritmético-Lógica (ALU): Se encarga de ejecutar instrucciones especialesaritméticas que son muy complejas para el conjunto de instrucciones del CIRegistros: El CI está conectado a una estructura de almacenamiento organizada enRegistros, cada registro puede almacenar una instrucción o un dato de máximo(según la tecnoloǵıa actual) 64 bits de tamaño.
-
Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Śıntesis Lecturas Recomendadas
CPU
Ciclo del CPU:1 Fetch: Recuperar
instrucción2 Decode: Identificar
instrucción3 Execute: Coordinar la
ejecución4 Return: Regresar a (1)
Diagrama de ejecución deprocesador MIPS.
Pipeline MIPS, Licencia de dominio público.
-
Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Śıntesis Lecturas Recomendadas
CPU
El CI puede ejecutar hasta cuatro* instrucciones ala vez, cada una en etapas distintas del ciclo deprocesamiento.
El reloj interno del CI marca un ciclo cada vez quese termina la etapa más lenta y permite al ciclo deprocesamiento avanzar.
Las instrucciones de ALU son más lentas y por logeneral requieren más de un ciclo para ejecutarse.
La velocidad de una CPU se mide en cantidad deciclos de reloj por segundo, esta frecuencia serepresenta en Hertz (Hz, MHz, GHz).
Vista inferior delPentium IV por EricGaba. cba
-
Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Śıntesis Lecturas Recomendadas
Jerarqúıa de memoria
Almacenamientos Primarios
1 Registros: Directo al CPU
2 Caché L1: Memoria de trabajo
3 Caché L2: Memoria de trabajo
4 RAM: Memoria Principal
Almacenamientos Secundarios
5 Medios Magnéticos
Medios Ópticos
Medios SemiconductoresCNCA cba
-
Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Śıntesis Lecturas Recomendadas
Concurrencia y Paralelismo.
-
Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Śıntesis Lecturas Recomendadas
Concurrencia y Paralelismo
Un procesador con un único CI puede recuperar (Fetch) solo una instrucción porcada ciclo de reloj.
Si se define un proceso como un conjunto finito de instrucciones secuenciales, esteprocesador puede correr sólo un proceso a la vez.
Existen dos estrategias, no excluyentes entre śı, para que un procesador puedaejecutar múltiples procesos a la vez:
Arquitectura Multihilo
Un mismo CI puede corrervarios procesos alternando lasinstrucciones que loscomponen.
Arquitectura Multinúcleo
Un mismo procesador puedetener múltiples CI, cada unocon sus propios ALU, Registrosy parte de la Caché.
-
Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Śıntesis Lecturas Recomendadas
Arquitecturas Distribuidas
Las arquitecturas multinúcleo y multihilo permiten ejecutar múltiples instruccionesutilizando una misma jerarqúıa de memoria.
Al trabajar con un procesador multinúcleo, la cantidad de procesos paralelos quese pueden ejecutar está limitada por las especificaciones de la CPU.
En la actualidad la mayoŕıa de computadoras personales y servidores utilizan estetipo de arquitectura.
Existen arquitecturas que permiten conectar múltiples CPUs, aumentando lacantidad de procesos paralelos según las necesidades del usuario.
-
Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Śıntesis Lecturas Recomendadas
Multiprocesamiento Simétrico - SMP
Acceso Uniforme a Memoria(UMA)
Caché compartida
No requieresincronización.
CNCA cba
Acceso No Uniforme aMemoria (NUMA)
Caché independiente
Escritura debesincronizarse
CNCA cba
-
Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Śıntesis Lecturas Recomendadas
Multiprocesamiento Asimétrico - AMP
Espacio de direcciones distribuido
Lectura de memoria remota requierecomunicación (e.j. red)
Sólo puede ser NUMA
Escalable
CNCA cba
-
Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Śıntesis Lecturas Recomendadas
Ejemplos de Arquitecturas.
-
Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Śıntesis Lecturas Recomendadas
Ejemplos de arquitecturas
En la actualidad existen varios ejemplos prácticos de casi todas las arquitecturasexpuestas.
A continuación se enumeran algunos partiendo de los más básico hasta lo máscomplejo.
-
Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Śıntesis Lecturas Recomendadas
Dispositivos Móviles
Mononúcleo-Monohilo.
La memoria principal y el almacenamiento secundario son compartidos.
Puede extenderse el almacenamiento secundario con unidades flash.
Rendimiento muy bajo.
Requieren espacio ḿınimo, de bolsillo.
Muy bajo costo.
-
Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Śıntesis Lecturas Recomendadas
Dispositivos Móviles
Smartphones por Phillip Wilson cbd
Imágenes en dispositivos móviles - Tablets porRaHuL Rodriguez cba
-
Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Śıntesis Lecturas Recomendadas
Computadoras Portátiles (NetBooks)
Mononúcleo-Multihilo.
La memoria principal es escalable.
El almacenamiento secundario es disco duro.
Rendimiento bajo.
Requieren muy poco espacio.
Muy bajo costo.
-
Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Śıntesis Lecturas Recomendadas
Computadoras Portátiles (NetBooks)
HP 2133 Mini-Note PC (side) por VIA Gallery cb
-
Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Śıntesis Lecturas Recomendadas
Computadoras de escritorio / Estaciones de Trabajo
Multinúcleo-Multihilo.
SMP.
La memoria principal y el almacenamiento secundario son escalables.
Tienen rendimiento medio.
Requieren más espacio para albergar los componentes, intercambian escalabilidadpor portabilidad.
Dada la escalabilidad, pueden ser de bajo a mediano costo.
-
Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Śıntesis Lecturas Recomendadas
Estaciones de Trabajo
Laptop - Anónimo zDesktop por EroticDesktops cba
-
Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Śıntesis Lecturas Recomendadas
Servidor
Multinúcleo-Multihilo
SMP y AMP
Equipos de procesamiento intensivo, atienden múltiples solicitudes al mismotiempo.
Requieren mucha memoria principal y mucho almacenamiento secundario paraprocesar todas las tareas requeridas.
Mediano consumo de enerǵıa, y soporte de corriente ininterrumpido.
Tienen rendimiento medio, similar a las estaciones de trabajo, pero con mayorescapacidades de red.
Mediano costo.
-
Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Śıntesis Lecturas Recomendadas
Servidor
Dell Power Edge Servers - Anónimo p
Server - Anónimo z
-
Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Śıntesis Lecturas Recomendadas
Cluster
Equipos distribuidos de procesamiento intensivo. Compuesto de varios servidoresque trabajan en conjunto para resolver una tarea.
Sistemas h́ıbridos AMP-SMP
Altamente escalables.
Su administración es compleja y requiere conocimientos técnicos avanzados.
Alto consumo de enerǵıa, son múltiples equipos con corriente ininterrumpida.
Alto costo.
Alto rendimiento.
Requieren mucho espacio.
-
Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Śıntesis Lecturas Recomendadas
Cluster
US NASA Columbia por Nuno Tavares p
Titan render - OakRidge p
-
Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Śıntesis Lecturas Recomendadas
Malla
Sistemas distribuidos de amplio propósito.
Se comportan como un cluster, pero su composición es más heterogénea.
Muy alto consumo de enerǵıa.
Alto costo.
Alto rendimiento.
Su administración es muy compleja ya que requiere mucha mediación y control decontingencias.
Requieren mucho espacio.
Por su naturaleza distribuida, en una malla t́ıpicamente se distribuyen los costos,el consumo de enerǵıa y el espacio requerido entre varias entidades.
Más que escalables, una malla suele ser dinámica, debe permitir agregar o separarnodos del sistema.
-
Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Śıntesis Lecturas Recomendadas
Malla
Sistema grid p
-
Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Śıntesis Lecturas Recomendadas
Enjambre
Sistemas distribuidos de bajo costo.
Utilizan múltiples equipos heterogéneos, no dedicados, de múltiples clientesvoluntarios.
Los equipos están comunicados por medio red.
El rendimiento depende de la disponibilidad de recursos de sus nodos, al no serequipos dedicados no pueden suministrar el total de la capacidad al sistema.
Su administración debe tolerar muchas contingencias y la calendarización detrabajos es más compleja que en los modelos anteriores.
Altamente dinámicos.
Ejemplo: SETI@HOME
-
Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Śıntesis Lecturas Recomendadas
Enjambre
Network por gr8effect z
-
Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Śıntesis Lecturas Recomendadas
Nube
Sistemas distribuidos de uso distribuido.
Los modelos anteriores ponen a disposición múltiples recursos para un sólo usuario,la nube conecta múltiples recursos a múltiples usuarios de forma transparente.
El usuario desconoce las caracteŕısticas del sistema, el sistema cuenta conplataformas de mediación que se encargan de brindar los recursos al usuario sinimportar las condiciones del equipo.
Son fáciles de escalar, requieren mucho mantenimiento.
Muy alto costo, consumo energético y espacio.
Ejemplos: Office 365, Dropbox, Google Drive.
-
Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Śıntesis Lecturas Recomendadas
Nube
Cloud Computing ©
-
Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Śıntesis Lecturas Recomendadas
Śıntesis.
-
Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Śıntesis Lecturas Recomendadas
Definiciones
Computadora:
Máquina de estados
Procesa datos a través de instrucciones
Instrucciones son finitas y predefinidas
Arquitectura:
Modelo conceptual
Define las instrucciones
Caracterización de las capacidades de una computadora
-
Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Śıntesis Lecturas Recomendadas
Componentes básicos
Unidad de Procesamiento Central:
CI: Ejecuta instrucciones básicas
ALU: Ejecuta operaciones aritméticas más complejas
Registros: Único acceso a datos desde el CI.
Jerarqúıa de Memoria:1 Almacenamiento Primario (Transiente):
1 Caché L1 y L2 (Memoria de trabajo)2 Memoria RAM
2 Almacenamiento secundario (Persistente):
Disco DuroCDsFlashetc...
-
Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Śıntesis Lecturas Recomendadas
Concurrencia y paralelismo
Multihilo: Varios procesos, un CI
Multinúcleo: Varios CI, una jerarqúıa de memoria
Distribuido: Varios CPU, varias jerarqúıas de memoria
UMA: Acceso coordinado a memoria, no requiere sincronización
NUMA: Acceso independiente a memoria, pueden ocurrir inconsistencias
SMP: CPUs idénticas, fácilmente intercambiables
AMP: CPUs asimétricas, es posible escalar
-
Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Śıntesis Lecturas Recomendadas
Lecturas Recomendadas.
-
Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Śıntesis Lecturas Recomendadas
Arquitectura de computadoras
Arquitectura decomputadoras por M.Morris Mano.
Arquitectura decomputadoras enWikipedia.
MIPS y RISC enWikipedia.
http://es.wikipedia.org/wiki/Arquitectura_de_computadorashttp://es.wikipedia.org/wiki/Arquitectura_de_computadorashttp://es.wikipedia.org/wiki/Arquitectura_de_computadorashttp://es.wikipedia.org/wiki/MIPS_(procesador)http://es.wikipedia.org/wiki/Reduced_instruction_set_computing
-
Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Śıntesis Lecturas Recomendadas
Enlaces a temas espećıficos en Wikipedia
SMP
AMP
UMA
NUMA
http://en.wikipedia.org/wiki/Symmetric_multiprocessinghttp://en.wikipedia.org/wiki/Asymmetric_multiprocessinghttp://en.wikipedia.org/wiki/Uniform_memory_accesshttp://en.wikipedia.org/wiki/Non-uniform_memory_access
IntroducciónComputadoraArquitecturaPartes de una arquitectura
Componentes BásicosCPUJerarquía de Memoria
Concurrencia y ParalelismoArquitecturas concurrentesArquitecturas DistribuidasMemoria compartida y Memoria distribuida
EjemplosEjemplos de arquitecturas CentralizadasEjemplos de Arquitecturas Distribuidas
SíntesisDefinicionesComponentes básicosConcurrencia y paralelismo
Lecturas RecomendadasConceptos básicosTemas avanzados