Clustering Redes II 2014. Sobre la base que ya conocen… … los clusters requieren un apilamiento de máquinas de diversa estructura, con el fin de repartirse.

Slides:



Advertisements
Presentaciones similares
Base de Datos Distribuidas FUNDAMENTOS DE BASES DE DATOS DISTRIBUIDAS
Advertisements

Tecnologías Cliente / Servidor Capitulo III Richard Jiménez V. clienteserver.wordpress.com.
Estructura de un Sistema Operativo
Programación Paralela Dr. Mario Rossainz López FCC- BUAP
HISTORIA Y CLASIFICACIÓN DE LOS SISTEMAS OPERATIVOS
Ley de Amdahl.
Análisis y Diseño de Algoritmos
1 Planteamiento del problema ¿Tenemos los humanos la capacidad de percibir si nos miran desde atrás? O, más exactamente: ¿Es defendible que existen otras.
Procesamiento paralelo
Con el capital y el trabajo (K,N) dados, una mejora en el estado de la tecnología (A) genera un aumento de la producción. Progreso Tecnológico y función.
CONCEPTES AVANÇATS DE SISTEMES OPERATIUS Departament d’Arquitectura de Computadors (apunts de l’assignatura en format transparència) Beowulf Vs Clusters.
Clusters Presentado por : Manuel Alejandro ahumada trochez Yenny carabali.
PROGRAMACIÓN DE RECURSOS.
Hilos En La Computación. (THREADS).
Características de un sistema operativo
Introducción a los SOs.
Tema 8: Introducción a los SOs. Tema 8: 2 Silberschatz, Galvin and Gagne ©2005 Fundamentos de los Computadores (ITT, Sist. Electr.), Introducción.
TIPOS Y MODELOS. Realizar las operaciones de calculo Dar ordenes a los componentes para que funcionen.
Rendimiento de la CPU y sus factores
Como es de saber el mundo se deja llevar mucho por la competencia en el sentido tecnológico, a estas formas de competencia y de relación se les llama.
Rendimiento y/o desempeño.. RENDIMIENTO “El computador A es más rápido que el computador B” Como se determina el rendimiento de un computador para: El.
UNIDAD 7 “OTROS PARADIGMAS DE PROGRAMACIÓN“ LI & MSC OSCAR RAMIREZ CORTÉS Universidad de la Huasteca Veracruzana.
UNIDAD 1. ORGANIZACIÓN BÁSICA Y DISEÑO DEL COMPUTADOR
Análisis y Diseño de Algoritmos Programa #1 Samuel Garrido Daniel.
UNIDAD 01. EL MICROPROCESADOR
Webquest Generaciones de Computadoras Grupo#2 Michelle Jirau Natalya La Russa María Irizarry María González.
También es conocido como proceso ligero. Es una entidad básica de utilización de CPU y esta formado por un contador de programa, algunos registros y una.
TIPOS DE SISTEMAS OPERATIVOS.  Que es un sistema operativo??  Es el encargado de brindar al usuario una forma amigable y sencilla de operar, interpretar,
Curso: Fundamentos de Computación
PROCESADOR.- El procesador es el cerebro del sistema, encargado de procesar toda la información. Básicamente, es el "cerebro" de la computadora. Prácticamente,
Historia de la informática. Charles Babbage ( ) Concibió la idea de ordenadores mecánicos que realizaran cálculos y que permitieran guardar los.
INTRODUCCIONHISTORIAQUE ES UN PLCELEMENTOS VENTAJAS TIPOSCONCLUSIONESREFERENCIAS.
NÚMEROS ALEATORIOS DEPARTAMENTO DE INFORMATICA UNSL-2007.
NUMEROS ALEATORIOS. La idea es hallar un generador que sea fácil de implementar en la computadora, que sea rápido y que no ocupe mucho espacio memoria,
UNIVERSIDAD NACIONAL DE LOJA ÁREA DE LA EDUCACIÓN, EL ARTE Y LA COMUNICACIÓN CARRERA DE INFORMÁTICA EDUCATIVA MODULO IV DOCENTE Ing. : Lena Ruiz Rojas.
Yulieth A. Sánchez B. C.I: Exp: to de Mercadeo.
Equipo 10: NIÑO SUAREZ VERONICA USCANGA COLUNGA BRENDA YURIDIA.
Recuerda. Fracciones equivalentes
Arquitectura de Computadores Clase 21 Memoria Virtual IIC 2342 Semestre Rubén Mitnik Pontificia Universidad Católica de Chile Escuela de Ingeniería.
¿ Sabes qué es la PLANEACIÓN? A través de la planeación, una persona u organización se fija alguna meta y estipula qué pasos debería seguir para llegar.
JORNADA DE REFLEXIÓN AP0DERADOS COLEGIO MONTESSORI AGOSTO, 2012.
SISTEMAS OPERATIVOS Contenido: Descripción del proceso proceso nulo estado del procesador imagen del proceso información del BCP Miguel Ángel Martínez.
6.1 ¿Qué significa Cloud Computing? Conjunto de aplicaciones y servicios de software que se ofrecen a través de internet que en lugar de residir en los.
Un sistema distribuido de computo es una colección de computadoras separadas físicamente y conectadas entre sí por una red de comunicaciones distribuida.
Inecuaciones lineales o inecuaciones de primer grado
CENTRO UNIVERSITARIO UAEM TEXCOCO INGENIERÍA EN COMPUTACIÓN DISEÑO DE SISTEMAS M. En C.C. Ma. Dolores Arévalo Zenteno.
Hackers Ramón D. Cruz Candelario Administración de empresas y tecnología.
Procesos Un proceso es un programa en ejecución. Modelo de procesos secuenciales. Abstracción del SO.
Clase 1.  Un programador es aquella persona que escribe, depura y mantiene el código fuente de un programa informático, es decir, del conjunto de instrucciones.
LAS LEYES DE LA TERMODINÁMICA. Las leyes de la termodinámica que se desarrollarán serán:  Ley cero de la termodinámica o principio del equilibrio termodinámico.
Cómo preparar el Presupuesto Maestro
PROGRAMA DE FORTALECIMIENTO INSTITUCIONAL LOCAL ESCUELAS DE LIDERAZGO Y/O GOBIERNO NIVEL 4 - MÓDULO 3.
Dirección de Marketing ESTRATEGIAS DE PRECIOS
D IRECCIONAMIENTO IP ( PARTE 2) Juan Carlos Rodriguez Gamboa.
Optimización de Consultas Distribuidas. ÍNDICE Definiciones básicas Modelo de costo Estadísticas de la base de datos Optimización centralizada de consultas.
Procedimiento / Proceso /Tarea /Actividad Procesos administrativos Sandy Robles García Guadalupe Isabel Contreras Martínez Juan José Huerta Miranda Fabián.
Asignaturas: Informática/Electiva I. Definición de Sistema operativo Conceptos Básicos Funciones de los Sistemas Operativos Clasificación Componentes.
G ESTIÓN DE LA MEMORIA Paginación y segmentación.
Melissa Victoria Mendiola Peralta.  Los algoritmos son las series de pasos por los cuales se resuelven los problemas.
Prof. Jonathan Silva Ingeniería Civil – Informática I Ingeniería Civil Informática I Clase 7 – Funciones y Procedimientos.
23/06/ Indice 1. Términos de un fracción 2. Equivalencia de fracciones 3. Ampliación y simplificación de fracciones 4. Fracciones con el numerador.
Marco Teórico Referencial
3. Organización de proyectos. Estructura y cultura.
1 Lenguaje de Programación Clase 1 Alberto Huamani Escobar
El ser humano actual, haciendo uso de las nuevas tecnologías, puede recibir en un solo día, una cantidad de información similar a la que recibían los individuos.
Taller introducción a los conceptos básicos de Estadística PRIMERA PARTE 2016 Propósito: Introducir algunos conceptos básicos de Estadística por medio.
UNIVERSIDAD TECNOLOGICA DE AGUASCALIENTES
Cómo fundar juicios Introducción Llamamos fundamento a la forma en que el pasado puede utilizarse para formular juicios que nos apoyen efectivamente en.
Ley de Amdahl.
Transcripción de la presentación:

Clustering Redes II 2014

Sobre la base que ya conocen… … los clusters requieren un apilamiento de máquinas de diversa estructura, con el fin de repartirse entre ellas una(s) carga(s) computacionales que en equipos separados tomarían mas tiempo. Sin embargo, la idea es pasar de esto… …a esto!

Filosofía del Multiprocesamiento…

Según para lo que quiera operar en el cluster, estos se dividen en: HPCC (High Performance Computing Clusters).– investigación HA o HACC (High Availability Computing Clusters). -- empresa HT o HTCC (High Throughput Computing Clusters). -- empresa El HPCC (o HPC para otros autores), es el típico para el manejo de cargas científicas ya que se requiere que hagan lo mejor posible con lo que tienen, archivos de gran tamaño (gigas) o de gran carga computacional (o ambos!!) El HA (o HAC para otros autores), es el requerido para aplicaciones criticas con incidencia 24/7*365, o sea, NUNCA se deben apagar por el costo que ello implica o sea, máxima disponibilidad y confiabilidad. El HTC es el que se emplea para ejecutar la mayor cantidad de tareas en el menor tiempo posible, como por ejemplo los sistemas bancarios de simulación de datos financieros (e.g. Wall Street) y demás requerimientos donde se necesitan los resultados en el menor tiempo posible.

Ley de Moore y Amdahl Ley de Moore fue acuñado por el profesor de Caltech Carver Mead en honor al cofundador de Intel Gordon E. Moore quien introdujo el concepto en un paper en En el verano de 1968, Gordon Moore creó Intel junto con Robert Noyce, compañero de labores en la empresa donde trabajaban:

Ley de Moore y Amdahl Esta planteó inicialmente que el número de transistores que puede colocarse dentro de un chip de Si, se dobla aprox. 2 años. Sin embargo, Mead modificó su propia ley en 1975 al corroborar que el ritmo bajaría, y que la capacidad de integración se duplicaría aproximadamente cada 18 meses. siempre el crecimiento de transistores incremento directo de rendimiento La capacidad de cada componente de un computador se ve afectada por la Ley de Moore. Generalmente estos aumentos son exponenciales. Pero en términos de procesadores, no siempre el crecimiento de transistores no se traduce en un incremento directo de rendimiento.

Ley de Moore y Amdahl Por ello, el propio Moore determinó una fecha de caducidad para su ley: "Mi ley dejará de cumplirse dentro de 10 o 15 años -desde 2007-", según aseguró durante la conferencia en la que afirmó, no obstante, que una nueva tecnología vendrá a suplir a la actual.

Ley de Moore y Amdahl Particularmente, en los procesadores multicore, las aplicaciones seriales no se ejecutan sustancialmente más rápido. Hay muchos casos, donde hay un incremento de un 45% en el número de transistores, éste sólo se traduce a un rango entre el 10 al 20% de rendimiento. teóricamente Ahora; teóricamente, si uno dobla el número de procesadores, el tiempo de ejecución debería reducirse a la mitad. Si se dobla el número de procesadores sucesivamente, entonces se debería acortar a la mitad el tiempo de ejecución pero ello está atado a otra consideración paradigmática…

Ley de Moore y Amdahl La ley de Amdahl es un modelo matemático que describe la relación entre la aceleración esperada de la implementación paralela de un algoritmo y la implementación serial del mismo algoritmo. Técnicamente la ley de Amdahl trata sobre la aceleración S que se puede alcanzar a partir de las modificaciones (mejoras) de una porción P de un cálculo.

Ley de Moore y Amdahl Como así?? La Ley define el S peedup (aceleración del rendimiento) que se puede alcanzar al usar cierta mejora El S peedup depende de dos factores: 1.La fracción del proceso original que puede ser mejorado. Si la mejora afecta 20 segundos de un proceso que tarda 60 segundos, entonces Fracción mejora = 20/60. 2.Aceleración de la fracción que puede ser mejorada. Si la mejora hace que la parte que tardaba 20 segundos ahora tarde 12, Speedup mejora = 20/12.

Ley de Moore y Amdahl Luego, si se realiza una mejora del 30% en el tiempo de ejecución del cálculo, entonces la porción modificada (mejorada) será 0.3 Y si la porción modificada se ejecuta el doble de rápido, entonces la aceleración será igual a 2. Si se considera el número de procesadores ( N ) en la relación tendremos

Tiempo de ejecución El tiempo de ejecución mejorado es igual al tiempo que no se usa la mejora mas el tiempo que si usa la mejora.

¬ Tiempo de ejecución original: 60 segundos. ¬ Mejora: 20 segundos se hacen ahora en 12. ¬ Fracción de la mejora: 20/60 = ¬ Speedup de la mejora: 20/12 = ¬ Tiempo de ejecución con la mejora: 60 x ((1 – 0.333) /1.667) = 60 x ( ) = 60 x (0.867) = 52 Ejemplo

Speedup global El speedup global es: Alternativamente:

Ejemplo Fracción mejora: 20/60 = Speedup mejora: 20/12 = Tiempo de ejecución original: 60 segundos. Tiempo de ejecución con la mejora: 52 segundos. Speedup global = 60 / 52 = Speedup global = 1 / ((1 – 0.333) + (0.333 / 1.667)) = 1.15.

Otro ejemplo Un programa tarda 100 segundos en correr. El programa pasa 80 segundos en un procedimiento. ¿Qué tanto se debe mejorar ese procedimiento para que todo el programa corra 5 veces más rápido?

Otro ejemplo Usamos la ley de Amdahl: Tiempo de ejecución original: 100 segundos. Tiempo de ejecución nuevo: 20 segundos. Fracción mejorada: 80 / 100 = 0.8 Falta por saber el speedup de la mejora.

Otro ejemplo 20 = 100 x ((1 – 0.8) + (0.8 / Speedupmejora)) 20 = 100 x ( / Speedupmejora) 20 = 20 x 80 / Speedupmejora 20 – 20 = 80 / Speedupmejora 0 = 80 / Speedupmejora No hay forma de que el programa mejorado corra en 20 segundos.

Corolario de la ley de Amdahl El speedup global está limitado por la fracción del programa que se puede mejorar. ¿Cómo se interpreta ese límite cuando Fracción mejora es 1?

Ejemplo Se tiene un servidor de Web. Se le cambia la CPU por una CPU que es 10 veces más rápida que la antigua. La CPU antigua estaba 40% del tiempo haciendo cálculos y 60% ociosa esperando I/O. ¿Cuál es el speedup global con la nueva CPU?

Ejemplo Fracción que se puede mejorar: 40% = 0.4. Speedup de la mejora: 10. El corolario de la ley de Amdahl limita el speedup global: Speedupglobal < 1 / (1 – 0.4) = 1.67 Usando la ley de Amdahl, el speedup global es:

Ejemplo El speedup global es: 1 / ((1 – 0.4) + (0.4 / 10)) = 1.56 El servidor con la nueva CPU es 1.56 veces más rápido que el servidor con la antigua CPU.

Test Se tiene un servidor Dell con procesador Xeon de 3,2 GHz. Se tiene además varios PC´s Dell con procesadores Pentium 4 de 3 GHz. Con cuantos PC´s se puede tener un desempeño superior al del servidor? ¿Cuál es el speedup global del servidor y de los PC´s?

Claramente nos faltan detalles al respecto… buscando “Xeon de 3,2 GHz vs Pentium 4 de 3GHz”, nos aparece esta página:

Tarea-Taller Con base en algún algoritmo matemático que posean, hacer lo siguiente: 1. Determinar cuanto tiempo demora su ejecución en una maquina de referencia, para al menos 10 valores, los cuales deber ser tomados con un mínimo de 3 muestras 2. diagramar las curvas de desempeño en varias ejecutadas vs. Tiempo de ejecución 3. Mejorar dicho algoritmo para que corra mas eficientemente. 4. repetir paso 1 5. Hacer los pasos 1 a 4 en otra maquina diferente en hardware 6. Comparar las graficas logradas entre una y otra maquina en los sectores de la curva donde sea mas plano, o donde se pueda acotar un comportamiento lineal. 7. Volver a los colorarios de Amdahl y determinar que tan potente es una máquina frente a otra. 8. Concluir.

Modelos de Programación Paralela El modelo debe proveer un mecanismo para el desarrollo de programas paralelos eficientes! Debe permitir concurrencia, abstracción, portabilidad y modularidad. Debe ser escalable, independiente de la asignación y con un modelo de costo fiable

La computación paralela implica una o mas tareas concurrentes. Estas tareas se llaman JOBS Cada JOB implica: programa secuencial + uso memoria local + id dentro del contexto de comunicación. Se envía el mensaje > se recibe el mensaje > se crea el JOB > se destruye el JOB Modelos de Programación Paralela

Retomando la ley de Amdahl: cada algoritmo tiene una parte intrínsecamente no paralelizable, o sea, secuencial. Esto limitará la velocidad que se logra en un clúster. El T mínimo de ejecución en paralelo implica la relación contra el componente secuencial del mismo: T/s O sea: si el 20% de un algoritmo no es paralelizable, la ganancia máxima es 5 Modelos de Programación Paralela

Tiempo de ejecución paralelo: Tiempo transcurrido desde que el primer procesador empieza a ejecutar el programa hasta que el último termina su ejecución. Modelos de Programación Paralela