Resolución de problemas en paralelo
|
|
- Lorenzo Piñeiro Salas
- hace 8 años
- Vistas:
Transcripción
1 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
2 Resolución de problemas en paralelo Descomposición de problemas El primer paso para diseñar un algoritmo paralelo es descomponer el problema en problemas más pequeños. Estos subproblemas son asignados a procesadores para ser resueltos simultáneamente. Básicamente hay dos tipos de descomposición 1. Descomposición de dominio 2. Descomposición funcional Introducción a la Computación Paralela 34
3 Descomposición de dominio En la descomposición de dominio, también llamada paralelismo de datos, los datos son divididos en partes de aproximadamente el mismo tamaño y las partes son asignadas a diferentes procesadores. Cada procesador trabaja sólo com la parte de datos que le son asignados. Por supuesto, los procesadores pueden necesitar comunicarse para intercambiar datos. El paralelismo de datos permite mantener un flujo único de control y seguir el modelo SPMD (single program multiple data). El algoritmo con paralelismo de datos consiste en una secuencia de instrucciones aplicadas a distintos datos. Introducción a la Computación Paralela 35
4 Descomposición funcional La estrategia de descomposición de dominio puede no ser la más eficiente cuando las partes asignadas a los diferentes procesadores pueden requerir tiempos de proceso significativamente diferentes de unos a otros, sin que dichas diferencias puedan ser conocidas previamente. En tal caso el tiempo de ejecución viene determinado por el proceso que tarde más, mientras que los otros procesadores permanecen ociosos un tiempo. La descomposición funcional o paralelismo de tareas (también reparto dinámico de tareas) el problema se divide en un gran número de partes más pequeñas (muchas más partes que procesadores disponibles) y las subtareas son asignadas a los procesadores disponibles. Tan pronto como un procesador termina una subtarea, recibe otra subtarea hasta que queden resueltas todas. El paralelismo de tareas se implementa sobre un paradigma de maestro y esclavos. El proceso maestro va asignando las subtareas a los procesos esclavos, recogiendo los resultados producidos y asignando subtareas restantes. Introducción a la Computación Paralela 36
5 Paradigmas de programación paralela Los paradigmas de programación no están unívocamente ligados a las arquitecturas paralelas, aunque sí que guarden relación como se indicará, existen dos paradigmas principales de programar computadores paralelos: Programación paralela mediante memoria compartida (espacio de direcciones único) Programación paralela mediante paso de mensajes Introducción a la Computación Paralela 37
6 Programación paralela mediante memoria compartida El programador escribe el programa, bien empleando directivas de paralelismo de datos bien asumiendo explícitamente diferentes procesos que pueden acceder a un espacio de direcciones único, con variables globales compartidas. Este paradigma es apropiado para arquitecturas de memoria compartida, aunque el espacio de direcciones único también puede ser simulado sobre arquitecturas de memoria distribuida. Introducción a la Computación Paralela 38
7 Programación paralela mediante paso de mensajes El programador explícitamente divide el trabajo y los datos entre varios procesos y debe gestionar la comunicación de datos entre ellos. Esta aproximación es completamente flexible, si bien requiere un mayor trabajo del programador. Puede ser empleado en arquitecturas de memoria distribuida e incluso en redes de ordenadores, y también en arquitecturas de memoria compartida, aunque en ese caso los diferentes procesos utilizan partes de memoria independientes y separadas. Introducción a la Computación Paralela 39
8 Análisis de algoritmos paralelos Métricas Conceptos Concurrencia Tiempo de ejecución paralelo Coste paralelo Trabajo Aceleración Eficiencia Optimalidad Granularidad Sobrecostes Ley de Amdahl Ley de Gustaffon Introducción a la Computación Paralela 40
9 Análisis de algoritmos paralelos Aceleración (speed-up) S(p) = Execution time using one processor (best sequential algorithm) Execution time using a multiprocessor with p processors = t s t p donde t s es el tiempo de ejecución en un procesador secuencial y t p es el tiempo de ejecución en un computador paralelo. Debe usarse el tiempo del mejor algoritmo secuencial conocido. El algoritmo para la implementación paralela puede ser diferente. Puede usarse el tiempo (real) o el estimado por número de pasos Introducción a la Computación Paralela 41
10 Análisis de algoritmos paralelos Aceleración máxima La aceleración máxima es usualmente p con p procesadores (aceleración lineal). Es posible tener aceleración superlineal (mayor que p) pero sólo en casos específicos debidos: Mayor disponibilidad de memoria principal Algoritmos no deterministas Introducción a la Computación Paralela 42
11 Análisis de algoritmos paralelos Aceleración según la ley de Amdahl t s (a) One processor ft s Serial section (1 - f)t s Parallelizable sections (b) Multiple processors p processors t p (1 - f)t s /p Introducción a la Computación Paralela 43
12 Análisis de algoritmos paralelos Aceleración según la ley de Amdahl S(p) = t s p = ft s + (1 f )t s /p 1 + (p 1)f 20 f = 0% f = 5% f = 10% f = 20% Number of processors, p Introducción a la Computación Paralela 44
13 Aspectos de programación paralela El principal objetivo cuando se diseña un algoritmo paralelo y se escribe un programa paralelo es conseguir mejores prestaciones que una versión secuencial. Para ello hay que tener varios aspectos en consideración: equilibrado de la carga minimización de las comunicaciones solapamiento de computación y comunicaciones Introducción a la Computación Paralela 45
14 Aspectos de programación paralela Equilibrado de la carga El equilibrado de la carga es la labor de dividir equitativamente el trabajo entre los procesadores disponibles. Puede ser inmediato cuando el coste de las operaciones es el mismo para cada dato, en cuyo caso se procede a un simple paralelismo de datos, o no tanto cuando el tiempo de proceso depende de los valores de los datos. Introducción a la Computación Paralela 46
15 Aspectos de programación paralela Minimización de las comunicaciones El tiempo total para completar la ejecución es la preocupación principal de la programación paralela, y en él intervienen tres componentes: * tiempo de computación * tiempo ocioso (idle time) * tiempo de comunicación Introducción a la Computación Paralela 47
16 Aspectos de programación paralela Minimización de las comunicaciones El tiempo de computación es el tiempo empleado en realizar cálculos sobre los datos. Idealmente, esperaríamos que al disponer de P procesadores trabajando sobre un problema pudiésemos terminar el trabajo en una fracción de 1/P del tiempo empleado en un procesador secuencial. Este sería el caso si todo el tiempo de todos los procesadores pudiera ser empleado en realizar cálculos. El tiempo ocioso (idle time) es el tiempo que un procesador gasta esperando datos de otros procesadores. Durante este tiempo el procesador no realiza trabajo útil. También existen tiempos ociosos cuando determinada subsecuencia del problema no puede ser dividida entre los procesadores disponibles y sólo puede ser realizada por un procesador o un subconjunto de ellos. El tiempo de comunicación es el tiempo empleado en enviar y recibir datos en forma de mensajes. El coste de las comunicaciones en el tiempo total de ejecución puede ser expresado en términos de latencia y ancho de banda, siendo la latencia el tiempo necesario para preparar el envío de cada mensaje y el ancho de banda la velocidad de transmisión por dato de los que forman el mensaje. Los programas secuenciales no emplean comunicaciones entre procesos, por lo que debe minimizarse siempre el tiempo de comunicaciones que supone en todo caso un sobrecoste. Introducción a la Computación Paralela 48
17 Aspectos de programación paralela Solapamiento de computación y comunicaciones Siempre que sea posible, deben evitarse los tiempos ociosos, procurando que los procesadores realicen cálculos útiles mientras esperan datos necesarios provenientes de otros procesadores. Esto, que se puede conseguir mediante métodos de comunicación no bloqueantes, es siempre difícil y no existen modos generales de conseguirlo, diseñándose en cada caso para cada algoritmo. Introducción a la Computación Paralela 49
18 Descripción de algoritmos en pseudocódigo Emplearemos pseudocódigo para describir los algoritmos paralelos para poder analizarlos, como paso previo a su programación El pseudocódigo será sencillo, pero a la vez parecido a los lenguajes y estructuras que se usarán en la programación (codificación) paralela Existirán dos maneras de emplear pseudocódigo, según sea: para memoria compartida (espacio de direcciones único) para paso de mensajes Lo ejemplificamos con el problema de sumar con P proceos los N elementos de un vector Introducción a la Computación Paralela 50
19 Descripción de algoritmos en pseudocódigo Para el paradigma de memoria compartida (1) Pk (programa que ejecutará el proceso k, siendo k de 0 a P-1) variables globales v[n], suma, sumaparcial[p] inicio sumaparcial[k] = v[k*n/p] desde i=1 hasta N/P-1 con i++ sumaparcial[k] = sumaparcial[k] + v[k*n/p + i] (sigue ) Introducción a la Computación Paralela 51
20 Descripción de algoritmos en pseudocódigo Para el paradigma de memoria compartida (2) (continuación ) desde salto=1 hasta P/2 con salto*=2 si k MOD 2*salto == 0 sumaparcial[k] = sumaparcial[k] + sumaparcial[k + salto] si k==0 suma = sumaparcial[0] fin Introducción a la Computación Paralela 52
21 Descripción de algoritmos en pseudocódigo Para el paradigma de paso de mensajes (1) Pk (programa que ejecutará el proceso k, siendo k de 0 a P-1) variables v[n/p], suma, aux inicio suma = v[0] desde i=1 hasta N/P-1 con i++ suma = suma + v[i] (sigue ) Introducción a la Computación Paralela 53
22 Para el paradigma de paso de mensajes (2) (continuación ) desde salto=1 hasta P/2 con salto*=2 si k MOD 2*salto == 0 recibir(k+salto, REF aux) suma = suma + aux si_no si k MOD salto == 0 enviar(k-salto, suma) fin Descripción de algoritmos en pseudocódigo En este caso la súma total sólo la sabrá el P0 Introducción a la Computación Paralela 54
23 Descripción de algoritmos en pseudocódigo Ejercicio: resolver la suma mediante paso de mensajes para que todos los procesos acaben conociendo la suma total Ejercicio: resolver mediante los dos paradigmas de programación paralela el problema de normalizar un vector, esto es, dividir cada uno de sus componentes por su módulo (la raíz cuadrada de la suma de los cuadrados de cada elemento) Fin del tema 1 Introducción a la Computación Paralela 55
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 detallesCiclo de vida y Metodologías para el desarrollo de SW Definición de la metodología
Ciclo de vida y Metodologías para el desarrollo de SW Definición de la metodología La metodología para el desarrollo de software es un modo sistemático de realizar, gestionar y administrar un proyecto
Más detallesARQUITECTURA DE DISTRIBUCIÓN DE DATOS
4 ARQUITECTURA DE DISTRIBUCIÓN DE DATOS Contenido: Arquitectura de Distribución de Datos 4.1. Transparencia 4.1.1 Transparencia de Localización 4.1.2 Transparencia de Fragmentación 4.1.3 Transparencia
Más detallesProceso Unificado de Rational PROCESO UNIFICADO DE RATIONAL (RUP) El proceso de desarrollo de software tiene cuatro roles importantes:
PROCESO UNIFICADO DE RATIONAL (RUP) El proceso de desarrollo de software tiene cuatro roles importantes: 1. Proporcionar una guía de actividades para el trabajo en equipo. (Guía detallada para el desarrollo
Más detallesM.T.I. Arturo López Saldiña
M.T.I. Arturo López Saldiña Hoy en día, existen diversas aproximaciones al tema de cómo hacer que las personas trabajen dentro de una organización de manera colaborativa. El problema se vuelve más difícil
Más detallesIntroducción. Ciclo de vida de los Sistemas de Información. Diseño Conceptual
Introducción Algunas de las personas que trabajan con SGBD relacionales parecen preguntarse porqué deberían preocuparse del diseño de las bases de datos que utilizan. Después de todo, la mayoría de los
Más detallesEcuaciones de primer grado con dos incógnitas
Ecuaciones de primer grado con dos incógnitas Si decimos: "las edades de mis padres suman 120 años", podemos expresar esta frase algebraicamente de la siguiente forma: Entonces, Denominamos x a la edad
Más detalles3.1 INGENIERIA DE SOFTWARE ORIENTADO A OBJETOS OOSE (IVAR JACOBSON)
3.1 INGENIERIA DE SOFTWARE ORIENTADO A OBJETOS OOSE (IVAR JACOBSON) 3.1.1 Introducción Este método proporciona un soporte para el diseño creativo de productos de software, inclusive a escala industrial.
Más detallesDiseño de algoritmos
Diseño de algoritmos Jose Jesus García Rueda. Adaptado de El algoritmo, una iniciación a la programación (http://www.desarrolloweb.com/manuales/67/ http://www.desarrolloweb.com/manuales/67/) ) y de Diseño
Más detallesUNIDADES FUNCIONALES DEL ORDENADOR TEMA 3
UNIDADES FUNCIONALES DEL ORDENADOR TEMA 3 INTRODUCCIÓN El elemento hardware de un sistema básico de proceso de datos se puede estructurar en tres partes claramente diferenciadas en cuanto a sus funciones:
Más detallesLos mayores cambios se dieron en las décadas de los setenta, atribuidos principalmente a dos causas:
SISTEMAS DISTRIBUIDOS DE REDES 1. SISTEMAS DISTRIBUIDOS Introducción y generalidades La computación desde sus inicios ha sufrido muchos cambios, desde los grandes equipos que permitían realizar tareas
Más detallesSistemas Operativos. Clase 14: protección y seguridad.
Sistemas Operativos Clase 14: protección y seguridad. Seguridad y protección se emplean indistintamente, pero son dos conceptos diferentes. La seguridad es un concepto más general que engloba aspectos
Más detallesImplementación de algoritmos genéticos paralelos de grano burdo en redes locales de computadoras. Resumen
Implementación de algoritmos genéticos paralelos de grano burdo en redes locales de computadoras. Arturo Gómez Cortés y Raúl Leal Ascencio ITESO, Guadalajara Resumen El presente trabajo describe una arquitectura
Más detallesColección de Tesis Digitales Universidad de las Américas Puebla. Morales Salcedo, Raúl
1 Colección de Tesis Digitales Universidad de las Américas Puebla Morales Salcedo, Raúl En este último capitulo se hace un recuento de los logros alcanzados durante la elaboración de este proyecto de tesis,
Más detallesEstructuras de Control - Diagrama de Flujo
RESOLUCIÓN DE PROBLEMAS Y ALGORITMOS Ingeniería en Computación Ingeniería en Informática UNIVERSIDAD NACIONAL DE SAN LUIS DEPARTAMENTO DE INFORMÁTICA AÑO 2015 Índice 1. Programación estructurada 2 1.1.
Más detallesUNIDAD 2: Abstracción del Mundo real Al Paradigma Orientado a Objetos
2.1. Principios básicos del Modelado de Objetos UNIDAD 2: Abstracción del Mundo real Al Paradigma Orientado a Objetos Hoy en día muchos de los procesos que intervienen en un negocio o empresa y que resuelven
Más detallesSOLUCION DE MODELOS DE PROGRAMACION LINEAL EN UNA HOJA DE CALCULO. PROBLEMAS DE TRANSPORTE Y ASIGNACION.
UNIVERSIDAD NACIONAL DE LA PLATA FACULTAD DE INGENIERÍA DEPARTAMENTO DE INGENIERÍA DE LA PRODUCCIÓN INGENIERÍA INDUSTRIAL SOLUCION DE MODELOS DE PROGRAMACION LINEAL EN UNA HOJA DE CALCULO. PROBLEMAS DE
Más detallesMotores de Búsqueda Web Tarea Tema 2
Motores de Búsqueda Web Tarea Tema 2 71454586A Motores de Búsqueda Web Máster en Lenguajes y Sistemas Informáticos - Tecnologías del Lenguaje en la Web UNED 30/01/2011 Tarea Tema 2 Enunciado del ejercicio
Más detallesPlanificación de Procesos. Módulo 5. Departamento de Informática Facultad de Ingeniería Universidad Nacional de la Patagonia San Juan Bosco
Planificación de Procesos Módulo 5 Departamento de Informática Facultad de Ingeniería Universidad Nacional de la Patagonia San Juan Bosco Planificación de Procesos Conceptos Básicos Criterios de Planificación
Más detallesPROPÓSITO... 2 DETERMINANTES PARA UNA BUENA EXPERIENCIA DE USO...
Tabla de Contenido PROPÓSITO... 2 DETERMINANTES PARA UNA BUENA EXPERIENCIA DE USO... 2 1. LA PRESENCIA DE INFORMACIÓN Y AYUDA ÚTIL PARA COMPLETAR LOS TRÁMITES EN LÍNEA.... 2 2. LA DISPONIBILIDAD DE DIVERSOS
Más detallesMICQ. Trabajo Práctico Final Seminario de Ingeniería en Informática I 75.35. Facultad de Ingeniería, UBA. Junio 2002. Cátedra: Pablo Cosso
MICQ Facultad de Ingeniería, UBA. Junio 2002 Trabajo Práctico Final Seminario de Ingeniería en Informática I 75.35 Cátedra: Pablo Cosso Alumno: Diego Fernando Montaldo 75.300 1 de 1 Introducción Este documento
Más detallesSistemas Operativos. Sesión 5: Protocolos de enrutamiento vector distancia
Sistemas Operativos Sesión 5: Protocolos de enrutamiento vector distancia Contextualización Los protocolos de información de enrutamiento tienen la función de determinar cuál es la ruta adecuada que deben
Más detallesTEMA 3 PROFESOR: M.C. ALEJANDRO GUTIÉRREZ DÍAZ 2 3. PROCESAMIENTO DE CONSULTAS DISTRIBUIDAS
1 1 BASES DE DATOS DISTRIBUIDAS TEMA 3 PROFESOR: M.C. ALEJANDRO GUTIÉRREZ DÍAZ 2 3. PROCESAMIENTO DE CONSULTAS DISTRIBUIDAS 3.1 Metodología del procesamiento de consultas distribuidas 3.2 Estrategias de
Más detallesUNIVERSIDAD DE SALAMANCA
UNIVERSIDAD DE SALAMANCA FACULTAD DE CIENCIAS INGENIERÍA TÉCNICA EN INFORMÁTICA DE SISTEMAS Resumen del trabajo práctico realizado para la superación de la asignatura Proyecto Fin de Carrera. TÍTULO SISTEMA
Más detallesArquitectura de sistema de alta disponibilidad
Mysql Introducción MySQL Cluster esta diseñado para tener una arquitectura distribuida de nodos sin punto único de fallo. MySQL Cluster consiste en 3 tipos de nodos: 1. Nodos de almacenamiento, son los
Más detallesCapítulo 4 Análisis y diseño del software de los Robots
Capítulo 4 Análisis y diseño del software de los Robots En el capítulo del diseño mecánico de los robots se muestran los distintos sensores que se utilizarán como entradas, así como los motores que deberán
Más detallesCapítulo 5. Cliente-Servidor.
Capítulo 5. Cliente-Servidor. 5.1 Introducción En este capítulo hablaremos acerca de la arquitectura Cliente-Servidor, ya que para nuestra aplicación utilizamos ésta arquitectura al convertir en un servidor
Más detallesOlimpiada Internacional de Informática 2011 22 29 Julio de 2011, Ciudad de Pattaya, Tailandia Tareas de la Competencia Día 2 [COL] Español 1.0.
Loros Yanee es una admiradora de aves. Desde que leyó sobre IP over Avian Carriers (IPoAC), ella ha pasado mucho tiempo entrenando una bandada de loros inteligentes para enviar mensajes a largas distancias.
Más detallesLA LOGÍSTICA COMO FUENTE DE VENTAJAS COMPETITIVAS
LA LOGÍSTICA COMO FUENTE DE VENTAJAS COMPETITIVAS Los clientes compran un servicio basandose en el valor que reciben en comparacion con el coste en el que incurren. Por, lo tanto, el objetivo a largo plazo
Más detallesPROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.2 UML: Modelado de casos de uso
PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación II MODELOS y HERRAMIENTAS UML 1 1 Modelado de casos de uso (I) Un caso de uso es una técnica de modelado usada para describir lo que debería hacer
Más detallesConclusiones. Particionado Consciente de los Datos
Capítulo 6 Conclusiones Una de las principales conclusiones que se extraen de esta tesis es que para que un algoritmo de ordenación sea el más rápido para cualquier conjunto de datos a ordenar, debe ser
Más detalles2 Sea una unidad de disco duro de brazo móvil con las siguientes características:
1 Sea una unidad de disco duro de brazo móvil con las siguientes características: 18 superficies, 20.331 cilindros y 400 sectores por pista. Sectores de 1.024 bytes de información neta. Velocidad de rotación:
Más detallesTEMA 4: TÉCNICAS DE PLANIFICACIÓN DE PROYECTOS
TEMA 4: TÉCNICAS DE PLANIFICACIÓN DE PROYECTOS 4.1. Objetivos Establecer una relación esfuerzo / tiempo cronológico Estudiar el posible paralelismo de las tareas Situar las tareas en un esquema cronológico
Más detallesConmutación. Conmutación telefónica. Justificación y definición.
telefónica Justificación y definición de circuitos de mensajes de paquetes Comparación de las técnicas de conmutación Justificación y definición. Si se atiende a las arquitecturas y técnicas utilizadas
Más detallesTEMA 4. Unidades Funcionales del Computador
TEMA 4 Unidades Funcionales del Computador Álvarez, S., Bravo, S., Departamento de Informática y automática Universidad de Salamanca Introducción El elemento físico, electrónico o hardware de un sistema
Más detallesUnidad 1. Fundamentos en Gestión de Riesgos
1.1 Gestión de Proyectos Unidad 1. Fundamentos en Gestión de Riesgos La gestión de proyectos es una disciplina con la cual se integran los procesos propios de la gerencia o administración de proyectos.
Más detallesQué se entiende por diseño arquitectónico? Comprende el establecimiento de un marco de trabajo estructural básico para un sistema. Alude a la estructura general del software y el modo en que la estructura
Más detallesGMF Gestor de incidencias
GMF Gestor de incidencias Contenidos Contenidos... 1 Introducción... 2 El módulo de Gestión de Incidencias... 2 Vista del técnico... 2 Vista de usuario... 4 Workflow o flujo de trabajo... 5 Personalización
Más detallesEstructura y Tecnología de Computadores (ITIG) Luis Rincón Córcoles Ángel Serrano Sánchez de León
Estructura y Tecnología de Computadores (ITIG) Luis Rincón Córcoles Ángel Serrano Sánchez de León Programa. Introducción. 2. Elementos de almacenamiento. 3. Elementos de proceso. 4. Elementos de interconexión.
Más detallesAsignación de Procesadores
INTEGRANTES: Asignación de Procesadores Un sistema distribuido consta de varios procesadores. Estos se pueden organizar como colección de estaciones de trabajo personales, una pila pública de procesadores
Más detallesDiseño orientado al flujo de datos
Diseño orientado al flujo de datos Recordemos que el diseño es una actividad que consta de una serie de pasos, en los que partiendo de la especificación del sistema (de los propios requerimientos), obtenemos
Más detallesProceso de desarrollo del software modelo en cascada
Proceso de desarrollo del software modelo en cascada Análisis: Necesidades del usuario especificaciones Diseño: Descomposición en elementos que puedan desarrollarse por separado especificaciones de cada
Más detallesUnidad I. 1.1 Sistemas numéricos (Binario, Octal, Decimal, Hexadecimal)
Unidad I Sistemas numéricos 1.1 Sistemas numéricos (Binario, Octal, Decimal, Hexadecimal) Los computadores manipulan y almacenan los datos usando interruptores electrónicos que están ENCENDIDOS o APAGADOS.
Más detallesLa vida en un mundo centrado en la red
La vida en un mundo centrado en la red Aspectos básicos de networking: Capítulo 3 1 Objetivos En este capítulo aprenderá a: Describir cómo las funciones de las tres capas superiores del modelo OSI que
Más detallesAnálisis de propuestas de evaluación en las aulas de América Latina
Esta propuesta tiene como objetivo la operatoria con fracciones. Se espera del alumno la aplicación de un algoritmo para resolver las operaciones. Estas actividades comúnmente presentan numerosos ejercicios
Más detallesFundamentos del diseño 3ª edición (2002)
Unidades temáticas de Ingeniería del Software Fundamentos del diseño 3ª edición (2002) Facultad de Informática necesidad del diseño Las actividades de diseño afectan al éxito de la realización del software
Más detallesEjercicios Tema 1 1.- Supongamos que hay exactamente un switch de paquetes entre un host que envía y un host que recibe. Las tasas de transmisión entre el host que envía y el que recibe son R 1 y R 2 respectivamente.
Más detalles1. Configuración de IVA
BTBSOFT - Buenos Aires Mayo 2015 GUIA RAPIDA PARA EL REGIMEN INFORMATIVO DE COMPRAS Y VENTAS (CITI) El objetivo de este documento es detallar los procedimientos a tomar en cuenta para el nuevo aplicativo.
Más detallesComputación de Alta Performance Curso 2009 TOLERANCIA A FALLOS COMPUTACIÓN DE ALTA PERFORMANCE 2009 TOLERANCIA A FALLOS
Computación de Alta Performance Curso 2009 TOLERANCIA A FALLOS INTRODUCCIÓN Clusters cada vez más grandes y complejos. Tiempo de cómputo ininterrumpidos cada vez más largos. Componentes trabajando cerca
Más detallesPráctica 1 - Pista de Carreras 12407 - Programación II
1. Introducción Práctica 1 - Pista de Carreras 12407 - Programación II En esta práctica el objetivo es implementar una matriz de adyacencia para el juego Pista de Carreras. Con tal fin, primero hay que
Más detallesMODULO: MERCADEO. Acuerdo de Nivel de Servicio (ANS) Service Level Agreement (SLA) MODELO DE MUESTRA SIN VALOR COMERCIAL
MODULO: MERCADEO Acuerdo de Nivel de Servicio (ANS) Service Level Agreement (SLA) 1 Servicio de Soporte. El presente apartado constituye las condiciones de soporte y mantenimiento por parte de enncloud
Más detallesTEMA 8: SISTEMA DE COSTES POR PROCESOS. INDICE. 1.- Caracteristicas generales de los sistemas de costes por procesos.
Costes y Sistemas de Costes. Profesor: Jose Ignacio González Gómez. Página 1 de 6 TEMA 8: SISTEMA DE COSTES POR PROCESOS. INDICE 1.- CARACTERISTICAS GENERALES DE LOS SIS TEMAS DE COSTES POR PROCESOS...1
Más detallesCapitulo V Administración de memoria
Capitulo V Administración de memoria Introducción. Una de las tareas más importantes y complejas de un sistema operativo es la gestión de memoria. La gestión de memoria implica tratar la memoria principal
Más detalles1.4.1.2. Resumen... 1.4.2. ÁREA DE FACTURACIÓN::INFORMES::Pedidos...27 1.4.2.1. Detalle... 1.4.2.2. Resumen... 1.4.3. ÁREA DE
MANUAL DE USUARIO DE ABANQ 1 Índice de contenido 1 ÁREA DE FACTURACIÓN......4 1.1 ÁREA DE FACTURACIÓN::PRINCIPAL...4 1.1.1. ÁREA DE FACTURACIÓN::PRINCIPAL::EMPRESA...4 1.1.1.1. ÁREA DE FACTURACIÓN::PRINCIPAL::EMPRESA::General...4
Más detallesEn la actualidad ASCII es un código de 8 bits, también conocido como ASCII extendido, que aumenta su capacidad con 128 caracteres adicionales
Definición(1) Sistemas numéricos MIA José Rafael Rojano Cáceres Arquitectura de Computadoras I Un sistema de representación numérica es un sistema de lenguaje que consiste en: un conjunto ordenado de símbolos
Más detallesInstalación y mantenimiento de servicios de Internet. U.T.3.- Servicio DNS
Instalación y mantenimiento de servicios de Internet U.T.3.- Servicio DNS 1 Qué es el servicio DNS? A los usuarios de Internet les resulta complicado trabajar con direcciones IP, sobre todo porque son
Más detallesCONEXIÓN A INTERNET Y USO DEL ANCHO DE BANDA CON EQUIPOS VS-DVR
ESPAÑOL Nota Técnica CONEXIÓN A INTERNET Y USO DEL ANCHO DE BANDA CON EQUIPOS VS-DVR Fecha de revisión: Aplicación: Junio 2011 Equipos VS-DVR El acceso de un equipo VS-DVR a una red externa puede conseguirse
Más detallesProyecto Help Desk en plataforma SOA Alcance del Sistema Versión 1.2. Historia de revisiones
Proyecto Help Desk en plataforma SOA Alcance del Sistema Versión 1.2 Historia de revisiones Fecha Versión Descripción Autor 27/08/05 1.1 Definimos el Alcance del Sistema, en una primera instancia, priorizando
Más detallesINTRODUCCIÓ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 detallesESPAÑOL Nota Técnica CONEXIÓN A INTERNET Y USO DEL ANCHO DE BANDA CON EQUIPOS VX Y PECO
ESPAÑOL Nota Técnica CONEXIÓN A INTERNET Y USO DEL ANCHO DE BANDA CON EQUIPOS VX Y PECO Fecha de revisión: Aplicación: Septiembre 2014 Equipos VX y PeCo El acceso de un equipo a una red externa puede conseguirse
Más detallesCapítulo 1 Introducción a la Computación
Capítulo 1 Introducción a la Computación 1 MEMORIA PRINCIPAL (RAM) DISPOSITIVOS DE ENTRADA (Teclado, Ratón, etc) C P U DISPOSITIVOS DE SALIDA (Monitor, Impresora, etc.) ALMACENAMIENTO (Memoria Secundaria:
Más detallesPráctica 2: El problema de la sección crítica
Práctica 2: El problema de la sección crítica Programación de Sistemas Concurrentes y Distribuidos Grado de Ingeniería Informática Dpto. de Informática e Ingeniería de Sistemas, Escuela de Ingeniería y
Más detallesGPU IMPLEMENTATIONS OF SCHEDULING HEURISTICS FOR HETEROGENEOUS COMPUTING ENVIRONMENTS
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 detallesIntroducción a Computación
Curso: Modelización y simulación matemática de sistemas Metodología para su implementación computacional Introducción a Computación Esteban E. Mocskos (emocskos@dc.uba.ar) Facultades de Ciencias Exactas
Más detallesCOMUNICADO Nº 1 CONSULTAS LICITACION ABREVIADA AMPLIADA 03/2014 EXP. 07365/2013 PREGUNTAS DE LOS INTERESADOS EN EL LLAMADO
COMUNICADO Nº 1 CONSULTAS LICITACION ABREVIADA AMPLIADA 03/2014 EXP. 07365/2013 PREGUNTAS DE LOS INTERESADOS EN EL LLAMADO Frente a las consultas realizadas, se responde: Pregunta 1: En el Anexo II en
Más detallesTema 2 Conceptos básicos de programación. Fundamentos de Informática
Tema 2 Conceptos básicos de programación Fundamentos de Informática Índice Metodología de la programación Programación estructurada 2 Pasos a seguir para el desarrollo de un programa (fases): Análisis
Más detalles1 1 0 1 x 1 0 1 1 1 1 0 1 + 1 1 0 1 0 0 0 0 1 1 0 1 1 0 0 0 1 1 1 1
5.1.3 Multiplicación de números enteros. El algoritmo de la multiplicación tal y como se realizaría manualmente con operandos positivos de cuatro bits es el siguiente: 1 1 0 1 x 1 0 1 1 1 1 0 1 + 1 1 0
Más detallesIIC1102 - Introducción a la Programación -
IIC1102 - Introducción a la Programación - Sección 4 Introducción Programa y Carla Vairetti cvairetti@gmail.com Pontifícia Universidad Católica 5 de Marzo de 2009 Esquema 1 Programa del curso 2 3 Esquema
Más detallesUnidad II: Análisis de Redes
Unidad II: Análisis de Redes 2.1 Conceptos Básicos Un problema de redes es aquel que puede representarse por: LA IMPORTANCIA DE LOS MODELOS DE REDES: Muchos problemas comerciales pueden ser resueltos a
Más detallesLiLa Portal Guía para profesores
Library of Labs Lecturer s Guide LiLa Portal Guía para profesores Se espera que los profesores se encarguen de gestionar el aprendizaje de los alumnos, por lo que su objetivo es seleccionar de la lista
Más detallesEstructuras de Control - Diagrama de Flujo
Introducción a la Programación - Introducción a la Computación - Fundamentos de la Informática Ing. Electrónica - T.U.G. - T.U.E. - T.U.R. - T.U.W.- Prof. Tec. Elect. - T.U.T - T.U.M Área de Servicios
Más detallesTIPOS 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 detalleshttp://www.formarparacrecer.com/
En toda proporción el producto de los términos medios es igual al producto de los términos extremos Proporciones Una proporción es una igualdad entre dos o más razones Entonces Proporción es cuando tenemos
Más detallesPipelining o Segmentación de Instrucciones
Pipelining o Segmentación de Instrucciones La segmentación de instrucciones es similar al uso de una cadena de montaje en una fábrica de manufacturación. En las cadenas de montaje, el producto pasa a través
Más detalles3.1 DEFINICIÓN. Figura Nº 1. Vector
3.1 DEFINICIÓN Un vector (A) una magnitud física caracterizable mediante un módulo y una dirección (u orientación) en el espacio. Todo vector debe tener un origen marcado (M) con un punto y un final marcado
Más detallesEstructura de Computadores I Arquitectura de los MMOFPS
UNIVERSIDAD TÉCNICA FEDERICO SANTA MARÍA Estructura de Computadores I Arquitectura de los MMOFPS Integrantes: Luis Castro Valentina Yévenes RESUMEN Los MMOG (Massively Multiplayer Online Game), son juegos
Más detalles2 EL DOCUMENTO DE ESPECIFICACIONES
Ingeniería Informática Tecnología de la Programación TEMA 1 Documentación de programas. 1 LA DOCUMENTACIÓN DE PROGRAMAS En la ejecución de un proyecto informático o un programa software se deben de seguir
Más detallesUnicenter Service Desk r11.1. Guía para el Usuario Final de Service Desk
Unicenter Service Desk r11.1 Guía para el Usuario Final de Service Desk Índice Página Tema 3...Guía Para Usuario Final 3 Ingreso al Sistema 4.....Ventana de Inicio 4... Anuncios de Soporte Técnico 5...
Más detallesTema 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 detallesWindows Server 2003. Windows Server 2003
Windows Server 2003 Windows Server 2003 Es un sistema operativo de la familia Windows de la marca Microsoft para servidores que salió al mercado en el año 2003. Está basada en tecnología NT y su versión
Más detallesAdelacu Ltda. www.adelacu.com Fono +562-218-4749. Graballo+ Agosto de 2007. Graballo+ - Descripción funcional - 1 -
Graballo+ Agosto de 2007-1 - Índice Índice...2 Introducción...3 Características...4 DESCRIPCIÓN GENERAL...4 COMPONENTES Y CARACTERÍSTICAS DE LA SOLUCIÓN...5 Recepción de requerimientos...5 Atención de
Más detallesconstrucción de programas Prof. Eliana Guzmán U.
Unidad II. Metodología para la construcción de programas Prof. Eliana Guzmán U. Semestre: A-2015 Introducción Resolver un problema con una computadora conduce a la escritura de un programa y a su ejecución.
Más detallesCONCEPTOS BASICOS. Febrero 2003 Página - 1/10
CONCEPTOS BASICOS Febrero 2003 Página - 1/10 EL ESCRITORIO DE WINDOWS Se conoce como escritorio la zona habitual de trabajo con windows, cuando iniciamos windows entramos directamente dentro del escritorio,
Más detallesIncidencias: Todas las incidencias que ocurrirán durante el apadrinamiento de un niño se deben registrar para poder buscar soluciones.
Apadrinamiento ONG Estudio preliminar: Se desea diseñar una aplicación para la gestión de los apadrinamientos de una asociación ONG. Para ello el sistema proporcionara una interfaz al usuario para poder
Más detallesCMMI (Capability Maturity Model Integrated)
CMMI (Capability Maturity Model Integrated) El SEI (software engineering institute) a mediados de los 80 desarrolló el CMM (modelo de madurez de la capacidad de software). CMMI: CMM integrado, una mezcla
Más detallesREDES AD HOC INFORME DE REDES DE COMPUTADORES I. Felipe Muñoz 201321074-0 Jonathan Porta 201321054-6 Matías Contreras 201321034-1
REDES AD HOC INFORME DE REDES DE COMPUTADORES I Nombre ROL Felipe Muñoz 201321074-0 Jonathan Porta 201321054-6 Matías Contreras 201321034-1 Profesor: Agustín González Fecha: 28 de Julio del 2014 Nota:
Más detalles15. Arquitectura de los multiprocesadores. 16. Multiprocesadores de memoria compartida. 17. Multicomputadores.
UNIDAD TEMÁTICA 5: MULTIPROCESADORES. 15. Arquitectura de los multiprocesadores. 16. Multiprocesadores de memoria compartida. 17. Multicomputadores. 15-1 TEMA 15: ARQUITECTURA DE LOS MULTIPROCESADORES.
Más detallesProceso de resolución de un nombre de dominio. Javier Rodríguez Granados
Proceso de resolución de un nombre de dominio. Javier Rodríguez Granados Proceso de resolución de un nombre de dominio. La resolución de un nombre de dominio es la traducción de un FQDN a su correspondiente
Más detallesNo 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 detallesGERENCIA DE INTEGRACIÓN
GERENCIA DE INTEGRACIÓN CONTENIDO Desarrollo del plan Ejecución del plan Control de cambios INTRODUCCIÓN La gerencia de integración del proyecto incluye los procesos requeridos para asegurar que los diversos
Más detallesDiagrama de GANTT. Cómo crear un diagrama de GANTT
Diagrama de GANTT El diagrama de GANTT es una herramienta que le permite al usuario modelar la planificación de las tareas necesarias para la realización de un proyecto. Esta herramienta fue inventada
Más detallesTEMA 3. EL PROCESO DE COMPILACIÓN, DEL CÓDIGO FUENTE AL CÓDIGO MÁQUINA
TEMA 3. EL PROCESO DE COMPILACIÓN, DEL CÓDIGO FUENTE AL CÓDIGO MÁQUINA Programa: Algoritmo (secuencia no ambigua, finita y ordenada de instrucciones para la resolución de un determinado problema) traducido
Más detallesCAPÍTULO VI PREPARACIÓN DEL MODELO EN ALGOR. En este capítulo, se hablará acerca de los pasos a seguir para poder realizar el análisis de
CAPÍTULO VI PREPARACIÓN DEL MODELO EN ALGOR. En este capítulo, se hablará acerca de los pasos a seguir para poder realizar el análisis de cualquier modelo en el software Algor. La preparación de un modelo,
Más detallesEnterprise Resource Planning (ERP) SISTEMA DE PLANEACIÓN DE RECURSOS MASTER: ALFREDO CASTRO JIMENEZ
Enterprise Resource Planning (ERP) SISTEMA DE PLANEACIÓN DE RECURSOS MASTER: ALFREDO CASTRO JIMENEZ ERICK ANASTASIO FLORES 29/09/2010 UNIVERSIDAD AUTONOMA DE GUADALAJARA TECNOLOGIAS DE INFORMACION Qué
Más detallesDISEÑO DE FUNCIONES (TRATAMIENTOS)
DISEÑO DE FUNCIONES (TRATAMIENTOS) Diseño Estructurado. Estrategias para Derivar el Diagrama de Estructura. Diseño de Módulos Programables. 1. DISEÑO ESTRUCTURADO El Diseño es el proceso por el cual se
Más detallesEL ANALIS DE RIESGO PREVIO A LA TAREA. Pg. 1
EL ANALIS DE RIESGO PREVIO A LA TAREA Pg. 1 Pre-análisis de Seguridad (PTA) El Análisis Previo de Seguridad (PTA) se basa en analizar los trabajos a realizar, analizar los peligros asociados a los trabajos
Más detallesConcurrencia. Primitivas IPC con bloqueo
Concurrencia Primitivas IPC con bloqueo Primitivas de IPC con bloqueo La solución de Peterson es correcta, pero tiene el defecto de requerir espera ocupada: Cuando un proceso quiere entrar en su región
Más detallesCLUSTER 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 detallesTecnologías en la Educación Matemática. Expresiones. Datos. Expresiones Aritméticas. Expresiones Aritméticas 19/08/2014
Tecnologías en la Educación Matemática jac@cs.uns.edu.ar Dpto. de Ciencias e Ingeniería de la Computación UNIVERSIDAD NACIONAL DEL SUR 1 Datos Los algoritmos combinan datos con acciones. Los datos de entrada
Más detallesMovimiento a través de una. José San Martín
Movimiento a través de una curva José San Martín 1. Introducción Una vez definida la curva sobre la cual queremos movernos, el siguiente paso es definir ese movimiento. Este movimiento se realiza mediante
Más detalles