SlideShare ist ein Scribd-Unternehmen logo
1 von 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.

Weitere ähnliche Inhalte

Was ist angesagt?

Was ist angesagt? (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
 

Ähnlich wie Programacion en ambientes heterogeneos

Ähnlich wie 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
 

Kürzlich hochgeladen

PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxAlan779941
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxMiguelAtencio10
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxJorgeParada26
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfAnnimoUno1
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...JohnRamos830530
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanamcerpam
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfvladimiroflores1
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estossgonzalezp1
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21mariacbr99
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.FlorenciaCattelani
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 

Kürzlich hochgeladen (11)

PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 

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

Hinweis der Redaktion

  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.