SlideShare una empresa de Scribd logo
1 de 10
Arquitectura del Computador
Profesora: Yorgely Sánchez
Bachiller: José Ruiz 26.372.141
Laboratorio “E”
Paralelismo A Nivel De Instrucción
I
Introducción al paralelismo a nivel
de instrucción:
Introduce el concepto de
arquitectura segmentada,
presentando como caso practicó
el diseño de un procesador
básico de cinco Etapas. También
introduce el concepto de riesgo
y realiza una clasificación de los
distintos tipos. Así mismo,
presenta el concepto de
operación multiciclo.
Explotación del paralelismo a nivel
de instrucción:
Presenta diversos aspectos de la
explotación de las arquitectura
segmentadas como la planificación y des
enrollamiento de bucles.
También presta especial atención a las
técnicas de predicción de saltos. Otros
aspectos a los que se prestan atención son
las técnicas de emisión múltiple y las
limitaciones del paralelismo a nivel de
instrucción. Finalmente se Introduce el
concepto de paralelismo a nivel del hilo.
Este modulo esta estructurado en dos Lecciones:
Introducción al paralelismo a nivel de Instrucción:
Esta lección tiene la siguiente estructura General:
Introducción a la segmentación:
La segmentación (pipelining) es una técnica de
implementación que se basa en dividir la ejecución de
cada instrucción en varias etapas. Esta técnica no
afecta (o afecta mínimamente) a la latencia de
cada instrucción, pero permite incrementar el puesto
que permite analizar (idealmente) una instrucción por
ciclo.
En el material puede observar los detalles de diseño
de un procesador segmentado simplificado de 5
etapas:
1.
1.Captación (Instrucción Fetch IF).
Lectura de instrucción y
actualización del registro contador
de programa
2.Decodificación (Instruction
Decode, ID). Decodi,cación de la
instrucción, lectura de registros,
extensión de signo de
desplazamientos y cálculo de
posible dirección de salto.
4.Memoria
(Memoria, M).
Lectura o escritura
en memoria
Post-escritura (Write-back,
WB). Escritura de resultado
en el banco de registros.
3.Ejecución (Execution ,EX).
Operación de ALU sobre
registros y cálculo de
dirección efectiva de salto
Riesgos a nivel
de Instrucción :
Riesgo es una situación que impide que la siguiente instrucción
pueda comenzar en el ciclo de
reloj previsto. Estas situaciones reducen el rendimiento de las
arquitecturas segmentadas. Los riesgos
pueden ser de tres tipos: estructurales, de datos o de control.
La aproximación más simple y menos consiste en detener el de
instrucciones hasta que se elimina el riesgo.
Los riesgos estructurales se producen cuando el hardware no
puede soportar todas las posibles
secuencias de instrucciones. Esto se produce si dos etapas
necesitan hacer uso del mismo recurso hardware.
Las razones suelen ser la presencia de unidades funcionales
que no están totalmente segmentadas
o unidades funcionales no duplicadas. En general, los riesgos
estructurales se pueden evitar en el diseño
pero encarecen el hardware resultante.
Operaciones
multiciclos:
La asignación de un único ciclo a
las operaciones de coma requiere
un ciclo de reloj extremadamente
largo o el uso de una lógica de
coma muy compleja (con el
consiguiente consumo de
recursos). La alternativa a estas
opciones es la segmentación de la
unidad de coma por lo que estas
instrucciones requerirán múltiples
ciclos en la etapa de ejecución.
Explotación
del
paralelismo a
nivel de
instrucción
1. Técnicas de
compilación e ILP.
2. Técnicas avanzadas
de predicción de salto.
3. Introducción a la
planificación dinámica.
4. Especulación.
5. Técnicas de emisión
múltiple.
6. Límites del ILP.
7. Paralelismo a nivel de
hilo.
Paralelismo de datos
Es un paradigma de la programación
concurrente que consiste en subdividir el conjunto de
datos de entrada a un programa, de manera que a
cada procesador le corresponda un subconjunto de
esos datos. Cada procesador efectuará la misma
secuencia de operaciones que los otros procesadores
sobre su subconjunto de datos asignado. En
resumen: se distribuyen los datos y se replican las
tareas.
Idealmente, esta ejecución simultánea de
operaciones, resulta en una aceleración neta global
del cómputo.
El paralelismo de datos es un paradigma
suficientemente adecuado para operaciones sobre
vectores y matrices, dado que muchas de ellas
consisten en aplicar la misma operación sobre cada
uno de sus elementos.
Multimedia “publicitario”. Más correcto:
Arquitecturas SIMD (Single Instrucción Múltiple
Data) o de paralelismo de datos DLP (Data Leve
Paralelismo) en lugar de ILP. Vectores/Matrices
igual operación sobre múltiples elementos
Código científico y multimedia (procesamiento
imágenes, sonido, etc.)
Introducción: Aplicaciones
científicas y multimedia
Arquitecturas vectoriales
segmentadas clásicas
Hacen Años 70 Arquitecturas Vectoriales
(supercomputadores, Ej: CRAY). • Sólo existían
programas de Problemas científico-técnicos
Procesador Vectorial: Registros e Instrucciones
Vectoriales o Múltiples datos por registros (ej.
256 doublés: 2KB cada registro!!! ) o
instrucciones que operan sobre registros
completos. Ingeniosas cadenas (pipeline) para
operar con elemento de registro vectorial Tb
existían operaciones entre vectoriales y
escalares Tb registros especiales de control del
número de elemento (iteraciones) Ej. DAXPY en
ensamblador vectorial: LDV VX,(RX) LDV VY,(RY)
MULDV VX,VA,VX //previamente se replicó la
cte ‘a’ en VA ADDDV VX,VX,VY SDV (RY),VX
Taxonomía de Flynn
En 1966 Michael Flynn
propuso un mecanismo de
clasificación de las
computadoras. El método de
Flynn se basa en el número de
instrucciones y de la secuencia
de datos que la computadora
utiliza para procesar
información. Puede haber
secuencias de instrucciones
sencillas o múltiples y
secuencias de datos sencillas o
múltiples. Esto da lugar a 4
tipos de computadoras, de las
cuales solamente dos son
aplicables a las computadoras
paralelas. Esquema de la
Taxonomía de Flynn
Michael Flynn
Una instrucción, un
dato (SISD)
En computación, SISD (del inglés
Single Instrucción, Single Data, en
español: "una instrucción, un dato")
es un término que se refiere a una
arquitectura computacional en la que
un único procesador ejecuta un sólo
flujo de instrucciones, para operar
sobre datos almacenados en una
única memoria. Se corresponde con la
arquitectura de Von Neumann.
Según Michael J. Flynn, SISD puede
tener características del
procesamiento concurrente. La carga
de instrucciones y la ejecución
segmentada de instrucciones son
ejemplos comunes encontrados en las
computadoras SISD más modernas.
Características
*.La CPU procesa
únicamente una
instrucción por cada ciclo
de reloj
*.Únicamente un dato es
procesado en cada ciclo de
reloj
*.Es el modelo más
antiguo de computadora y
el más extendido
Múltiples instrucciones, un dato
(MISD):
Es una técnica empleada para
conseguir paralelismo a nivel de
datos.
Los repertorios SIMD consisten en
instrucciones que aplican una misma
operación sobre un conjunto más o
menos grande de datos. Es una
organización en donde una única
unidad de control común despacha
las instrucciones a diferentes
unidades de procesamiento. Todas
éstas reciben la misma instrucción,
pero operan sobre diferentes
conjuntos de datos. Es decir, la
misma instrucción es ejecutada de
manera sincronizada por todas las
unidades de procesamiento.
Características del modelo SIMD:
*.Todas las unidades ejecutan la misma
instrucción.
*.Cada unidad procesa un dato distinto.
*.Todas las unidades operan
simultáneamente.
Múltiples instrucciones,
múltiples datos (MIMD):
Es una técnica empleada para lograr paralelismo. Las
máquinas que usan MIMD tienen un número de
procesadores que funcionan de manera asíncrona e
independiente. En cualquier momento, cualquier
procesador puede ejecutar diferentes instrucciones sobre
distintos datos. La arquitectura MIMD pueden utilizarse en
una amplia gama de aplicaciones como el diseño asistido,
simulación, modelado y en interruptores. Las
computadoras MIMD pueden categorizarse por tener
memoria compartida o distribuida, clasificación que se
basa en cómo el procesador MIMD accede a la memoria.
La memoria compartida de las máquinas puede estar
basada en buses, extensiones, o de tipo jerárquico. Las
máquinas con memoria distribuida pueden tener
esquemas de interconexión en hipercubo o malla
Arquitectura de Memoria de
computación Paralela
La computación paralela es una forma de cómputo en la que muchas instrucciones se ejecutan simultáneamente, 1
operando sobre el principio de que problemas grandes, a menudo se pueden dividir en unos más pequeños, que luego
son resueltos simultáneamente (en paralelo). Hay varias formas diferentes de computación paralela: paralelismo a nivel
de bit, paralelismo a nivel de instrucción, paralelismo de datos y paralelismo de tareas. El paralelismo se ha empleado
durante muchos años, sobre todo en la computación de altas prestaciones, pero el interés en ella ha crecido
últimamente debido a las limitaciones físicas que impiden el aumento de la frecuencia. 12Como el consumo de energía y
por consiguiente la generación de calor de las computadoras constituye una preocupación en los últimos años. 23 la
computación en paralelo se ha convertido en el paradigma dominante en la arquitectura de computadores,
principalmente en forma de procesadores multinúcleo.n. 34
Un gabinete de Blue Gene/L,
clasificado como el cuarto mejor
superordenador del mundo de
acuerdo a la clasificación
TOP500 en 11/2008. Blue Gene/L
es un procesador masivamente
paralelo.
Lenguajes de programación en paralelo
Los lenguajes de programación concurrentes, bibliotecas, APIs y modelos de programación paralela han sido creados
para la programación de computadores paralelos. Estos generalmente se pueden dividir en clases basadas en las
suposiciones que se hacen sobre la arquitectura de memoria subyacente: compartida, distribuida, o compartida-
distribuida. Los lenguajes de programación de memoria compartida se comunican mediante la manipulación de
variables en la memoria compartida. En la arquitectura con memoria distribuida se utiliza el paso de mensajes. POSIX
Threads y OpenMP son dos de las API más utilizadas con la memoria compartida, mientras que Message Passing
Interface (MPI) «Interfaz de Paso de Mensajes» es el API más utilizado en los sistemas de paso de mensajes.n. 639 El
concepto «valor futuro» es muy utilizado en la programación de programas paralelos, donde una parte de un programa
promete proporcionar un dato requerido a otra parte del programa en un tiempo futuro.
Línea de Tiempo del Procesador Intel o
AMD.
Línea de Tiempo del
Procesador Intel o AMD:
A CONTINUACIÓN SE
MUESTRAN LOS
PROCESADORES MAS
COMUNES DE INTEL Y
AMD
AMD Sempron-2004
AMD Athlon 64- 2006
AMD ATHLON 64- 2008
es el nombre de una línea
de microprocesadores
x86 y x86-64 de Intel,
anteriormente
denominados. Están
diseñados para un
proceso de fabricación de
45 nm CMOS y
destinados a utilizarse en
dispositivos móviles de
Internet
AMD DURON SPITFIRE-
200

Más contenido relacionado

La actualidad más candente

Arquitectura de von neumann
Arquitectura de von neumannArquitectura de von neumann
Arquitectura de von neumannrosa_flores
 
Arquitectura de Von Neumann
Arquitectura de Von NeumannArquitectura de Von Neumann
Arquitectura de Von Neumannvictor medra
 
Resumen del primer corte
Resumen del primer corteResumen del primer corte
Resumen del primer corteADOLFO BORJA
 
Arquitectura de computadoras
Arquitectura de computadorasArquitectura de computadoras
Arquitectura de computadorascamiche97
 
Arquitectura de Von Newmann
Arquitectura de Von Newmann Arquitectura de Von Newmann
Arquitectura de Von Newmann Wilfredo Chavez
 
Mapa conceptual computacion paralela
Mapa conceptual   computacion paralelaMapa conceptual   computacion paralela
Mapa conceptual computacion paralelaEduardo Suarez
 
Arqutecturas harvrd, von newman y risc
Arqutecturas harvrd, von newman y riscArqutecturas harvrd, von newman y risc
Arqutecturas harvrd, von newman y riscesteabn1426
 
Introducción a la programación paralela
Introducción a la programación paralelaIntroducción a la programación paralela
Introducción a la programación paralelafmayosi
 
1 planificacion procesos
1 planificacion procesos1 planificacion procesos
1 planificacion procesoskeytaro21
 

La actualidad más candente (18)

Arquitecturas del computador
Arquitecturas del computadorArquitecturas del computador
Arquitecturas del computador
 
Arquitectura von newman
Arquitectura von newmanArquitectura von newman
Arquitectura von newman
 
Tarea 1.1
Tarea 1.1Tarea 1.1
Tarea 1.1
 
Segmentación
SegmentaciónSegmentación
Segmentación
 
Arquitectura de von neumann
Arquitectura de von neumannArquitectura de von neumann
Arquitectura de von neumann
 
Arquitectura de Von Neumann
Arquitectura de Von NeumannArquitectura de Von Neumann
Arquitectura de Von Neumann
 
Resumen del primer corte
Resumen del primer corteResumen del primer corte
Resumen del primer corte
 
Arquitectura de computadoras
Arquitectura de computadorasArquitectura de computadoras
Arquitectura de computadoras
 
Arquitectura harvard y von neumann
Arquitectura harvard y von neumannArquitectura harvard y von neumann
Arquitectura harvard y von neumann
 
arquitectura Von Newmann
arquitectura Von Newmannarquitectura Von Newmann
arquitectura Von Newmann
 
arquitectura von newmann
arquitectura von newmannarquitectura von newmann
arquitectura von newmann
 
Arquitectura de Von Newmann
Arquitectura de Von Newmann Arquitectura de Von Newmann
Arquitectura de Von Newmann
 
Mapa conceptual computacion paralela
Mapa conceptual   computacion paralelaMapa conceptual   computacion paralela
Mapa conceptual computacion paralela
 
Computacion paralela
Computacion paralelaComputacion paralela
Computacion paralela
 
Arqutecturas harvrd, von newman y risc
Arqutecturas harvrd, von newman y riscArqutecturas harvrd, von newman y risc
Arqutecturas harvrd, von newman y risc
 
Introducción a la programación paralela
Introducción a la programación paralelaIntroducción a la programación paralela
Introducción a la programación paralela
 
Arqui hardware
Arqui hardwareArqui hardware
Arqui hardware
 
1 planificacion procesos
1 planificacion procesos1 planificacion procesos
1 planificacion procesos
 

Similar a Arquitectura Computadoras Paralelas

Similar a Arquitectura Computadoras Paralelas (20)

arquitectura del computador
arquitectura del computador arquitectura del computador
arquitectura del computador
 
Investigacion 1 modelos_de_arquitectura
Investigacion 1 modelos_de_arquitecturaInvestigacion 1 modelos_de_arquitectura
Investigacion 1 modelos_de_arquitectura
 
arquitectura del computador 1
arquitectura del computador 1arquitectura del computador 1
arquitectura del computador 1
 
arquitectura del computador
arquitectura del computador arquitectura del computador
arquitectura del computador
 
Arquitectura tipos lupe
Arquitectura tipos lupeArquitectura tipos lupe
Arquitectura tipos lupe
 
Unidad 1
Unidad 1Unidad 1
Unidad 1
 
Procesamiento segmentado - INFORME
Procesamiento segmentado - INFORMEProcesamiento segmentado - INFORME
Procesamiento segmentado - INFORME
 
ARQUITECTURA_DE_COMPUTADORAS.pdf
ARQUITECTURA_DE_COMPUTADORAS.pdfARQUITECTURA_DE_COMPUTADORAS.pdf
ARQUITECTURA_DE_COMPUTADORAS.pdf
 
Fabianm
FabianmFabianm
Fabianm
 
Categotias de sistemas operativo
Categotias de sistemas operativoCategotias de sistemas operativo
Categotias de sistemas operativo
 
News40 Parallel Computing
News40 Parallel ComputingNews40 Parallel Computing
News40 Parallel Computing
 
Categoria de sistemas operativos
Categoria de sistemas operativosCategoria de sistemas operativos
Categoria de sistemas operativos
 
Alberto Perojo Multi Core
Alberto Perojo  Multi CoreAlberto Perojo  Multi Core
Alberto Perojo Multi Core
 
Libro Matlab Web
Libro Matlab WebLibro Matlab Web
Libro Matlab Web
 
Category
CategoryCategory
Category
 
Sistemas Operativos
Sistemas OperativosSistemas Operativos
Sistemas Operativos
 
Hilo de ejecución
Hilo de ejecuciónHilo de ejecución
Hilo de ejecución
 
ARQUITECTURAS PARALELAS
ARQUITECTURAS PARALELASARQUITECTURAS PARALELAS
ARQUITECTURAS PARALELAS
 
Diseño de Algoritmos Paralelos.pptx
Diseño de Algoritmos Paralelos.pptxDiseño de Algoritmos Paralelos.pptx
Diseño de Algoritmos Paralelos.pptx
 
Arquitecturas de computadores_avanzadas
Arquitecturas de computadores_avanzadasArquitecturas de computadores_avanzadas
Arquitecturas de computadores_avanzadas
 

Último

Sesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO CersaSesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO CersaXimenaFallaLecca1
 
ECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdfECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdfmatepura
 
CAPITULO 4 ANODIZADO DE ALUMINIO ,OBTENCION Y PROCESO
CAPITULO 4 ANODIZADO DE ALUMINIO ,OBTENCION Y PROCESOCAPITULO 4 ANODIZADO DE ALUMINIO ,OBTENCION Y PROCESO
CAPITULO 4 ANODIZADO DE ALUMINIO ,OBTENCION Y PROCESOLUISDAVIDVIZARRETARA
 
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdfECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdffredyflores58
 
aCARGA y FUERZA UNI 19 marzo 2024-22.ppt
aCARGA y FUERZA UNI 19 marzo 2024-22.pptaCARGA y FUERZA UNI 19 marzo 2024-22.ppt
aCARGA y FUERZA UNI 19 marzo 2024-22.pptCRISTOFERSERGIOCANAL
 
01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt
01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt
01 MATERIALES AERONAUTICOS VARIOS clase 1.pptoscarvielma45
 
clases de porcinos generales de porcinos
clases de porcinos generales de porcinosclases de porcinos generales de porcinos
clases de porcinos generales de porcinosDayanaCarolinaAP
 
Quimica Raymond Chang 12va Edicion___pdf
Quimica Raymond Chang 12va Edicion___pdfQuimica Raymond Chang 12va Edicion___pdf
Quimica Raymond Chang 12va Edicion___pdfs7yl3dr4g0n01
 
desarrollodeproyectoss inge. industrial
desarrollodeproyectoss  inge. industrialdesarrollodeproyectoss  inge. industrial
desarrollodeproyectoss inge. industrialGibranDiaz7
 
PPT ELABORARACION DE ADOBES 2023 (1).pdf
PPT ELABORARACION DE ADOBES 2023 (1).pdfPPT ELABORARACION DE ADOBES 2023 (1).pdf
PPT ELABORARACION DE ADOBES 2023 (1).pdfalexquispenieto2
 
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptMarianoSanchez70
 
Controladores Lógicos Programables Usos y Ventajas
Controladores Lógicos Programables Usos y VentajasControladores Lógicos Programables Usos y Ventajas
Controladores Lógicos Programables Usos y Ventajasjuanprv
 
Clase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVIL
Clase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVILClase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVIL
Clase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVILProblemSolved
 
Comite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptxComite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptxClaudiaPerez86192
 
Mapas y cartas topográficas y de suelos.pptx
Mapas y cartas topográficas y de suelos.pptxMapas y cartas topográficas y de suelos.pptx
Mapas y cartas topográficas y de suelos.pptxMONICADELROCIOMUNZON1
 
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023COMPEDIOS ESTADISTICOS DE PERU EN EL 2023
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023RonaldoPaucarMontes
 
Manual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfManual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfedsonzav8
 
nomenclatura de equipo electrico en subestaciones
nomenclatura de equipo electrico en subestacionesnomenclatura de equipo electrico en subestaciones
nomenclatura de equipo electrico en subestacionesCarlosMeraz16
 
tema05 estabilidad en barras mecanicas.pdf
tema05 estabilidad en barras mecanicas.pdftema05 estabilidad en barras mecanicas.pdf
tema05 estabilidad en barras mecanicas.pdfvictoralejandroayala2
 
CALCULO DE ENGRANAJES RECTOS SB-2024.pptx
CALCULO DE ENGRANAJES RECTOS SB-2024.pptxCALCULO DE ENGRANAJES RECTOS SB-2024.pptx
CALCULO DE ENGRANAJES RECTOS SB-2024.pptxCarlosGabriel96
 

Último (20)

Sesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO CersaSesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
 
ECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdfECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdf
 
CAPITULO 4 ANODIZADO DE ALUMINIO ,OBTENCION Y PROCESO
CAPITULO 4 ANODIZADO DE ALUMINIO ,OBTENCION Y PROCESOCAPITULO 4 ANODIZADO DE ALUMINIO ,OBTENCION Y PROCESO
CAPITULO 4 ANODIZADO DE ALUMINIO ,OBTENCION Y PROCESO
 
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdfECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
 
aCARGA y FUERZA UNI 19 marzo 2024-22.ppt
aCARGA y FUERZA UNI 19 marzo 2024-22.pptaCARGA y FUERZA UNI 19 marzo 2024-22.ppt
aCARGA y FUERZA UNI 19 marzo 2024-22.ppt
 
01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt
01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt
01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt
 
clases de porcinos generales de porcinos
clases de porcinos generales de porcinosclases de porcinos generales de porcinos
clases de porcinos generales de porcinos
 
Quimica Raymond Chang 12va Edicion___pdf
Quimica Raymond Chang 12va Edicion___pdfQuimica Raymond Chang 12va Edicion___pdf
Quimica Raymond Chang 12va Edicion___pdf
 
desarrollodeproyectoss inge. industrial
desarrollodeproyectoss  inge. industrialdesarrollodeproyectoss  inge. industrial
desarrollodeproyectoss inge. industrial
 
PPT ELABORARACION DE ADOBES 2023 (1).pdf
PPT ELABORARACION DE ADOBES 2023 (1).pdfPPT ELABORARACION DE ADOBES 2023 (1).pdf
PPT ELABORARACION DE ADOBES 2023 (1).pdf
 
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
 
Controladores Lógicos Programables Usos y Ventajas
Controladores Lógicos Programables Usos y VentajasControladores Lógicos Programables Usos y Ventajas
Controladores Lógicos Programables Usos y Ventajas
 
Clase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVIL
Clase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVILClase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVIL
Clase 7 MECÁNICA DE FLUIDOS 2 INGENIERIA CIVIL
 
Comite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptxComite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptx
 
Mapas y cartas topográficas y de suelos.pptx
Mapas y cartas topográficas y de suelos.pptxMapas y cartas topográficas y de suelos.pptx
Mapas y cartas topográficas y de suelos.pptx
 
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023COMPEDIOS ESTADISTICOS DE PERU EN EL 2023
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023
 
Manual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfManual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdf
 
nomenclatura de equipo electrico en subestaciones
nomenclatura de equipo electrico en subestacionesnomenclatura de equipo electrico en subestaciones
nomenclatura de equipo electrico en subestaciones
 
tema05 estabilidad en barras mecanicas.pdf
tema05 estabilidad en barras mecanicas.pdftema05 estabilidad en barras mecanicas.pdf
tema05 estabilidad en barras mecanicas.pdf
 
CALCULO DE ENGRANAJES RECTOS SB-2024.pptx
CALCULO DE ENGRANAJES RECTOS SB-2024.pptxCALCULO DE ENGRANAJES RECTOS SB-2024.pptx
CALCULO DE ENGRANAJES RECTOS SB-2024.pptx
 

Arquitectura Computadoras Paralelas

  • 1. Arquitectura del Computador Profesora: Yorgely Sánchez Bachiller: José Ruiz 26.372.141 Laboratorio “E”
  • 2. Paralelismo A Nivel De Instrucción I Introducción al paralelismo a nivel de instrucción: Introduce el concepto de arquitectura segmentada, presentando como caso practicó el diseño de un procesador básico de cinco Etapas. También introduce el concepto de riesgo y realiza una clasificación de los distintos tipos. Así mismo, presenta el concepto de operación multiciclo. Explotación del paralelismo a nivel de instrucción: Presenta diversos aspectos de la explotación de las arquitectura segmentadas como la planificación y des enrollamiento de bucles. También presta especial atención a las técnicas de predicción de saltos. Otros aspectos a los que se prestan atención son las técnicas de emisión múltiple y las limitaciones del paralelismo a nivel de instrucción. Finalmente se Introduce el concepto de paralelismo a nivel del hilo. Este modulo esta estructurado en dos Lecciones:
  • 3. Introducción al paralelismo a nivel de Instrucción: Esta lección tiene la siguiente estructura General: Introducción a la segmentación: La segmentación (pipelining) es una técnica de implementación que se basa en dividir la ejecución de cada instrucción en varias etapas. Esta técnica no afecta (o afecta mínimamente) a la latencia de cada instrucción, pero permite incrementar el puesto que permite analizar (idealmente) una instrucción por ciclo. En el material puede observar los detalles de diseño de un procesador segmentado simplificado de 5 etapas: 1. 1.Captación (Instrucción Fetch IF). Lectura de instrucción y actualización del registro contador de programa 2.Decodificación (Instruction Decode, ID). Decodi,cación de la instrucción, lectura de registros, extensión de signo de desplazamientos y cálculo de posible dirección de salto. 4.Memoria (Memoria, M). Lectura o escritura en memoria Post-escritura (Write-back, WB). Escritura de resultado en el banco de registros. 3.Ejecución (Execution ,EX). Operación de ALU sobre registros y cálculo de dirección efectiva de salto
  • 4. Riesgos a nivel de Instrucción : Riesgo es una situación que impide que la siguiente instrucción pueda comenzar en el ciclo de reloj previsto. Estas situaciones reducen el rendimiento de las arquitecturas segmentadas. Los riesgos pueden ser de tres tipos: estructurales, de datos o de control. La aproximación más simple y menos consiste en detener el de instrucciones hasta que se elimina el riesgo. Los riesgos estructurales se producen cuando el hardware no puede soportar todas las posibles secuencias de instrucciones. Esto se produce si dos etapas necesitan hacer uso del mismo recurso hardware. Las razones suelen ser la presencia de unidades funcionales que no están totalmente segmentadas o unidades funcionales no duplicadas. En general, los riesgos estructurales se pueden evitar en el diseño pero encarecen el hardware resultante. Operaciones multiciclos: La asignación de un único ciclo a las operaciones de coma requiere un ciclo de reloj extremadamente largo o el uso de una lógica de coma muy compleja (con el consiguiente consumo de recursos). La alternativa a estas opciones es la segmentación de la unidad de coma por lo que estas instrucciones requerirán múltiples ciclos en la etapa de ejecución. Explotación del paralelismo a nivel de instrucción 1. Técnicas de compilación e ILP. 2. Técnicas avanzadas de predicción de salto. 3. Introducción a la planificación dinámica. 4. Especulación. 5. Técnicas de emisión múltiple. 6. Límites del ILP. 7. Paralelismo a nivel de hilo.
  • 5. Paralelismo de datos Es un paradigma de la programación concurrente que consiste en subdividir el conjunto de datos de entrada a un programa, de manera que a cada procesador le corresponda un subconjunto de esos datos. Cada procesador efectuará la misma secuencia de operaciones que los otros procesadores sobre su subconjunto de datos asignado. En resumen: se distribuyen los datos y se replican las tareas. Idealmente, esta ejecución simultánea de operaciones, resulta en una aceleración neta global del cómputo. El paralelismo de datos es un paradigma suficientemente adecuado para operaciones sobre vectores y matrices, dado que muchas de ellas consisten en aplicar la misma operación sobre cada uno de sus elementos. Multimedia “publicitario”. Más correcto: Arquitecturas SIMD (Single Instrucción Múltiple Data) o de paralelismo de datos DLP (Data Leve Paralelismo) en lugar de ILP. Vectores/Matrices igual operación sobre múltiples elementos Código científico y multimedia (procesamiento imágenes, sonido, etc.) Introducción: Aplicaciones científicas y multimedia Arquitecturas vectoriales segmentadas clásicas Hacen Años 70 Arquitecturas Vectoriales (supercomputadores, Ej: CRAY). • Sólo existían programas de Problemas científico-técnicos Procesador Vectorial: Registros e Instrucciones Vectoriales o Múltiples datos por registros (ej. 256 doublés: 2KB cada registro!!! ) o instrucciones que operan sobre registros completos. Ingeniosas cadenas (pipeline) para operar con elemento de registro vectorial Tb existían operaciones entre vectoriales y escalares Tb registros especiales de control del número de elemento (iteraciones) Ej. DAXPY en ensamblador vectorial: LDV VX,(RX) LDV VY,(RY) MULDV VX,VA,VX //previamente se replicó la cte ‘a’ en VA ADDDV VX,VX,VY SDV (RY),VX
  • 6. Taxonomía de Flynn En 1966 Michael Flynn propuso un mecanismo de clasificación de las computadoras. El método de Flynn se basa en el número de instrucciones y de la secuencia de datos que la computadora utiliza para procesar información. Puede haber secuencias de instrucciones sencillas o múltiples y secuencias de datos sencillas o múltiples. Esto da lugar a 4 tipos de computadoras, de las cuales solamente dos son aplicables a las computadoras paralelas. Esquema de la Taxonomía de Flynn Michael Flynn Una instrucción, un dato (SISD) En computación, SISD (del inglés Single Instrucción, Single Data, en español: "una instrucción, un dato") es un término que se refiere a una arquitectura computacional en la que un único procesador ejecuta un sólo flujo de instrucciones, para operar sobre datos almacenados en una única memoria. Se corresponde con la arquitectura de Von Neumann. Según Michael J. Flynn, SISD puede tener características del procesamiento concurrente. La carga de instrucciones y la ejecución segmentada de instrucciones son ejemplos comunes encontrados en las computadoras SISD más modernas. Características *.La CPU procesa únicamente una instrucción por cada ciclo de reloj *.Únicamente un dato es procesado en cada ciclo de reloj *.Es el modelo más antiguo de computadora y el más extendido
  • 7. Múltiples instrucciones, un dato (MISD): Es una técnica empleada para conseguir paralelismo a nivel de datos. Los repertorios SIMD consisten en instrucciones que aplican una misma operación sobre un conjunto más o menos grande de datos. Es una organización en donde una única unidad de control común despacha las instrucciones a diferentes unidades de procesamiento. Todas éstas reciben la misma instrucción, pero operan sobre diferentes conjuntos de datos. Es decir, la misma instrucción es ejecutada de manera sincronizada por todas las unidades de procesamiento. Características del modelo SIMD: *.Todas las unidades ejecutan la misma instrucción. *.Cada unidad procesa un dato distinto. *.Todas las unidades operan simultáneamente. Múltiples instrucciones, múltiples datos (MIMD): Es una técnica empleada para lograr paralelismo. Las máquinas que usan MIMD tienen un número de procesadores que funcionan de manera asíncrona e independiente. En cualquier momento, cualquier procesador puede ejecutar diferentes instrucciones sobre distintos datos. La arquitectura MIMD pueden utilizarse en una amplia gama de aplicaciones como el diseño asistido, simulación, modelado y en interruptores. Las computadoras MIMD pueden categorizarse por tener memoria compartida o distribuida, clasificación que se basa en cómo el procesador MIMD accede a la memoria. La memoria compartida de las máquinas puede estar basada en buses, extensiones, o de tipo jerárquico. Las máquinas con memoria distribuida pueden tener esquemas de interconexión en hipercubo o malla
  • 8. Arquitectura de Memoria de computación Paralela La computación paralela es una forma de cómputo en la que muchas instrucciones se ejecutan simultáneamente, 1 operando sobre el principio de que problemas grandes, a menudo se pueden dividir en unos más pequeños, que luego son resueltos simultáneamente (en paralelo). Hay varias formas diferentes de computación paralela: paralelismo a nivel de bit, paralelismo a nivel de instrucción, paralelismo de datos y paralelismo de tareas. El paralelismo se ha empleado durante muchos años, sobre todo en la computación de altas prestaciones, pero el interés en ella ha crecido últimamente debido a las limitaciones físicas que impiden el aumento de la frecuencia. 12Como el consumo de energía y por consiguiente la generación de calor de las computadoras constituye una preocupación en los últimos años. 23 la computación en paralelo se ha convertido en el paradigma dominante en la arquitectura de computadores, principalmente en forma de procesadores multinúcleo.n. 34 Un gabinete de Blue Gene/L, clasificado como el cuarto mejor superordenador del mundo de acuerdo a la clasificación TOP500 en 11/2008. Blue Gene/L es un procesador masivamente paralelo. Lenguajes de programación en paralelo Los lenguajes de programación concurrentes, bibliotecas, APIs y modelos de programación paralela han sido creados para la programación de computadores paralelos. Estos generalmente se pueden dividir en clases basadas en las suposiciones que se hacen sobre la arquitectura de memoria subyacente: compartida, distribuida, o compartida- distribuida. Los lenguajes de programación de memoria compartida se comunican mediante la manipulación de variables en la memoria compartida. En la arquitectura con memoria distribuida se utiliza el paso de mensajes. POSIX Threads y OpenMP son dos de las API más utilizadas con la memoria compartida, mientras que Message Passing Interface (MPI) «Interfaz de Paso de Mensajes» es el API más utilizado en los sistemas de paso de mensajes.n. 639 El concepto «valor futuro» es muy utilizado en la programación de programas paralelos, donde una parte de un programa promete proporcionar un dato requerido a otra parte del programa en un tiempo futuro.
  • 9. Línea de Tiempo del Procesador Intel o AMD.
  • 10. Línea de Tiempo del Procesador Intel o AMD: A CONTINUACIÓN SE MUESTRAN LOS PROCESADORES MAS COMUNES DE INTEL Y AMD AMD Sempron-2004 AMD Athlon 64- 2006 AMD ATHLON 64- 2008 es el nombre de una línea de microprocesadores x86 y x86-64 de Intel, anteriormente denominados. Están diseñados para un proceso de fabricación de 45 nm CMOS y destinados a utilizarse en dispositivos móviles de Internet AMD DURON SPITFIRE- 200