SlideShare uma empresa Scribd logo
1 de 57
Capítulo 8: Computación paralela en ambientes heterogéneos Alumno: Francisco Albert Albusac Ingeniería de Telecomunicación
¿Por qué un tema 8?
Diferentes sistemas cooperan a la hora de realizar una tarea con la máxima eficacia, sin embargo… estos tienen características diferentes (distinto rendimiento) ¿Cómo obtener entonces un buen rendimiento? Existen sistemas heterogéneos dedicados y no dedicados
La representación interna de datos: Sobrecarga asociada a la conversión de los datos durante el intercambio de mensajes entre máquinas. Problemas en algoritmos de tipo numérico que demandan una alta precisión.   Ejemplo: clusters que combinan arquitecturas de 32/64 bits.
La memoria: cuando las cantidades de memoria disponibles en cada máquina no son las mismas o aún siendo las mismas, puede haber diferencias en algunos niveles de la jerarquía de memoria.
La red: diferentes capacidades de comunicación que tienen los distintos procesadores. Ts tw El envío de n datos punto a punto entre dos procesadores puede ser modelado mediante la fórmula: tcom=tsi,j+twi,j n
El programa: Una forma de caracterizarlo es mediante los tipos de bucles existentes: Bucles homogéneos o regulares: el número de operaciones por iteración es siempre el mismo y los procesadores realizan siempre la misma cantidad de trabajo. Bucles heterogéneos o irregulares: el número de operaciones por iteración puede variar de una iteración a otra.
El software base: En un sistema paralelo se pueden encontrar diferencias en: Los sistemas operativos de las máquinas. En el sistema de archivos. En la comunicación entre procesos. En los compiladores y lenguajes disponibles, etc.
Solución Se asigna trabajo a cada sistema en función de sus características   9
Los beneficios que se obtienen: Proporciona un mecanismo de colaboracióntransparente entre gruposdispersos, tanto científicos comocomerciales. - Posibilita el funcionamiento de aplicacionesa gran escala. - Facilita el acceso a recursos distribuidosdesde nuestros PCs.
Servicios requeridos: servicio de autenticación servicio de autorización servicio de acceso a datos remotos servicio de caracterización servicios de monitorización servicio de planificación de los recursos
Planificación de trabajos: Proceso de toma dedecisiones que tienen que ver con recursos sobre múltiples dominios administrativos Los planificadores grid tienen que tomar decisiones basándose en la información de la que disponen Selección de recursos (a veces denominada como descubrimiento derecursos), Aasignación de los trabajos a estos recursos ( resource mapping o matching) Etapas de planificación: Descubrimiento derecursos Selección de losmejores recursos Reserva Eejecución deltrabajo
Ejemplo 1 GRID: LHC (CERN)- ¿QUE ES EL LHC? LHC: es una red mundial que conecta miles de universidades y centros de investigación de todo el mundo, y que permitirá distribuir toda esta información a los 7 mil físicos que conforman la red. Se envian datos provenientes de 150 millones de sensores, los cuales estudian 600 millones de colisiones de protones por segundo Se generan 15 millones de GB por año. ¿Cómo harán los físicos para analizar toda esta información? Divide y venceras-> grid ¿SE NECESITAN TANTOS GIGABYTES PARA DESCRIBIR UN  EXPERIMENTO DONDE SOLO INTERVIENEN DOS PARTICULAS?
Ejemplo 1 GRID: LHC (CERN)- ¿QUE ES EL LHC?
Ejemplo 1 GRID: LHC (CERN)-MODUS OPERANDI ,[object Object]
Tier 1, es decir, los servidores de mayor rango, son 9: AOL, AT&T, Global Crossing, Level3, Verizon Business, NTT Communications, Qwest, Cogent, SAVIS y SprintLink
Éstos, a su a vez, distribuyen la información a más de 150 Tier 2, y de ahí la información pasa a los físicos
Tier 0, que viene a ser el CERN Computer Center, que distribuye a su vez información a once Tier 1, localizados en América, Asia y Europa.. ,[object Object]
Ejemplo 2: SETI@HOME
Ejemplo 3: BOINC (http://boinc.berkeley.edu) Boinc es un programa que te permite donar tiempo de inactividad de su ordenador a proyectos como SETI@HOME ClimatePrediction Rosetta@home WorldcommunityGrid Muchos otros Despues de instalar BOINC puedes unir tu ordenador a tantos de dichos proyectos como quiera MULTIPLES VERSIONES PARA SISTEMAS OPERATIVOS. ESPECIAL INTERES AQUELLAS VERSIONES CON GPU ESPECIAL INTERES LINUX.
A A1 ¿Cómo reparto las tareas? A2 Versión secuencial del programa Formado por 4 tareas A3 A4
¿Como valorar el rendimiento? Potencia computacional Nivel de heterogeneidad Speedup Eficiencia
Potencia computacional Depende de las características físicas del procesador pero también de la tarea que se esta ejecutando y del problema a resolver Puede variar para diferentes aplicaciones en un mismo procesador
A A1 A2 A3 A4 Si(A) Veloc. En ejecutar A
A A1 A2 A3 A4 Tsi(A) Tiempo en ejecutar A
A A1 A2 Tu vas a  Recibir la  Tarea mas  pequeña A3 A4 Pci Potencia computacional
S Tiempo en ejecutar A para el mas rápido (menos tiempo) Ahora cada procesador podra recibir un tamaño del problema acorde a sus potencia computacional Tiempo en ejecutar A para el procesador i Velocidad del procesador i al ejecutar A Velocidad del mas rápido de todos  al ejecutar A
Nivel de heterogeneidad Refleja La varianza de las potencias computacionales  de los elementos de proceso. Refleja los efectos dinámicos que se producen en el sistema, por ejemplo, cuando se introducen en el sistema elementos de proceso mucho más rápidos o mucho más lentos. Nº de equipos
Speedup Si ejecuto el programa secuencial en paralelo,  ¿Qué velocidad se gana?  -> Speedup (rendimiento de un algoritmo en paralelo) Tiempo que ha tardado el procesador mas rápido en ejecutar A  Tiempo total que se ha tardado ejecutándose A en paralelo (con todos los procesadores: A1, A2, …) Vs
Eficiencia: Indica porción de tiempo que los procesadores dedican a trabajo útil S(A): ganancia en velocidad de cómputo. SpeedUp Potencia computacional total
Ideas principales: A mayor heterogeneidad en el sistema: Necesidad de mayor adaptación el algoritmo a la arquitectura para obtener un buen rendimiento. A menor heterogeneidad en el sistema: No es necesario una adaptación del algoritmo a la  arquitectura
Rendimiento obtenido por un programa paralelo no adaptado al sistema heterogéneo. Todos los procesadores reciben la misma carga (sean mas rápidos o lentos) Procesadores mas rápidos Procesadores mas lentos Rendimiento obtenido por un programa paralelo adaptado. Cada procesador recibe una carga de trabajo proporcional a su potencia computacional
Para este apartado vamos a suponer que nuestra plataforma heterogénea presenta: 		-Heterogeneidad en las comunicaciones: 			-Medio compartido (bus), acceso de los procesadores 			de forma exclusiva.	 		-Heterogeneidad en la potencia computacional de los 	elementos de proceso.
vo Tarea 3
Disponemos de p procesadores de los cuales del procesador 0 será el maestro y el resto esclavos. El algoritmo a utilizar será:
Sistema homogéneo. Maestro Envio de tareas Envió de resultados Procesadores P3 P2 P1 Tiempo
Caso 1: tres procesadores. Maestro Envio de tareas Envió de resultados Procesadores P3 P2 Sobrecarga P1 Sobrecarga Tiempo
Caso 2: tres procesadores. Maestro Envio de tareas Envió de resultados Procesadores P3 P2 zzZZzzZ Sobrecarga P1 Tiempo
Caso 3: tres procesadores. Maestro Envio de tareas Envió de resultados Procesadores P3 P2 Mas trabajo al mas rapido P1 Tiempo
Conclusiones: -Las tareas se deben generar y distribuir de forma dinámica, equilibrando la carga de trabajo. -Se busca un mayor número de tareas que de procesadores, procesadores más potentes ejecutarán más tareas que los menos potentes. -Compromiso entre equilibrar la carga de trabajo y no generar un volumen excesivo de comunicaciones.
-La heterogeneidad en las comunicaciones: -Utilizar procesadores muy potentes pero que están 	geográficamente muy dispersos. 		-Estos procesadores pueden estar conectados a través de una red de 	comunicaciones de bajas prestaciones.
Bases del pipeline: Dividir la ejecución completa de la instrucción en varias actividades que se puedan realizar de forma solapada Para resolver un problema es necesario particionar el conjunto de tareas en n partes, cada una de las cuales se denominan etapas del algoritmo. Supondremos que tenemos tantos procesadores como etapas
Sistema homogéneo Envioitems Procesados Recepcionitems Procesado en cadena t
Sistema heterogéneo ¡Ocioso! ,[object Object],[object Object]
El procesador mas lento no es el de la menor potencia computacional, sino el que mas tiempo invierto en recibir, computar y enviar -> Necesidad de equilibrar la carga: Primer procesador: aquel con mayor coste de recepción porque (no recibe datos) Ultimo procesador el de mayor coste de envío porque no envía datos.
Sistema hibrido: Entorno que combina arquitecturas de memoria compartida y de paso de mensajes ( para comunicación de procesos)….pero…¿y eso que es?
Recordemos: ,[object Object]
SIMD(Single Instruction Multiple Data)
MIMD (Multiple Instruction Multiple Data).,[object Object]
Sistema de memoria distribuida,[object Object]
Paso de mensajes+Mem. compartida ,[object Object]
Cuando la comunicación tiene lugar en el mismo nodo es posible optar por el uso de la red o hacerlo a traves de la memoria.,[object Object]
Comunicación Internodo/intranodo mensajes largos Internodo
Programación en sistemas híbridos: Mediante el uso de programas de paso de mensajes puro que utilizan la librería MPI. A través de esquemas de programación que combinan códigos MPI y OpenMP.
TEST
TEST [V][F] La heterogeneidad se produce al sustituir un procesador por otro con características diferentes. [V][F] Un sistema heterogéneo se puede clasificar en dos clases: sistemas dedicados y sistemas no dedicados. [V][F] La potencia computacional siempre varia para diferentes aplicaciones en un mismo procesador debido al tamaño del problema de la aplicación. [V][F] Si el nivel de heterogeneidad del sistema es alto, no es necesario adaptar el algoritmo a la arquitectura. [V][F] La distintas potencias computacionales de los procesadores que forman el sistema heterogéneo, no influyen en la capacidad de comunicarse entre ellos.

Mais conteúdo relacionado

Mais procurados

Mais procurados (18)

Problemas de desempeño en las redes de cómputo
Problemas de desempeño en las redes de cómputoProblemas de desempeño en las redes de cómputo
Problemas de desempeño en las redes de cómputo
 
Computo Distribuído
Computo DistribuídoComputo Distribuído
Computo Distribuído
 
Sirc0703
Sirc0703Sirc0703
Sirc0703
 
Procesadores Vectoriales
Procesadores VectorialesProcesadores Vectoriales
Procesadores Vectoriales
 
Adec -cap_7
Adec  -cap_7Adec  -cap_7
Adec -cap_7
 
Tipología de los Sistemas Operativos
Tipología de los Sistemas OperativosTipología de los Sistemas Operativos
Tipología de los Sistemas Operativos
 
Sistema operativo
Sistema operativo Sistema operativo
Sistema operativo
 
Redes de datos
Redes de datosRedes de datos
Redes de datos
 
Medida de balance de carga escalable para SPMD
Medida de balance  de carga escalable para SPMDMedida de balance  de carga escalable para SPMD
Medida de balance de carga escalable para SPMD
 
Tema 3: Procesadores VLIW y procesadores vectoriales.
Tema 3: Procesadores VLIW y procesadores vectoriales.Tema 3: Procesadores VLIW y procesadores vectoriales.
Tema 3: Procesadores VLIW y procesadores vectoriales.
 
Consideraciones sobre la selección, implantación, seguridad, mantenimiento,...
Consideraciones sobre la selección, implantación, seguridad, mantenimiento,...Consideraciones sobre la selección, implantación, seguridad, mantenimiento,...
Consideraciones sobre la selección, implantación, seguridad, mantenimiento,...
 
Historia y evolución de los sistemas operativos
Historia y evolución de los sistemas operativosHistoria y evolución de los sistemas operativos
Historia y evolución de los sistemas operativos
 
Segunda unidas open suse
Segunda unidas open suseSegunda unidas open suse
Segunda unidas open suse
 
Opensuse2
Opensuse2Opensuse2
Opensuse2
 
Tcp y osi
Tcp y osiTcp y osi
Tcp y osi
 
Características de los sistemas operativos
Características de los sistemas operativosCaracterísticas de los sistemas operativos
Características de los sistemas operativos
 
Gestión de procesos
Gestión de procesosGestión de procesos
Gestión de procesos
 
Unidad 1
Unidad 1Unidad 1
Unidad 1
 

Semelhante a Programacion en ambientes heterogeneos

Semelhante a Programacion en ambientes heterogeneos (20)

3 unidad so2
3 unidad so23 unidad so2
3 unidad so2
 
Multiplicacion de matrices: Implementacion en cluster
Multiplicacion de matrices: Implementacion en clusterMultiplicacion de matrices: Implementacion en cluster
Multiplicacion de matrices: Implementacion en cluster
 
Sistemas operativos distribuidos
Sistemas operativos distribuidosSistemas operativos distribuidos
Sistemas operativos distribuidos
 
Cap1
Cap1Cap1
Cap1
 
Cuestionario de sistemas operativos(4) (1)
Cuestionario de sistemas operativos(4) (1)Cuestionario de sistemas operativos(4) (1)
Cuestionario de sistemas operativos(4) (1)
 
CUESTIONARIO SISTEMA OPERATIVO
CUESTIONARIO SISTEMA OPERATIVOCUESTIONARIO SISTEMA OPERATIVO
CUESTIONARIO SISTEMA OPERATIVO
 
Paralelismo
ParalelismoParalelismo
Paralelismo
 
Vision general de los sistemas operativos
Vision general de los sistemas operativosVision general de los sistemas operativos
Vision general de los sistemas operativos
 
INTRODUCCION A SISTEMAS OPERATIVOS
INTRODUCCION A SISTEMAS OPERATIVOSINTRODUCCION A SISTEMAS OPERATIVOS
INTRODUCCION A SISTEMAS OPERATIVOS
 
Sistemas Distribuidos conceptos generales
Sistemas Distribuidos conceptos generalesSistemas Distribuidos conceptos generales
Sistemas Distribuidos conceptos generales
 
Sistemas Distribuidos
Sistemas DistribuidosSistemas Distribuidos
Sistemas Distribuidos
 
Algoritmos Paralelos
Algoritmos ParalelosAlgoritmos Paralelos
Algoritmos Paralelos
 
Gnu linux programacion-de-sistemas
Gnu linux programacion-de-sistemasGnu linux programacion-de-sistemas
Gnu linux programacion-de-sistemas
 
Unidad 1 sistemas operativos
Unidad 1 sistemas operativosUnidad 1 sistemas operativos
Unidad 1 sistemas operativos
 
Programaciongnulinux
ProgramaciongnulinuxProgramaciongnulinux
Programaciongnulinux
 
So use
So useSo use
So use
 
So use
So useSo use
So use
 
1231534648762bry
1231534648762bry1231534648762bry
1231534648762bry
 
So use
So useSo use
So use
 
So use
So useSo use
So use
 

Último

Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOAREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOnarvaezisabella21
 
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptLUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptchaverriemily794
 
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxGoogle-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxAlexander López
 
Explorando la historia y funcionamiento de la memoria ram
Explorando la historia y funcionamiento de la memoria ramExplorando la historia y funcionamiento de la memoria ram
Explorando la historia y funcionamiento de la memoria ramDIDIERFERNANDOGUERRE
 
Excel (1) tecnologia.pdf trabajo Excel taller
Excel  (1) tecnologia.pdf trabajo Excel tallerExcel  (1) tecnologia.pdf trabajo Excel taller
Excel (1) tecnologia.pdf trabajo Excel tallerValentinaTabares11
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptJavierHerrera662252
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativaAdrianaMartnez618894
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadMiguelAngelVillanuev48
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son241514984
 
Segunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxSegunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxMariaBurgos55
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxJOSEFERNANDOARENASCA
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx241523733
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
Tecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxTecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxGESTECPERUSAC
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxAlexander López
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMidwarHenryLOZAFLORE
 

Último (20)

Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOAREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
 
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptLUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
 
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxGoogle-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
 
Explorando la historia y funcionamiento de la memoria ram
Explorando la historia y funcionamiento de la memoria ramExplorando la historia y funcionamiento de la memoria ram
Explorando la historia y funcionamiento de la memoria ram
 
Excel (1) tecnologia.pdf trabajo Excel taller
Excel  (1) tecnologia.pdf trabajo Excel tallerExcel  (1) tecnologia.pdf trabajo Excel taller
Excel (1) tecnologia.pdf trabajo Excel taller
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativa
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidad
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son
 
Segunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxSegunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptx
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptx
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
Tecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxTecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptx
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptx
 

Programacion en ambientes heterogeneos

  • 1. Capítulo 8: Computación paralela en ambientes heterogéneos Alumno: Francisco Albert Albusac Ingeniería de Telecomunicación
  • 2. ¿Por qué un tema 8?
  • 3. Diferentes sistemas cooperan a la hora de realizar una tarea con la máxima eficacia, sin embargo… estos tienen características diferentes (distinto rendimiento) ¿Cómo obtener entonces un buen rendimiento? Existen sistemas heterogéneos dedicados y no dedicados
  • 4. La representación interna de datos: Sobrecarga asociada a la conversión de los datos durante el intercambio de mensajes entre máquinas. Problemas en algoritmos de tipo numérico que demandan una alta precisión. Ejemplo: clusters que combinan arquitecturas de 32/64 bits.
  • 5. La memoria: cuando las cantidades de memoria disponibles en cada máquina no son las mismas o aún siendo las mismas, puede haber diferencias en algunos niveles de la jerarquía de memoria.
  • 6. La red: diferentes capacidades de comunicación que tienen los distintos procesadores. Ts tw El envío de n datos punto a punto entre dos procesadores puede ser modelado mediante la fórmula: tcom=tsi,j+twi,j n
  • 7. El programa: Una forma de caracterizarlo es mediante los tipos de bucles existentes: Bucles homogéneos o regulares: el número de operaciones por iteración es siempre el mismo y los procesadores realizan siempre la misma cantidad de trabajo. Bucles heterogéneos o irregulares: el número de operaciones por iteración puede variar de una iteración a otra.
  • 8. El software base: En un sistema paralelo se pueden encontrar diferencias en: Los sistemas operativos de las máquinas. En el sistema de archivos. En la comunicación entre procesos. En los compiladores y lenguajes disponibles, etc.
  • 9. Solución Se asigna trabajo a cada sistema en función de sus características 9
  • 10. Los beneficios que se obtienen: Proporciona un mecanismo de colaboracióntransparente entre gruposdispersos, tanto científicos comocomerciales. - Posibilita el funcionamiento de aplicacionesa gran escala. - Facilita el acceso a recursos distribuidosdesde nuestros PCs.
  • 11. Servicios requeridos: servicio de autenticación servicio de autorización servicio de acceso a datos remotos servicio de caracterización servicios de monitorización servicio de planificación de los recursos
  • 12. Planificación de trabajos: Proceso de toma dedecisiones que tienen que ver con recursos sobre múltiples dominios administrativos Los planificadores grid tienen que tomar decisiones basándose en la información de la que disponen Selección de recursos (a veces denominada como descubrimiento derecursos), Aasignación de los trabajos a estos recursos ( resource mapping o matching) Etapas de planificación: Descubrimiento derecursos Selección de losmejores recursos Reserva Eejecución deltrabajo
  • 13. Ejemplo 1 GRID: LHC (CERN)- ¿QUE ES EL LHC? LHC: es una red mundial que conecta miles de universidades y centros de investigación de todo el mundo, y que permitirá distribuir toda esta información a los 7 mil físicos que conforman la red. Se envian datos provenientes de 150 millones de sensores, los cuales estudian 600 millones de colisiones de protones por segundo Se generan 15 millones de GB por año. ¿Cómo harán los físicos para analizar toda esta información? Divide y venceras-> grid ¿SE NECESITAN TANTOS GIGABYTES PARA DESCRIBIR UN EXPERIMENTO DONDE SOLO INTERVIENEN DOS PARTICULAS?
  • 14. Ejemplo 1 GRID: LHC (CERN)- ¿QUE ES EL LHC?
  • 15.
  • 16. Tier 1, es decir, los servidores de mayor rango, son 9: AOL, AT&T, Global Crossing, Level3, Verizon Business, NTT Communications, Qwest, Cogent, SAVIS y SprintLink
  • 17. Éstos, a su a vez, distribuyen la información a más de 150 Tier 2, y de ahí la información pasa a los físicos
  • 18.
  • 20. Ejemplo 3: BOINC (http://boinc.berkeley.edu) Boinc es un programa que te permite donar tiempo de inactividad de su ordenador a proyectos como SETI@HOME ClimatePrediction Rosetta@home WorldcommunityGrid Muchos otros Despues de instalar BOINC puedes unir tu ordenador a tantos de dichos proyectos como quiera MULTIPLES VERSIONES PARA SISTEMAS OPERATIVOS. ESPECIAL INTERES AQUELLAS VERSIONES CON GPU ESPECIAL INTERES LINUX.
  • 21. A A1 ¿Cómo reparto las tareas? A2 Versión secuencial del programa Formado por 4 tareas A3 A4
  • 22. ¿Como valorar el rendimiento? Potencia computacional Nivel de heterogeneidad Speedup Eficiencia
  • 23. Potencia computacional Depende de las características físicas del procesador pero también de la tarea que se esta ejecutando y del problema a resolver Puede variar para diferentes aplicaciones en un mismo procesador
  • 24. A A1 A2 A3 A4 Si(A) Veloc. En ejecutar A
  • 25. A A1 A2 A3 A4 Tsi(A) Tiempo en ejecutar A
  • 26. A A1 A2 Tu vas a Recibir la Tarea mas pequeña A3 A4 Pci Potencia computacional
  • 27. S Tiempo en ejecutar A para el mas rápido (menos tiempo) Ahora cada procesador podra recibir un tamaño del problema acorde a sus potencia computacional Tiempo en ejecutar A para el procesador i Velocidad del procesador i al ejecutar A Velocidad del mas rápido de todos al ejecutar A
  • 28. Nivel de heterogeneidad Refleja La varianza de las potencias computacionales de los elementos de proceso. Refleja los efectos dinámicos que se producen en el sistema, por ejemplo, cuando se introducen en el sistema elementos de proceso mucho más rápidos o mucho más lentos. Nº de equipos
  • 29. Speedup Si ejecuto el programa secuencial en paralelo, ¿Qué velocidad se gana? -> Speedup (rendimiento de un algoritmo en paralelo) Tiempo que ha tardado el procesador mas rápido en ejecutar A Tiempo total que se ha tardado ejecutándose A en paralelo (con todos los procesadores: A1, A2, …) Vs
  • 30. Eficiencia: Indica porción de tiempo que los procesadores dedican a trabajo útil S(A): ganancia en velocidad de cómputo. SpeedUp Potencia computacional total
  • 31. Ideas principales: A mayor heterogeneidad en el sistema: Necesidad de mayor adaptación el algoritmo a la arquitectura para obtener un buen rendimiento. A menor heterogeneidad en el sistema: No es necesario una adaptación del algoritmo a la arquitectura
  • 32. Rendimiento obtenido por un programa paralelo no adaptado al sistema heterogéneo. Todos los procesadores reciben la misma carga (sean mas rápidos o lentos) Procesadores mas rápidos Procesadores mas lentos Rendimiento obtenido por un programa paralelo adaptado. Cada procesador recibe una carga de trabajo proporcional a su potencia computacional
  • 33. Para este apartado vamos a suponer que nuestra plataforma heterogénea presenta: -Heterogeneidad en las comunicaciones: -Medio compartido (bus), acceso de los procesadores de forma exclusiva. -Heterogeneidad en la potencia computacional de los elementos de proceso.
  • 35. Disponemos de p procesadores de los cuales del procesador 0 será el maestro y el resto esclavos. El algoritmo a utilizar será:
  • 36. Sistema homogéneo. Maestro Envio de tareas Envió de resultados Procesadores P3 P2 P1 Tiempo
  • 37. Caso 1: tres procesadores. Maestro Envio de tareas Envió de resultados Procesadores P3 P2 Sobrecarga P1 Sobrecarga Tiempo
  • 38. Caso 2: tres procesadores. Maestro Envio de tareas Envió de resultados Procesadores P3 P2 zzZZzzZ Sobrecarga P1 Tiempo
  • 39. Caso 3: tres procesadores. Maestro Envio de tareas Envió de resultados Procesadores P3 P2 Mas trabajo al mas rapido P1 Tiempo
  • 40. Conclusiones: -Las tareas se deben generar y distribuir de forma dinámica, equilibrando la carga de trabajo. -Se busca un mayor número de tareas que de procesadores, procesadores más potentes ejecutarán más tareas que los menos potentes. -Compromiso entre equilibrar la carga de trabajo y no generar un volumen excesivo de comunicaciones.
  • 41. -La heterogeneidad en las comunicaciones: -Utilizar procesadores muy potentes pero que están geográficamente muy dispersos. -Estos procesadores pueden estar conectados a través de una red de comunicaciones de bajas prestaciones.
  • 42.
  • 43. Bases del pipeline: Dividir la ejecución completa de la instrucción en varias actividades que se puedan realizar de forma solapada Para resolver un problema es necesario particionar el conjunto de tareas en n partes, cada una de las cuales se denominan etapas del algoritmo. Supondremos que tenemos tantos procesadores como etapas
  • 44. Sistema homogéneo Envioitems Procesados Recepcionitems Procesado en cadena t
  • 45.
  • 46. El procesador mas lento no es el de la menor potencia computacional, sino el que mas tiempo invierto en recibir, computar y enviar -> Necesidad de equilibrar la carga: Primer procesador: aquel con mayor coste de recepción porque (no recibe datos) Ultimo procesador el de mayor coste de envío porque no envía datos.
  • 47. Sistema hibrido: Entorno que combina arquitecturas de memoria compartida y de paso de mensajes ( para comunicación de procesos)….pero…¿y eso que es?
  • 48.
  • 50.
  • 51.
  • 52.
  • 53.
  • 55. Programación en sistemas híbridos: Mediante el uso de programas de paso de mensajes puro que utilizan la librería MPI. A través de esquemas de programación que combinan códigos MPI y OpenMP.
  • 56. TEST
  • 57. TEST [V][F] La heterogeneidad se produce al sustituir un procesador por otro con características diferentes. [V][F] Un sistema heterogéneo se puede clasificar en dos clases: sistemas dedicados y sistemas no dedicados. [V][F] La potencia computacional siempre varia para diferentes aplicaciones en un mismo procesador debido al tamaño del problema de la aplicación. [V][F] Si el nivel de heterogeneidad del sistema es alto, no es necesario adaptar el algoritmo a la arquitectura. [V][F] La distintas potencias computacionales de los procesadores que forman el sistema heterogéneo, no influyen en la capacidad de comunicarse entre ellos.
  • 58. TEST [V][F] Si el nivel de heterogeneidad del sistema es bajo, no vale la pena adaptar el algoritmo a la arquitectura, ya que la mejora es baja. [V][F] En un algoritmo pipeline, el primer procesador del pipeline debería ser aquel con menor coste de recepción y el último el de mayor coste de envío. [V][F] La heterogeneidad asociada a la red viene dada por las diferentes capacidades de cómputo que tienen los distintos procesadores. [V][F] Cuando el procesador más lento esta en los extremos del pipeline el tiempo de ejecución se reduce. [V][F] En sistemas híbridos, el uso de memoria compartida tiene un rendimiento beneficioso si se utilizan paquetes de pequeño tamaño.
  • 59. FIN

Notas do Editor

  1. Hasta ahora hemos tratado temas donde los sistemas eran todos iguales, a partir de ahora se tratara de sistemas compuestos por estaciones de trabajo con diferentes características (rendimiento) entre si.
  2. El CERN (Organización Europea para la Investigación Nuclear) tiene experiencia haciendo innovaciones en el Internet. La World Wide Web fue inventada en sus instalaciones, y la primera página web fue la página la suya: http://info.cern.ch/hypertext/WWW/TheProject.html, siendo el primer servidor web http://info.cern.ch, creado en 1990.
  3. El CERN (Organización Europea para la Investigación Nuclear) tiene experiencia haciendo innovaciones en el Internet. La World Wide Web fue inventada en sus instalaciones, y la primera página web fue la página la suya: http://info.cern.ch/hypertext/WWW/TheProject.html, siendo el primer servidor web http://info.cern.ch, creado en 1990.
  4. El CERN (Organización Europea para la Investigación Nuclear) tiene experiencia haciendo innovaciones en el Internet. La World Wide Web fue inventada en sus instalaciones, y la primera página web fue la página la suya: http://info.cern.ch/hypertext/WWW/TheProject.html, siendo el primer servidor web http://info.cern.ch, creado en 1990.
  5. Por cierto, transferencias como éstas se pueden ver en vivo en decenas de páginas web del Reino Unido o de Estados Unidos, con gráficas así o en mapas mundiales bidimensionales y tridimensionales con plataformas en Google Earth y Java, pues el CERN debe dar cuenta a sus contribuyentes acerca de los 180 millones invertidos en este proyecto, y así deben hacerlo los demás países respecto a lo que invertieron en sus respectivas redes.
  6. Por cierto, transferencias como éstas se pueden ver en vivo en decenas de páginas web del Reino Unido o de Estados Unidos, con gráficas así o en mapas mundiales bidimensionales y tridimensionales con plataformas en Google Earth y Java, pues el CERN debe dar cuenta a sus contribuyentes acerca de los 180 millones invertidos en este proyecto, y así deben hacerlo los demás países respecto a lo que invertieron en sus respectivas redes.
  7. Por cierto, transferencias como éstas se pueden ver en vivo en decenas de páginas web del Reino Unido o de Estados Unidos, con gráficas así o en mapas mundiales bidimensionales y tridimensionales con plataformas en Google Earth y Java, pues el CERN debe dar cuenta a sus contribuyentes acerca de los 180 millones invertidos en este proyecto, y así deben hacerlo los demás países respecto a lo que invertieron en sus respectivas redes.
  8. Sea Si(A) la velocidad del procesador i al ejecutar A en modo dedicado-> velocidad del procesador i para ejecutar la version secuencial ASea Tsi(A) el tiempo de ejecucion del programa A en el procesador i.
  9. Sea Si(A) la velocidad del procesador i al ejecutar A en modo dedicado-> velocidad del procesador i para ejecutar la version secuencial ASea Tsi(A) el tiempo de ejecucion del programa A en el procesador i.
  10. Sea Si(A) la velocidad del procesador i al ejecutar A en modo dedicado-> velocidad del procesador i para ejecutar la version secuencial ASea Tsi(A) el tiempo de ejecucion del programa A en el procesador i.
  11. Sea Si(A) la velocidad del procesador i al ejecutar A en modo dedicado-> velocidad del procesador i para ejecutar la version secuencial ASea Tsi(A) el tiempo de ejecucion del programa A en el procesador i.
  12. La potencia de computo toma el valor 1 en los procesadores mas rapidos del sistema.
  13. Este valor varia entre 0 (sistemas homogeneos) y 1 (sistemas muy heterogéneos)
  14. Lo ideal es que sea igual a 1Para un sistema heterogéneo, se obtendra la mejor eficiencia en el sistema cuando la carga de trabajo esta perfectamente repartida.