Source: http://docplayer.es/1260725-Algoritmos-evolutivos-multiobjetivo-para-despacho-de-tareas-en-redes-heterogeneas.html
Timestamp: 2017-05-23 01:24:24+00:00

Document:
Algoritmos evolutivos multiobjetivo para despacho de tareas en redes heterogéneas - PDF
Download "Algoritmos evolutivos multiobjetivo para despacho de tareas en redes heterogéneas"
Valentín Hernández Blázquez
1 Instituto de Computación Facultad de Ingeniería Universidad de la República Montevideo, Uruguay Proyecto de Grado Algoritmos evolutivos multiobjetivo para despacho de tareas en redes heterogéneas Darío De León 2008 Supervisor: Sergio Nesmachnow2 3 Contenido Capítulo 1. Introducción...7 Capítulo 2. Computación heterogénea Conceptos de computación heterogénea Ventajas de los sistemas heterogéneos Tipos de sistemas heterogéneos Perfiles de tareas Técnicas de predicción Mapeo Entornos de programación Evaluación de desempeño Algunas medidas de performance Algunas heurísticas propuestas Aplicaciones de la computación heterogénea Berkeley Open Infrastructure for Network Computing (BOINC) World Community Grid (WCG) Modelo ETC Trabajos relacionados Estimating the Execution Time Distribution for a Task Graph in a Heterogeneous Computing System A Comparison of Eleven Static Heuristics for Mapping a Class of Independent Tasks onto Heterogeneous Distributed Computing Systems The Relative Performance of Various Algorithms is Independent of Sizable Variances in Run-time Predictions A Taxonomy for describing Matching and Scheduling Heuristics for Mixed-Machine Heterogeneous Computing Systems Efficient Batch Job Scheduling in Grids using Cellular Memetic Algorithms Conclusiones...38 Capítulo 3. Computación evolutiva Técnicas de computación evolutiva Algoritmos genéticos Representación de soluciones Función de fitness Operadores evolutivos Modelos de evolución Modelo de estado estacionario Otros modelos de evolución Algoritmos evolutivos multiobjetivos Problemas de optimización multiobjetivo AE para optimización multiobjetivo (MOEA)...47 Non Pareto based MOEAs...48 Pareto based MOEAs MOEAs de primera generación...49 VEGA - Vector Evaluated Genetic Algorithms...49 NSGA - Non-dominated Sorting Genetic Algorithm...49 NPGA - Niched Pareto Genetic Algorithm...50 MOGA - MultiObjective Genetic Algorithm MOEAs de segunda generación...52 SPEA - Strength Pareto Evolutionary Algorithm...52 SPEA PAES - Pareto Archived Evolution Strategy4 4 CONTENIDO NSGA-II...55 NPGA MICRO GA Métricas de evaluación de MOEAs...57 Número de Puntos no Dominados...58 Tasa de Error...58 Distancia Generacional...58 Spacing...58 Spread Algoritmos evolutivos paralelos Modelo maestro-esclavo Modelo de subpoblaciones distribuidas Modelo celular...62 Capítulo 4. MOEAs para planificación en entornos HC Descripción del problema Trabajo previo. Despacho de tareas en redes heterogéneas: enfoque multiobjetivo Diseño del algoritmo Codificación Inicialización de la población Selección Cruzamiento Migración Mutación Frameworks utilizados MOE Framework JMetal Sparrow Detalles de la implementación NSGAII SPEA Capítulo 5. Evaluación experimental Casos de prueba Plataforma computacional Parámetros de Ejecución Análisis de resultados experimentales Evolución de los frentes de Pareto Frentes de Pareto obtenidos Análisis de métricas de calidad Análisis de la eficiencia computacional...95 Capítulo 6. Conclusiones y trabajo futuro...995 Lista de Algoritmos Algoritmo 1 Algoritmo Evolutivo Genérico...40 Algoritmo 2 Esquema de un Algoritmo Genético...41 Algoritmo 3 Esquema de un MOEA...47 Algoritmo 4 Esquema del NSGA...50 Algoritmo 5 Esquema de NPGA...51 Algoritmo 6 Esquema del MOGA...52 Algoritmo 7 Esquema del SPEA...53 Algoritmo 8 Esquema del SPEA Algoritmo 9 Esquema del PAES...55 Algoritmo 10 Esquema del NSGA-II...56 Algoritmo 11 Esquema del NPGA-II6 6 LISTA DE ALGORITMOS7 Capítulo 1. Introducción La principal virtud que ofrece la utilización de la computación heterogénea es la posibilidad de contar con un entorno de maquinas (entorno HC) con distintas capacidades de computo, esto es maquinas que están mejor preparadas para ejecutar tareas con cierto tipo de paralelismo. Es importante lograr que las tareas se asignen a las maquinas de una manera adecuada, para medir esto se pueden utilizar distintas métricas. El problema de despacho de tareas en redes heterogéneas consiste en determinar la asignación de las tareas a las maquinas presentes en el entorno HC, de modo de optimizar alguna métrica. En la mayoría de los casos estudiados en la literatura se proponen varias métricas a optimizar, por lo tanto nos encontramos ante un problema de optimización multiobjetivo. En el caso de los problemas de optimización multiobjetivo se busca encontrar un conjunto de soluciones que logren balancear los criterios de optimización que se esta intentando optimizar. Luego de obtener el conjunto de soluciones óptimas se puede elegir la solución más adecuada según la prioridad que se le establezcan a los objetivos. Es muy poco frecuente obtener una única solución que optimice a todas las funciones objetivo a la vez. El problema de despacho de tareas en redes heterogéneas en un problema NPdifícil, por lo tanto no es posible resolverlo utilizando técnicas deterministas, como por ejemplo backtracking. En estos casos surge la necesidad de utilizar técnicas que obtengan buenas soluciones rápidamente, aunque las mismas no sean las soluciones óptimas globales. Estas técnicas son conocidas como heurísticas. Dentro de las que se encuentran una familia de heurísticas llamadas algoritmos evolutivos, que están basadas en la teoría de la evolución, que operan sobre un conjunto de soluciones, que es evolucionado a partir de la aplicación de distintos operadores evolutivos, hasta que se cumple una condición de parada. El paralelismo es una forma de resolver problemas con necesidades de cómputo muy grandes, cuando no se cuenta con un procesador con el suficiente poder de cómputo para resolver dicho problema en un tiempo razonable. Esta técnica consiste en hacer que varios procesos se ejecuten en distintos procesadores de forma colaborativa, para resolver un problema común. El funcionamiento de los algoritmos evolutivos permite que sean fácilmente paralelizables. La aplicación del paralelismo a la computación evolutiva hace que se puedan resolver problemas de gran complejidad utilizando un conjunto de equipos con poder de cómputo relativamente pequeño. El presente documento resume la investigación realizada acerca de la computación heterogénea, sus características y aplicaciones a la resolución de problemas, así como los aspectos relacionados a las distintas versiones del problema de despacho de tareas en redes heterogéneas propuestas en la literatura, en especial acerca de la versión de dicho problema abordada en este trabajo. Por otra parte se resume la investigación realizada acerca de los algoritmos evolutivos como técnica de resolución de problemas, siendo los algoritmos evolutivos paralelos y los algoritmos evolutivos multiobjetivo técnicas fundamentales de este trabajo. Como producto de este trabajo se detalla la implementación de algunos algoritmos evolutivos multiobjetivos paralelos que buscan resolver el problema de asignación de tareas a procesadores de manera optima. El resto del documento se organiza del modo que se describe a continuación: el capítulo 2 introduce los aspectos relacionados con la computación heterogénea, que sirven como base para el resto del documento. En el capítulo 3 se explican los conceptos relacionados con la computación evolutiva, el paralelismo y su 78 8 CAPÍTULO 1. INTRODUCCIÓN aplicación a la resolución de problemas de optimización multiobjetivo, estos conceptos son la base de la implementación propuesta. En el capítulo 4 se presenta la propuesta de resolución del problema estudiado y su implementación, a su vez se describe las bibliotecas utilizadas como base de la implementación. En el capítulo 5 se presentan los resultados experimentales obtenidos, y por ultimo en el capitulo 6 se presentan las conclusiones acerca del trabajo.9 Capítulo 2. Computación heterogénea La computación heterogénea se trata de la utilización de un conjunto de computadores con distintas capacidades de cómputo para ejecutar un conjunto de tareas que presentan diferentes necesidades de cómputo. A lo largo del capitulo se presentarán diferentes aspectos relacionados con la computación heterogénea. En primer lugar se presentan conceptos generales relacionados con la computación heterogénea, como son: las ventajas de su utilización, los tipos de computaciones heterogéneas existentes, los perfiles de tareas que se pueden ejecutar, las técnicas de predicción de tiempos de ejecución de las tareas, entre otros aspectos. También se exponen algunos ejemplos de la utilización de la computación heterogénea para resolver problemas complejos. Por último se describe un modelo que se utiliza comúnmente para modelar los diferentes entornos HC y se presentan algunos trabajos realizados en el área. Estos trabajos incluyen: propuestas de heurísticas para la resolución del problema de asignación de tareas a maquinas en entornos HC, comparación del desempeño de distintas heurísticas, modelos de estimación de de tiempos de ejecución de tareas en maquinas, entre otros temas. El contenido de este capitulo esta basado fundamentalmente en algunos artículos publicados entre los que se encuentran [1, 2, 3, 4, 5, 36]. 2.1 Conceptos de computación heterogénea Antes de hablar de computación heterogénea es necesario definir algunos conceptos. Una meta-tarea es una colección de tareas independientes con distintas necesidades computacionales, además estas tareas se pueden descomponer en subtareas donde las mismas también tengan distintas necesidades computacionales. Por otro lado llamamos entorno HC a un conjunto de maquinas de alto rendimiento, donde las mismas pueden tener distintas capacidades de cómputo. La computación heterogénea se trata de la utilización de un entorno HC para ejecutar una meta-tarea. Un entorno HC es particularmente bueno para ejecutar un conjunto de tareas en el que las mismas necesitan distintos tipos de paralelismo (por ejemplo: MIMD, SIMD, etc.), ya que se pueden asignar las distintas tareas a la maquina que mejor se adapte a su ejecución. Es necesario aclarar que un entorno HC consiste, además de un conjunto heterogéneo de maquinas, en un conjunto heterogéneo de distintos elementos relacionados con su funcionamiento, como son: redes de alta velocidad, interfaces, sistemas operativos, protocolos de comunicación, entornos de programación, etc. Uno de los mayores retos de la computación de alto rendimiento es que las arquitecturas de máquina que son cada vez más avanzadas puedan obtener un mayor rendimiento. Sólo una pequeña fracción de este rendimiento se logra en muchos conjuntos de aplicaciones reales, esto se debe a que una meta-tarea típica puede tener diferentes tareas y/o subtareas con diferentes requisitos computacionales. Cuando dicha meta-tarea se ejecuta en una determinada máquina, la máquina pasa la mayor parte de su tiempo ejecutando tareas (o subtareas) que no son las más adecuadas para su arquitectura. Con los avances en las comunicaciones digitales de alta velocidad, se ha hecho posible la utilización de diferentes 910 10 CAPÍTULO 2. COMPUTACIÓN HETEROGÉNEA colecciones de máquinas de alto rendimiento en coordinación para resolver tareas de meta-tareas computacionalmente intensivas. La forma de realizar la programación en un entorno HC es distinta a la forma de realizar la programación en una maquina local. El programador local generalmente solo maneja un único sitio o un cluster y por lo general posee los recursos, en cambio el programador del entorno HC tiene que descubrir los recursos, planificar la ejecución de las tareas en el grid, y manejar la ejecución de las tareas. Desde la perspectiva de usuario un entorno HC es un entorno colaborativo para resolver problemas donde una o mas tareas pueden ser enviadas, sin que a este le interese si los recursos están o a quien le pertenecen dichos recursos. Con el fin de construir un entorno HC, es fundamental contar con un sistema de software común al entorno (o sea un middleware grid). Dado un conjunto de aplicaciones grid (meta-tarea) debemos determinar como planificarlas en los distintos recursos descentralizados con que cuenta el entorno HC. Estas aplicaciones como ya se mencionó anteriormente tienen un conjunto de tareas, y estas tareas son las que se tienen que mapear a las maquinas del entorno. Para esto hay varios aspectos a considerar como son, por ejemplo: las relaciones de dependencia que existen entre las distintas tareas y como pueden afectar a las decisiones de planificación, la heterogeneidad de los recursos y como esto afecta a la planificación, y los modelos de rendimiento que va a utilizar el planificador para determinar la calidad de la planificación. Las tareas pueden depender unas de otras, lo que hace más difícil la planificación. Cabe destacar que el mayor esfuerzo en la investigación de la planificación de tareas se ha ocupado de la planificación de tareas independientes, o planificación de tareas débilmente dependientes. Estos enfoques usan métodos analíticos para hacer una planificación deterministica o usan un análisis de datos empíricos y heurísticas de búsqueda para encontrar una buena solución. Si consideramos el problema de la planificación local vemos que los principales objetivos al momento de realizar la planificación de las tareas dentro del entorno HC son: i) superar la heterogeneidad de los recursos informáticos, ii) maximizar el rendimiento general del sistema, logrando alto rendimiento y alta tasa de utilización de recursos, iii) el apoyo a diversas aplicaciones de computación intensiva, como trabajos en lotes y aplicaciones paralelas (MPI, PVM, etc), y iv) suministrar funcionalidades para una ejecución robusta de tareas remotas, tales como E/S remotas confiables y una eficiente administración de trabajos que impliquen manejo de prioridad, migración y checkpointing [4]. El resultado que se obtiene es un sistema centralizado para la gestión de los recursos que ofrece un entorno fiable de computación distribuida local y maximiza la utilización de los recursos de un sitio local. Su planificación de recursos suele ser un proceso de emparejamiento oportunista que requiere una cierta manera de especificar y expresar los requisitos de las aplicaciones y los recursos. La planificación en un entorno HC es intrínsecamente más compleja que la planificación de los recursos locales ya que debe manipular la gestión de recursos a gran escala. En este entorno dinámico de computación distribuida, la disponibilidad de recursos varía dramáticamente. Por lo tanto, la planificación se convierte en muy difícil. Se ha realizado una amplia labor de investigación sobre problemas de planificación en sistemas distribuidos[4]. La investigación en el campo de la computación heterogénea está motivada por el hecho de que las máquinas de alto rendimiento pueden variar en sus capacidades y, por lo tanto, pueden variar su aptitud para los diferentes tipos de tareas y subtareas. Ejemplos de este tipo de máquinas son arquitecturas distribuidas de las grandes11 CAPÍTULO 2. COMPUTACIÓN HETEROGÉNEA 11 máquinas con memoria compartida (por ejemplo, un SIG 2800), multiprocesadores con memoria distribuida (por ejemplo, un IBM SP2), y pequeñas máquinas de memoria compartida (por ejemplo, un Sun Enterprise 3000 Server). Por otra parte, dos implementaciones de un determinado tipo de máquina pueden variar en la velocidad de la CPU, tamaño y estructura de la memoria caché, ancho de banda de E/S, etc. La aplicabilidad y la fuerza de los sistemas de HC derivan de su capacidad para mapear las distintas necesidades de las aplicaciones a los recursos apropiados. En un sistema HC general, se realiza una planificación que consiste en asignar tareas a máquinas (matcheo), y calcular el orden de ejecución de las tareas asignadas a cada máquina (planificación). El proceso de hacer el matcheo y la programación de las tareas se conoce como el mapeo. Las heurísticas que se utilizan para realizar el mapeo pueden agruparse en dos categorías: heurísticas de modo inmediato (online) y heurísticas de modo tratamiento por lotes (batch). En el modo inmediato una tarea es mapeada a una maquina tan pronto como llega al entorno. En el modo por lotes las tareas no son mapeadas a las maquinas cuando estas llegan, sino que se recogen en un conjunto que se examina por la estrategia de mapeo en momentos preestablecidos llamados eventos de mapeo. El objetivo de un entorno HC es asignar las tareas y subtareas a maquinas y planificar su ejecución de manera de optimizar alguna medida de performance. Esta medida puede ser tan simple como el tiempo de ejecución de la meta-tarea, o puede ser más compleja y ser una función matemática de varios factores tales como la ponderación de las prioridades de las tareas, tiempo de ejecución de las tareas, los requisitos de seguridad y necesidades de calidad de servicio (QoS). En [2] se presentan varios ejemplos de entornos HC, entre los que se encuentran: SmartNet, NetSolve, PVM and Hence, Globus Metacomputing Infrastructure Toolkit Ventajas de los sistemas heterogéneos Cuando se habla de sistemas homogéneos se hace referencia a un conjunto de maquinas de alto rendimiento, que tienen capacidades de computo similares. Los sistemas homogéneos convencionales suelen utilizar un modo de paralelismo en una determinada máquina (como SIMD, MIMD, o vector de transformación) y, por tanto, no puede satisfacer adecuadamente las necesidades de meta-tareas que requieren más de un tipo de paralelismo. Como resultado, cualquier tipo de máquina a menudo gasta mucho de su tiempo de ejecución en código al que no está adaptada. Por otro lado, muchas aplicaciones necesitan procesar la información en más de una categoría simultáneamente, con diferentes tipos de paralelismo en cada nivel. Por ejemplo, en el nivel más bajo de visión del computador, las operaciones de procesamiento de imágenes se aplican a la imagen cruda. Estos cálculos tienen un elevado porcentaje de paralelismo del tipo SIMD. En contraste, la computación de la compresión de imágenes en alto nivel expone características de paralelismo del tipo MIMD de grano grueso [1]. Para este tipo de aplicaciones, los usuarios de un sistema multiprocesador convencional deben conformarse con un rendimiento degradado en el hardware existente o adquirir maquinas más potentes. Cada tipo de sistema homogéneo adolece de limitaciones inherentes. Por ejemplo, se pueden emplear máquinas vectoriales que intercalan memoria con una unidad aritmética12 12 CAPÍTULO 2. COMPUTACIÓN HETEROGÉNEA lógica pipelined, lo que hace un alto rendimiento con millones de operaciones punto flotante por segundo (Mflops), pero si la distribución de datos de una metatarea y los cálculos resultantes no pueden explotar estas características el rendimiento se degrada severamente. Considerando la posibilidad de una aplicación de código mixto que tenga incorporados diferentes tipos de paralelismo. Supongamos que el código, al ejecutarse en una máquina de serial gasta 100 unidades de tiempo. Cuando este código se ejecuta en una máquina vectorial, la parte del código vectorial se ejecuta con rapidez, mientras que otras partes del código todavía tienen tiempos de ejecución relativamente más altos. Del mismo modo, el mismo código, al ejecutarse en un conjunto heterogéneo de máquinas (de modo que cada porción del código se ejecuta en una maquina que tenga el tipo de paralelismo adecuado para la ejecución de dicha porción de código) es probable que se pueda lograr un tiempo de ejecución menor. La heterogeneidad en los sistemas de computación no es un concepto totalmente nuevo. Varios tipos de procesadores para fines especiales han sido utilizados para proporcionar servicios específicos para mejorar el rendimiento del sistema. Uno de los más comunes es el manejo de la entrada/salida. Agregar unidades de punto flotante para complementar a los ordenadores centrales no es más que otro enfoque heterogéneo para mejorar el rendimiento del sistema. En computadoras de alto rendimiento, el concepto de heterogeneidad se manifiesta a nivel de instrucción en forma de varios tipos de unidades funcionales, tales como tuberías de aritmética vectorial y procesadores escalares rápidos. Sin embargo, los sistemas multiprocesador actuales en su mayoría siguen siendo homogéneos en lo que respecta al tipo de paralelismo apoyado por ellos. Tales sistemas han sido tradicionalmente clasificados en función del número de instrucciones y flujos de datos. Un entorno HC debe contar con los siguientes componentes: i) un conjunto heterogéneo de máquinas, ii) una red inteligente de alta velocidad conectando todas las maquinas, y iii) un entorno de programación fácil de usar. HC permite a un sistema dado adaptarse a una amplia gama de aplicaciones aumentándolas con funcionales específicas o con capacidades de rendimiento, sin necesidad de un rediseño completo. Dado que HC está compuesto por varios ordenadores autónomos, en general la tolerancia de fallas del sistema y la longevidad pueden mejorar. Como ya mencionamos los sistemas homogéneos tienen limitaciones para obtener una ejecución adecuada para una amplia gama de aplicaciones. Esto se debe a que los sistemas homogéneos utilizan un modo de paralelismo en una determinada maquina (SIMD, MIMD, etc.), de esta forma no pueden satisfacer las necesidades de las aplicaciones que requieren más de un tipo de paralelismo. Si una tarea necesita varios tipos de paralelismo y se ejecuta en un sistema homogéneo, la parte del código que corresponde al tipo de paralelismo de esa maquina se ejecutara rápidamente, pero el resto del código tendrá tiempos de ejecución grandes. Para solucionar este problema HC utiliza los sistemas existentes en un entorno integrado. Esto que permite adaptarse a una ampliar gama de aplicaciones, dando la posibilidad de que las tareas se ejecuten en una maquina que cuente con el tipo de paralelismo que la tarea requiera.13 CAPÍTULO 2. COMPUTACIÓN HETEROGÉNEA Tipos de sistemas heterogéneos Principalmente hay dos tipos de entornos HC: i) metacomputing, y ii) mixedmodecomputing [1]. En metacomputing existe una heterogeneidad de grano grueso, las instrucciones que requieren una clase particular de paralelismo se agrupan en módulos, cada modulo se ejecuta en una maquina paralela adecuada. Metacomputing se refiere a la heterogeneidad a nivel de módulo. En mixed-modecomputing existe una heterogeneidad de grano fino, Los programas que tienen este tipo de heterogeneidad no son adecuados para si ejecución en un conjunto heterogéneo de maquinas porque la sobrecarga de la comunicación debido a los frecuentes intercambios de información entre maquinas puede convertirse en un cuello de botella. Aquí existe heterogeneidad a nivel de instrucciones. Sin embargo, estos programas se pueden ejecutar de manera eficiente en una sola máquina, como PASM (Particionable SIMD/MIMD), que incorpora modos heterogéneos de computación. mixed-modecomputing se refiere a la heterogeneidad a nivel de instrucciones. Las maquinas de modo mixto pueden lograr grandes speedups para una heterogeneidad de grano fino utilizando el modo mixto de procesamiento disponible en una sola máquina. Una maquina de modo mixto, puede usar su capacidad de conmutación de modo para apoyar paralelismo SIMD/MIMD y superar la limitación de la sincronización del hardware, mejorando así su rendimiento de una máquina que opera solo en modo SIMD o MIMD Perfiles de tareas Los perfiles de las tareas especifican los tipos de cálculos que están presentes en cada tarea, esto se logra descomponiendo el código de la meta-tarea en bloques de código homogéneos basados en sus necesidades computacionales. El análisis de los perfiles de las tareas proporcionan la información necesaria para el mapeo de las tareas en las distintas maquinas del entorno HC. El conjunto de tipos de código definidos se basa en las características de las arquitecturas de máquina disponibles y los requisitos del procesamiento de la metatarea que se están considerando para la ejecución en el entorno HC. Este conjunto de tipos de código será una función de los códigos de las tareas de la meta-tarea, y los tipos y tamaños de los conjuntos de datos del proceso. Por otro lado la evaluación comparativa proporciona una medida de qué tan bien cada una de las máquinas disponibles en el entorno HC realiza cada uno de los tipos de código. En combinación, los perfiles de tareas y evaluación comparativa analítica proporcionan la información necesaria para el paso del matcheo y la programación. El desempeño de un determinado tipo de código en un determinado tipo de máquina es una función multi- variable. Las variables que pueden influir en esta función son: los requisitos de la meta-tarea (por ejemplo, la precisión de los datos), el tamaño del conjunto de datos a ser procesados, el algoritmo que debe aplicarse, los esfuerzos del programador y compilador para optimizar el programa, y el sistema operativo y arquitectura de la máquina que ejecutará el tipo de código específico. La teoría de selección es una colección de formulaciones matemáticas que se han propuesto para optar por la maquina más adecuada para cada bloque de código. Muchas formulaciones definen a la evaluación comparativa como método para14 14 CAPÍTULO 2. COMPUTACIÓN HETEROGÉNEA medir la aceleración óptima de un determinado tipo de máquina que ejecuta el tipo de código mejor matcheado a un sistema de referencia. La relación entre la aceleración actual y la aceleración óptima define que tan bien matcheado es un bloque de código con cada tipo de máquina. En general, la aceleración real es inferior a la aceleración óptima [2]. El sistema paralelo de ventanas de evaluación (PAWS, parallel assessment windows system) y el sistema de gestión de supercomputación distribuida heterogénea (DHSMS, distributed heterogeneous supercomputing management system) representan ejemplos preliminares de los marcos para la aplicación de perfiles y evaluación comparativa. El prototipo PAWS consta de cuatro herramientas: la herramienta de caracterización de aplicación (meta-tarea), la herramienta de caracterización de la arquitectura, la herramienta de evaluación del rendimiento, y la herramienta de la pantalla gráfica interactiva. En primer lugar, la herramienta de caracterización de la aplicación transforma un programa escrito en un subconjunto específico de Ada en un lenguaje gráfico acíclico que ilustra la dependencia de datos del programa. La herramienta utiliza conjuntos de nodos y aristas para describir el comportamiento de las distintas funciones y procedimientos de un programa. Sin embargo, esta herramienta no realiza la descomposición de las tareas basada en las necesidades computacionales y capacidades de la máquina. Para las máquinas de referencia, la herramienta de caracterización de la arquitectura divide la arquitectura de un tipo específico de máquina en cuatro categorías: cálculo, movimiento de datos y comunicaciones, Entrada/Salida, y control. Cada categoría puede ser dividida en subsistemas. La herramienta de evaluación del rendimiento utiliza la información de la herramienta de caracterización de la arquitectura para generar información para las operaciones en una determinada máquina. Dos conjuntos de parámetros de rendimiento de una aplicación, los perfiles de paralelismo y los perfiles de ejecución, son generados por la herramienta de evaluación del rendimiento. Los perfiles de paralelismo describen límites superiores teóricos de rendimiento de las aplicaciones. Los perfiles de ejecución representan las estimaciones de rendimiento de las aplicaciones después de que se han dividido y se asigna a una máquina en particular. La herramienta de la pantalla gráfica interactiva es la interfaz de usuario para acceder a todas las demás herramientas en PAWS. DHSMS clasifica los resultados de los perfiles de tareas y de la evaluación comparativa dentro de un marco sistemático. En primer lugar, DHSMS genera un conjunto universal de códigos (USC) para los perfiles de tareas. El USC se puede considerar como un conjunto normalizado de programas evaluación comparativa. Al igual que la información del hardware organizacional mantenida por la herramienta de caracterización arquitectónica en PAWS, un USC se construye con una estructura jerárquica basada en las máquinas en el entorno HC. En el nivel más alto de esta estructura jerárquica, los modos de paralelismo son seleccionados para especificar las arquitecturas de máquinas. En el segundo nivel, características arquitectónicas más finas, como la organización del sistema de memoria, se pueden elegir. Esta estructura jerárquica es organizada de tal manera que la características arquitectónicas de cualquier nivel, son las opciones para una categoría determinada (por ejemplo, el tipo de interconexión de redes se utiliza). DHSMS asigna un tipo de código (es decir, las características computacionales) para cada ruta desde la raíz de la estructura jerárquica a un nodo hoja. Cada uno de dichos camino representa un conjunto específico de características arquitectónicas, definido por los nodos en el camino.15 CAPÍTULO 2. COMPUTACIÓN HETEROGÉNEA Técnicas de predicción Los recursos mas comúnmente solicitados por una aplicación grid son recursos de computación, datos y red. Es fácil obtener la información estática de recursos de las maquinas (velocidad de la CPU, memoria, etc.). Sin embargo los recursos en tiempo de ejecución (carga del CPU, memoria disponible, etc.) son variables debido a que pueden existir muchas aplicaciones corriendo. En el momento de tomar las decisiones para la planificación, se necesita alguna técnica de predicción de los parámetros de los recursos en tiempo de ejecución, esto es fundamental para maximizar el rendimiento de las aplicaciones. En la investigación de la predicción, el análisis se basa en la información histórica sobre la disponibilidad de los recursos y registros del rendimiento de los trabajos. Se pueden aplicar diversas técnicas estadísticas. Si el comportamiento de los recursos sigue o se supone que sigue cierta distribución, el proceso de análisis estocástico se puede utilizar para predecir las futuras disponibilidades de recursos en un punto fijo del tiempo o durante un cierto intervalo de tiempo. La técnica de regresión puede ser usada para la predicción en presencia de un modelo de desempeño. Hay dos maneras de predecir el tiempo de ejecución esperado de una aplicación, dependiendo si existe un modelo de performance o no. Si no existe un modelo de performance, se puede usar el análisis de datos empíricos. Usando este método, en primer lugar se utilizan registros de tiempo de ejecución anteriores de aplicaciones similares a través de algunos procedimientos de búsqueda basados en criterios de categorización de parámetros, tales como el rango de tiempos de ejecución admisibles. Entonces se puede calcular el promedio de tiempo de ejecución de aplicaciones anteriores dentro de un margen de error tolerable y utilizar esta estimación como predicción del tiempo de ejecución de la aplicación actual. La tasa de error se calcula utilizando alguna medida estadística, como el error absoluto, o al menos la raíz cuadrada de error. Si existe un modelo de performance, se puede predecir valores para los recursos que varían en tiempo de ejecución. En la investigación acerca de programación en un entorno HC, la mayoría de planificadores obtienen los parámetros de predicción de recursos de las predicciones del NWS (Network Weather Service) [4]. NWS es un agente desplegado en el entorno HC para supervisar periódicamente los recursos y el rendimiento. Normalmente, los monitores NWS realizan mediciones del rendimiento en intervalos de 10 segundos. Un ejemplo de uso del valor predicho por NWS, es el método de planificación estocástica propuesto por Schopf [4] para la planificación de los datos de entrada a los procesadores en tiempo de ejecución. Asume que w i sigue una distribución normal, y w i define como: w i = m i + sd i * TF donde m i es la media de tiempo de finalización previsto, sd i es la desviación estándar del tiempo de finalización previsto, y TF es un factor de ajuste estadístico que indica el número de sd i se pueden añadir a la predicción. El TF más grande es, la predicción más conservadora que puede ser considerado porque el planificador permitiría más variación en la disponibilidad de recursos. La introducción del factor TF permite al planificador controlar la calidad del modelo de desempeño para una aplicación específica. Intuitivamente, se planificará una tarea en una máquina con mayor potencia y menor variabilidad. Entre la potencia y la variabilidad, planificador optara por asignar una tarea a una máquina con baja potencia y baja variabilidad, en lugar de una máquina con mayor potencia pero mayor variabilidad. La idea detrás de la Mostrar más
GPU IMPLEMENTATIONS OF SCHEDULING HEURISTICS FOR HETEROGENEOUS COMPUTING ENVIRONMENTS MAURO CANABÉ SERGIO NESMACHNOW Centro de Cálculo, Facultad de Ingeniería Universidad de la República, Uruguay GPU IMPLEMENTATIONS Más detalles CLUSTER FING: PARALELISMO de MEMORIA DISTRIBUIDA
CLUSTER FING: PARALELISMO de MEMORIA DISTRIBUIDA SERGIO NESMACHNOW Centro de Cálculo, Instituto de Computación FACULTAD DE INGENIERÍA, UNIVERSIDAD DE LA REPÚBLICA, URUGUAY CONTENIDO Introducción: arquitecturas Más detalles :Arquitecturas Paralela basada en clusters.
Computación de altas prestaciones: Arquitecturas basadas en clusters Sesión n 1 :Arquitecturas Paralela basada en clusters. Jose Luis Bosque 1 Introducción Computación de altas prestaciones: resolver problemas Más detalles TIPOS DE PROCESAMIENTOS
TIPOS DE PROCESAMIENTOS El desempeño de un computador puede tener diferentes medidas de elección para diferentes usuarios. Para un usuario individual que está ejecutando un único programa, la computadora Más detalles Unidad I Fundamentos de Sistemas Distribuidos. M.C. Juan Carlos Olivares Rojas
Unidad I Fundamentos de Sistemas Distribuidos M.C. Juan Carlos Olivares Rojas Temario 1.1. Características de un sistema distribuido 1.2. Objetivos de los sistemas distribuidos 1.3. Ventajas y desventajas Más detalles Nicolás Zarco Arquitectura Avanzada 2 Cuatrimestre 2011
Clusters Nicolás Zarco Arquitectura Avanzada 2 Cuatrimestre 2011 Introducción Aplicaciones que requieren: Grandes capacidades de cómputo: Física de partículas, aerodinámica, genómica, etc. Tradicionalmente Más detalles GRID COMPUTING MALLA DE ORDENADORES
GRID COMPUTING MALLA DE ORDENADORES Introducción Concepto Compartir potencia computacional; Aprovechamiento de ciclos de procesamiento; El Grid Computing se enmarca dentro de la tecnología de computación Más detalles CAPITULO 1. Introducción a los Conceptos Generales de Bases de Datos Distribuidas
La Arquitectura de las Máquinas Virtuales. La virtualización se ha convertido en una importante herramienta en el diseño de sistemas de computación, las máquinas virtuales (VMs) son usadas en varias subdiciplinas, Más detalles Resolución de problemas en paralelo
Resolución de problemas en paralelo Algoritmos Paralelos Tema 1. Introducción a la computación paralela (segunda parte) Vicente Cerverón Universitat de València Resolución de problemas en paralelo Descomposición Más detalles Unidad 1: Conceptos generales de Sistemas Operativos.
Diseño del Sistema de Información ÍNDICE DESCRIPCIÓN Y OBJETIVOS... 2 ACTIVIDAD DSI 1: DEFINICIÓN DE LA ARQUITECTURA DEL SISTEMA... 7 Tarea DSI 1.1: Definición de Niveles de Arquitectura... 9 Tarea DSI Más detalles Concepto de Procesamiento Distribuido y Centralizado
Concepto de Procesamiento Distribuido y Centralizado Procesamiento Centralizado: En la década de los años 50 s las computadoras eran máquinas del tamaño de todo un cuarto con las siguientes características: Más detalles Unidad 1: Conceptos generales de Sistemas Operativos.
Unidad 1: Conceptos generales de Sistemas Operativos. Tema 1: Introducción: 1.1 Introducción: Qué es un sistema operativo?. 1.2 Conceptos clave de un sistema operativo. 1.3 El sistema operativo como administrador Más detalles Modelo de aplicaciones CUDA
Modelo de aplicaciones CUDA Utilización de GPGPUs: las placas gráficas se utilizan en el contexto de una CPU: host (CPU) + uno o varios device o GPUs Procesadores masivamente paralelos equipados con muchas Más detalles CUALIFICACIÓN PROGRAMACIÓN DE SISTEMAS INFORMÁTICOS PROFESIONAL. Nivel 3. Versión 6. Actualización
Página 1 de 19 CUALIFICACIÓN PROGRAMACIÓN DE SISTEMAS INFORMÁTICOS PROFESIONAL Familia Profesional Informática y Comunicaciones Nivel 3 Código IFC303_3 Versión 6 Situación Contraste externo Actualización Más detalles TUTORIAL: COMPUTACIÓN de ALTO DESEMPEÑO
TUTORIAL : COMPUTACIÓN de ALTO DESEMPEÑO SERGIO NESMACHNOW Centro de Cálculo, Instituto de Computación FACULTAD DE INGENIERÍA, UNIVERSIDAD DE LA REPÚBLICA, URUGUAY CONTENIDO Introducción Computadores paralelos Más detalles Memoria Compartida Distribuida (DSM) Sistema de Archivos
Memoria Compartida Distribuida (DSM) La memoria compartida distribuida es una abstracción que se propone como alternativa a la comunicación por mensajes. Memoria compartida basada en páginas: este esquema Más detalles Programación híbrida en arquitecturas cluster de multicore. Escalabilidad y comparación con memoria compartida y pasaje de mensajes.
Programación híbrida en arquitecturas cluster de multicore. Escalabilidad y comparación con memoria compartida y pasaje de mensajes. Fabiana Leibovich, Armando De Giusti, Marcelo Naiouf, Laura De Giusti, Más detalles Desarrollo de un cluster computacional para la compilación de. algoritmos en paralelo en el Observatorio Astronómico.
Desarrollo de un cluster computacional para la compilación de algoritmos en paralelo en el Observatorio Astronómico. John Jairo Parra Pérez Resumen Este artículo muestra cómo funciona la supercomputación Más detalles Plataformas paralelas
Plataformas paralelas Curso 2011-2012 Elementos de un computador paralelo Hardware: Múltiples procesadores Múltiples memorias Redes de interconexión Software: Sistemas Operativos paralelos Programas orientados Más detalles Grado en Ingeniería Informática
Grado en Ingeniería Informática Competencias Generales y trasversales De acuerdo con la resolución del Consejo de Universidades de fecha 3 de marzo de 2009, para obtener este título de grado en ingeniería Más detalles Especificación de la secuencia de mensajes que se han de intercambiar. Especificación del formato de los datos en los mensajes.
1 Capítulo 13: Arquitectura de aplicaciones. - Sommerville Contenidos del capítulo 13.1 Sistemas de procesamiento de datos 13.2 Sistemas de procesamiento de transacciones 13.3 Sistemas de procesamiento Más detalles Motivación: Control Distribuido:
Motivación: La clase pasada examinamos brevemente los conceptos de Diseño de sistemas de instrumentación inteligente e Instrumentación Virtual. Durante la discusión del diseño de sistemas de instrumentación, Más detalles Identificación rápida de cuellos de botella: Una mejor manera de realizar pruebas de carga. Documento técnico de Oracle Junio de 2009
Identificación rápida de cuellos de botella: Una mejor manera de realizar pruebas de carga Documento técnico de Oracle Junio de 2009 Identificación rápida de cuellos de botella: Una mejor manera de realizar Más detalles SISTEMAS DE GESTIÓN DE BASE DE DATOS SGBD / DBMS
Universidad de Carabobo Facultad Experimental de Ciencias y Tecnología Departamento de Computación Unidad Académica Base de Datos SISTEMAS DE GESTIÓN DE BASE DE DATOS SGBD / DBMS Integrantes: Fidel Gil Más detalles 4. Programación Paralela
4. Programación Paralela La necesidad que surge para resolver problemas que requieren tiempo elevado de cómputo origina lo que hoy se conoce como computación paralela. Mediante el uso concurrente de varios Más detalles SEDA. Servicio Ejecución Distribuida de Aplicaciones. Dossier de Presentación. Versión 1.0
SEDA Servicio Ejecución Distribuida de Aplicaciones Dossier de Presentación Versión 1.0 2 SEDA Edificio RD Sistemas 1 ÍNDICE 1 ÍNDICE 3 2 EVOLUCIÓN TECNOLÓGICA DE RDSISTEMAS5 3 ARQUITECTURA SEDA 6 3.1 Más detalles Análisis de desempeño y modelo de escalabilidad para SGP
Análisis de desempeño y modelo de escalabilidad para SGP Este documento es producto de la experiencia de Analítica en pruebas de stress sobre el software SGP. Estas pruebas se realizaron sobre un proceso Más detalles PLAN DE ESTUDIOS Y CONTENIDOS MÍNIMOS
. TEMA 37: Arquitecturas Cliente / Servidor. Tipos de cliente. Tipos de Servidor. Clasificación del software. Índice 1 INTRODUCCIÓN 2 2 CARACTERÍSTICAS 2 2.1 Características del cliente...2 2.2 Características Más detalles INTRODUCCIÓN. Que es un sistema operativo? - Es un programa. - Funciona como intermediario entre el usuario y los programas y el hardware
INTRODUCCIÓN Que es un sistema operativo? - Es un programa. - Funciona como intermediario entre el usuario y los programas y el hardware INTRODUCCIÓN METAS: Brindar un entorno para que los usuarios puedan Más detalles Programación orientada a
Programación orientada a objetos con Java Pedro Corcuera Dpto. Matemática Aplicada y Ciencias de la Computación Universidad de Cantabria corcuerp@unican.es Objetivos Presentar los conceptos de la programación Más detalles Informática y Programación Escuela de Ingenierías Industriales y Civiles Grado en Ingeniería en Ingeniería Química Curso 2010/2011
PROGRAMACIÓN BÁSICA DE LA COMPUTADORA 1 Introducción Un sistema de computadora total incluye tanto circuitería (hardware) como programación (software). El hardware consta de los componentes físicos y todo Más detalles Tema 1: Introducción a la gestión y planificación de redes
Tema 1: Introducción a la gestión y planificación de redes 1. Introducción general 2. Objetivos de la gestión de redes 3. Objetivos de la planificación de redes 4. Sistemas de gestión de red Gestión de Más detalles Tema 1. Conceptos fundamentales de los Sistemas Operativos
Tema 1. Conceptos fundamentales de los Sistemas Operativos 1. Introducción a los Sistemas Operativos. 1. Concepto de Sistema Operativo. Niveles del software. 2. Funciones principales de un Sistema Operativo. Más detalles CUALIFICACIÓN PROGRAMACIÓN DE SISTEMAS INFORMÁTICOS PROFESIONAL. Nivel 3. Versión 5 Situación RD 1201/2007 Actualización
3. OBJETIVOS 3.1. Objetivos Objetivos generales del título De acuerdo con lo establecido en el Libro Blanco y el acuerdo del plenario de la Conferencia de Directores y Decanos de Informática (Zaragoza, Más detalles Herramienta para la construcción de un cluster y la distribución de carga entre los nodos
Herramienta para la construcción de un cluster y la distribución de carga entre los nodos Rubén A. González García 1, Gabriel Gerónimo Castillo 2 1 Universidad Juárez Autónoma de Tabasco, Av. Universidad Más detalles Competencias generales vinculadas a los distintos módulos Módulo de Formación Básica
Competencias generales vinculadas a los distintos módulos Módulo de Formación Básica C1. Capacidad para la resolución de los problemas matemáticos que puedan plantearse en la ingeniería. Aptitud para aplicar Más detalles Computación paralela y entornos heterogéneos
Curso 2004/05 CIENCIAS Y TECNOLOGÍAS/23 I.S.B.N.: 84-7756-662-3 LUZ MARINA MORENO DE ANTONIO Computación paralela y entornos heterogéneos Director FRANCISCO ALMEIDA RODRÍGUEZ SOPORTES AUDIOVISUALES E INFORMÁTICOS Más detalles monitoreo efectivo del desempeño en entornos SAP
INFORME OFICIAL Septiembre de 2012 monitoreo efectivo del desempeño en entornos SAP Los desafíos clave y cómo CA Nimsoft Monitor ayuda a abordarlos agility made possible tabla de contenido resumen 3 Introducción Más detalles Solución basada en modelos para la predicción del tráfico en tiempo real
ES POSIBLE QUE LAS CIUDADES VAYAN UN PASO ADELANTE? Solución basada en modelos para la predicción del tráfico en tiempo real PTV Optima es la herramienta clave para el éxito en la gestión del tráfico. Más detalles Fundamentos de Sistemas Operativos
Fundamentos de Sistemas Operativos Sistemas Informáticos Fede Pérez Índice TEMA Fundamentos de Sistemas Operativos 1. - Introducción 2. - El Sistema Operativo como parte de un Sistema de Computación 2.1 Más detalles Rendimiento. Página 50
Rendimiento En general entender el rendimiento de redes es más arte que ciencia. La teoría no ayuda mucho. Fuentes de problemas de rendimiento: Congestión. Desequilibrios entre recursos. Por ejemplo, una Más detalles GENERALIDADES DE LA COMUNICACIÓN DE DATOS
Comunicaciones I Capítulo 1 GENERALIDADES DE LA COMUNICACIÓN DE DATOS 1 El Sistema de Comunicación Sistema de comunicación: Lleva a cabo el intercambio de información entre dos entes ubicados en los extremos Más detalles REPORTE OFICIAL OCTUBRE DE 2014. CA Unified Infrastructure Management para servidores
REPORTE OFICIAL OCTUBRE DE 2014 CA Unified Infrastructure Management para servidores 2 Reporte oficial: CA Unified Infrastructure Management para servidores Tabla de contenidos Descripción general de la Más detalles Permite compartir recursos en forma coordinada y controlada para resolver problemas en organizaciones multiinstitucionales
The Anatomy of the Grid Enabling Scalable Virtual Organization Autores : Ian Foster, Carl Kesselman y Steven Tuecke. 2001 GRIDS y Organizaciones Virtuales Permite compartir recursos en forma coordinada Más detalles TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN PROFESOR: MSC. P. Norma Maya Pérez SISTEMAS OPERATIVOS
TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN PROFESOR: MSC. P. Norma Maya Pérez SISTEMAS OPERATIVOS I. Fundamentos del sistema operativo. OBJETIVO: El alumno seleccionará un sistema operativo de acuerdo Más detalles Denominación de la materia. N créditos ECTS = 36 carácter = MIXTA INGENIERIA DE COMPUTADORAS
Denominación de la materia INGENIERIA DE COMPUTADORAS N créditos ECTS = 36 carácter = MIXTA Ubicación dentro del plan de estudios y duración La materia Ingeniería de Computadoras está formada por 6 asignaturas Más detalles OptiRamp OptiRamp Sistema de Control de Despacho Avanzado para Ductos
OptiRamp OptiRamp Sistema de Control de Despacho Avanzado para Ductos Los sistemas de control, SCADAs, y servidores de datos históricos han evolucionado para proveer una extensa cantidad de información Más detalles A continuación resolveremos parte de estas dudas, las no resueltas las trataremos adelante
Modulo 2. Inicio con Java Muchas veces encontramos en nuestro entorno referencias sobre Java, bien sea como lenguaje de programación o como plataforma, pero, que es en realidad Java?, cual es su historia?, Más detalles SUPLEMENTO EUROPASS AL TÍTULO
SUPLEMENTO EUROPASS AL TÍTULO DENOMINACIÓN DEL TÍTULO Técnico Superior en Desarrollo de Aplicaciones Web -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Más detalles Unidad 2: Gestión de Memoria
Unidad 2: Gestión de Memoria Tema 3, Gestión de Memoria: 3.1 Definiciones y técnicas básicas. 3.2 Gestión de memoria contigua: Partición, fragmentación, algoritmos de ubicación... 3.3 Paginación: Estructura Más detalles - Capacidad para dirigir las actividades objeto de los proyectos del ámbito de la informática de acuerdo con los conocimientos adquiridos.
Competencias generales - Capacidad para concebir, redactar, organizar, planificar, desarrollar y firmar proyectos en el ámbito de la ingeniería en informática que tengan por objeto, de acuerdo con los Más detalles Capítulo 1. Introducción. 1.1. Antecedentes
Capítulo 1. Introducción En este capítulo se presenta una descripción general del problema a investigar y el enfoque con el que se aborda. Se establece la necesidad de incorporar técnicas de análisis novedosas Más detalles Módulo: Modelos de programación para Big Data
Program. paralela/distribuida Módulo: Modelos de programación para Big Data (título original: Entornos de programación paralela basados en modelos/paradigmas) Fernando Pérez Costoya Introducción Big Data Más detalles Mosix2: La versión grid de Mosix para Linux-2.6
Mosix2: La versión grid de Mosix para Linux-2.6 Juan P. Caballero Lionel Gutierrez Javier Echaiz Jorge R. Ardenghi Laboratorio de Investigación de Sistemas Distribuidos (LISiDi) Departamento de Ciencias Más detalles OBJETIVOS DE LA MATERIA... 4 PROGRAMA ANALÍTICO. CONTENIDOS TEÓRICOS Y PRÁCTICOS... 5 BIBLIOGRAFIA... 7
UNIVERSIDAD NACIONAL DE LA MATANZA DEPARTAMENTO DE INGENIERIA E INVESTIGACIONES TECNOLOGICAS INGENIERIA EN INFORMATICA ARQUITECTURA DE COMPUTADORAS (1109) Profesor Titular: Ing. Fernando I. Szklanny PLANIFICACIÓN Más detalles Programación de red con Cisco Application Centric Infrastructure
Informe técnico Programación de red con Cisco Application Centric Infrastructure Descripción general En este documento se examina la compatibilidad de la programación de Cisco Application Centric Infrastructure Más detalles Visualización y modelado de elementos geográficos en dispositivos móviles. Capítulo 5: Aplicaciones cliente
Capítulo 5: Aplicaciones cliente 46 5.1 La aplicación cliente en la Pocket PC La aplicación desarrollada para el cliente en un dispositivo móvil como corresponde a la Pocket PC necesita una capa muy delgada Más detalles Anuncio de software ZP10-0030 de IBM Europe, Middle East and Africa, con fecha 16 de febrero de 2010
con fecha 16 de febrero de 2010 Los productos IBM Tivoli Storage Manager V6.2 cuentan con funciones adicionales de reducción de datos y compatibilidad mejorada con entornos virtualizados Índice 1 Visión Más detalles Ingeniería del Software. Diseño. Diseño en el PUD. Diseño de software. Patrones arquitectónicos. Diseño Orientado a Objetos en UML
Análisis del Sistema de Información ÍNDICE DESCRIPCIÓN Y OBJETIVOS... 2 ACTIVIDAD ASI 1: DEFINICIÓN DEL SISTEMA... 6 Tarea ASI 1.1: Determinación del Alcance del Sistema... 6 Tarea ASI 1.2: Identificación Más detalles Indice 1. Introducción a la computación en nube (cloud computing)
Tema 9. Centros de datos: computación en nube y organización física Indice 1. Introducción a la computación en nube (cloud computing) 2. Virtualización de recursos: consolidación de servidores 3. Arquitectura Más detalles COMPUTADORES MULTINUCLEO. Stallings W. Computer Organization and Architecture 8ed
COMPUTADORES MULTINUCLEO Stallings W. Computer Organization and Architecture 8ed Computador multinucleo Un computador multinúcleocombina dos o mas procesadores (llamados núcleos) en una única pieza de Más detalles Electrónica Digital II
Electrónica Digital II M. C. Felipe Santiago Espinosa Aplicaciones de los FPLDs Octubre / 2014 Aplicaciones de los FPLDs Los primeros FPLDs se usaron para hacer partes de diseños que no correspondían a Más detalles Documento de Competencias. Facultad de Informática, UPV/EHU. 1 Estructura general del Grado TE1 TE2 TE3 TE4 TE5 TE6 TE7 TE8
Documento de Competencias Grado en INGENIERÍA INFORMÁTICA Facultad de Informática, UPV/EHU 1 Estructura general del Grado 1.1 Fundamentos de Tecnología de los Principios de Diseño de Sistemas Digitales Más detalles Modelos de los sistemas distribuidos. Jorge Iván Meza Martínez jimezam@gmail.com
Contenidos Sistemas operativos Tema 3: Estructura del sistema operativo Componentes típicos del SO Servicios del SO Llamadas al sistema Programas del sistema El núcleo o kernel Modelos de diseño del SO Más detalles Existiría información que ayude a priorizar cada solicitud en función de su valor de negocio
IT Demand Management Autor: Norberto Figuerola En un mundo perfecto, el departamento de TI responde respondería a todas las solicitudes como una máquina bien aceitada. Cada proyecto propuesto sería aceptado Más detalles RAID. Los detalles de las características segunda y tercera, cambian según los distintos niveles RAID. RAID 0 no soporta la tercera característica.
RAID Como se dijo anteriormente, el ritmo de mejora de prestaciones en memoria secundaria ha sido considerablemente menor que en procesadores y en memoria principal. Esta desigualdad ha hecho, quizás, Más detalles Unidad didáctica 2: Metodologías de desarrollo de Bases de Datos. Unidad didáctica 1: Fase de análisis de requisitos Modelo E/R
índice Módulo A Unidad didáctica 1: Introducción a las Bases de Datos Unidad didáctica 2: Metodologías de desarrollo de Bases de Datos 3 19 Módulo B Unidad didáctica 1: Fase de análisis de requisitos Modelo Más detalles LA GESTIÓN DEL CONOCIMIENTO
Plan de Formación 2006 ESTRATEGIAS Y HABILIDADES DE GESTIÓN DIRECTIVA MÓDULO 9: 9 LA ADMINISTRACIÓN ELECTRÓNICA EN LA SOCIEDAD DE LA INFORMACIÓN LA GESTIÓN DEL CONOCIMIENTO José Ramón Pereda Negrete Jefe Más detalles Coordinador general: José Luis Gordillo Ruiz. Informe Técnico Final.
Construcción de una Grid Interinstitucional en México. Instituciones participantes: - Universidad Nacional Autónoma de México (UNAM) - Centro de Investigación Científica y de Educación Superior de Ensenada Más detalles Tema 2. Ingeniería del Software I feliu.trias@urjc.es
Tema 2 Ciclo de vida del software Ingeniería del Software I feliu.trias@urjc.es Índice Qué es el ciclo de vida del Software? El Estándar 12207 Modelos de proceso Qué es el Ciclo de Vida del SW? Definición Más detalles IDS-Virtualiza. IDS-Virtualiza. es la solución que ofrece IDSénia para la optimización de sus servidores y estaciones.
IDS-Virtualiza es la solución que ofrece IDSénia para la optimización de sus servidores y estaciones. Qué es la virtualización? La virtualización es una tecnología probada de software que está cambiando Más detalles INDICE. Prefacio Parte 1: sistemas operativos tradicionales
INDICE Prefacio Parte 1: sistemas operativos tradicionales 1 1 Introducción 1.1 Qué es un sistema operativo? 1.1.1 El sistema operativo como una maquina extendida 3 1.1.2 El sistema operativo como controlador Más detalles No se requiere que los discos sean del mismo tamaño ya que el objetivo es solamente adjuntar discos.
RAIDS MODO LINEAL Es un tipo de raid que muestra lógicamente un disco pero se compone de 2 o más discos. Solamente llena el disco 0 y cuando este está lleno sigue con el disco 1 y así sucesivamente. Este Más detalles Vientos cambiantes. Nuevas tecnologías para el control de turbinas y parques eólicos
Vientos cambiantes Nuevas tecnologías para el control de turbinas y parques eólicos ADRIAN TIMBUS A lo largo de los tiempos, uno de los principales anhelos del ser humano ha sido aprovechar la fuerza del Más detalles CAPITULO V. IMPLEMENTACIÓN DE UNA HERRAMIENTA INTEGRADA DE RED
CAPITULO V. IMPLEMENTACIÓN DE UNA HERRAMIENTA INTEGRADA DE RED En el presente capitulo se presenta una aplicación que aborda una herramienta de monitoreo de redes para soportar estudios de disponibilidad. Más detalles PRUEBAS DE SOFTWARE TECNICAS DE PRUEBA DE SOFTWARE
PRUEBAS DE SOFTWARE La prueba del software es un elemento crítico para la garantía de la calidad del software. El objetivo de la etapa de pruebas es garantizar la calidad del producto desarrollado. Además, Más detalles Clasificación de Áreas y Subáreas para las inscripciones al Doctorado en Ciencias Informáticas
Área Algoritmos y Estructuras de Datos Arquitectura de computadoras Subárea - Algoritmos - Análisis de algoritmos - Estructuras de Datos - Verificación y certificación de programas - Lógicas para el desarrollo Más detalles Respaldo y recuperación en ambientes VMware con Avamar 6.0
Informe técnico Respaldo y recuperación en ambientes VMware con Avamar 6.0 Análisis detallado Resumen Dado el ritmo cada vez más rápido de la implementación de ambientes virtuales en la nube de la compañía, Más detalles TEMA 1: VISIÓN GENERAL DE LOS SISTEMAS OPERATIVOS
TEMA 1: VISIÓN GENERAL DE LOS SISTEMAS OPERATIVOS 1. Concepto de Sistema Operativo. Funciones Un sistema operativo (S.O.) es un programa o conjunto de programas de control que tiene por objeto facilitar Más detalles Consultas de bases de datos potentes y fáciles de utilizar para DB2 en la plataforma IBM i. IBM DB2 Web Query para i
Consultas de bases de datos potentes y fáciles de utilizar para DB2 en la plataforma IBM i IBM DB2 Web Query para i Características principales Moderniza los informes de Query for IBM iseries (Query/400) Más detalles Soluciones innovadoras para optimizar su infraestructura TI. Virtualización con el sistema operativo i, PowerVM y Power Systems de IBM
Soluciones innovadoras para optimizar su infraestructura TI Virtualización con el sistema operativo i, PowerVM y Power Systems de IBM Características principales Tenga éxito en su negocio simplemente con Más detalles TEMA 1: INTRODUCCIÓN
1 DISEÑO Y DESARROLLO DE COMPILADORES TEMA 1: INTRODUCCIÓN Qué es un Compilador? Un compilador no es más que un traductor, es decir, un programa que nos permite pasar información de un lenguaje a otro. Más detalles Un modelo de proceso es una representación abstracta de un proceso. Presenta una descripción de un proceso desde una perspectiva particular.
El proceso software Un conjunto estructurado de actividades y resultados asociados que conducen a la creación de un producto de software Especificación: Definir la funcionalidad y las restricciones en Más detalles TIVOLI. GERZEL, Stella Maris. stellagerzel@yahoo.com.ar
TIVOLI GERZEL, Stella Maris stellagerzel@yahoo.com.ar Temas a Desarrollar: Definición de Tivoli. Tivoli Storage Manager. Tivoli Monitoring for Web Infrastructure Utilización del Tivoli Business Systems Más detalles SESIÓN 8 TIPOS DE SISTEMAS DE MANUFACTURA
SESIÓN 8 TIPOS DE SISTEMAS DE MANUFACTURA CONTENIDO Términos en manufactura Clasificación de sistemas de manufactura Beneficios y ejemplos de sistemas de manufactura Los componentes de un sistema de manufactura Más detalles ORGANIZACIÓN DE LOS SERVICIOS INFORMÁTICOS
1 ORGANIZACIÓN DE LOS SERVICIOS INFORMÁTICOS INTRODUCCIÓN La realización de trabajos utilizando los medios informáticos de una empresa requiere una cierta organización y destreza relativa tanto a los equipos, Más detalles 1. Instala servicios de configuración dinámica, describiendo sus características y aplicaciones.
Módulo Profesional: Servicios en Red. Código: 0227. Resultados de aprendizaje y criterios de evaluación. 1. Instala servicios de configuración dinámica, describiendo sus características y aplicaciones. Más detalles Resumen General del Manual de Organización y Funciones
Gerencia de Tecnologías de Información Resumen General del Manual de Organización y Funciones (El Manual de Organización y Funciones fue aprobado por Resolución Administrativa SBS N 354-2011, del 17 de Más detalles BASES DE DATOS. 1.1 Funciones de un DBMS
BASES DE DATOS Un DBMS, son programas denominados Sistemas Gestores de Base de Datos, abreviado SGBD, en inglés Data Base Management System (DBMS) que permiten almacenar y posteriormente acceder a los Más detalles Tema 13. Metodologías en el desarrollo de Sistemas de Software. Prof. Oscar Adolfo Vallejos
Tema 13 Metodologías en el desarrollo de Sistemas de Software Prof. Oscar Adolfo Vallejos Desarrollo de Sistemas de Software Objetivo Conceptos en el contexto más amplio de Software e Ingeniería de Software Más detalles Cristian Blanco www.cristianblanco.es
3.1.- INTRODUCCIÓN Para realizar el desarrollo de cualquier proyecto de software es necesario llevar una sistemática de trabajo, que nos asegure el éxito del mismo. Lo que tenemos que evitar, en el desarrollo Más detalles 2017 © DocPlayer.es Política de privacidad | Condiciones del servicio | Feedback

References: resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 Resolución 

Resolución 
 Resolución 
 resolución 
 resolución 
 Resolución