Paralelización de la factorización LDL T usando el lenguaje de programación paralela ZPL

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Paralelización de la factorización LDL T usando el lenguaje de programación paralela ZPL"

Transcripción

1 REVISTA INGENIERÍA UC. Vol. 15, N o 2, 72-80, 2008 Paralelización de la factorización LDL T usando el lenguaje de programación paralela ZPL Edwin Vargas, Enrique Flores, Demetrio Rey Lago Instituto de Matemática y Cálculo Aplicado, Facultad de Ingeniería, Universidad de Carabobo, Valencia, Venezuela vargase@uc.edu.ve,evflores@uc.edu.ve, drey@uc.edu.ve Resumen Se muestra la implementación de la factorización de una matriz simétrica positiva a la forma LDLT, usando el Lenguaje de Programación Paralela ZPL. Se hace una descripción del lenguaje ZPL, se realizan pruebas a matrices, y se determina la aceleración y la eficiencia variando la cantidad de procesadores. Se obtuvo como resultado la disminución del tiempo de ejecución del programa a medida que se aumenta el número de procesadores y se determinó que aproximadamente un 90% del tiempo de ejecución se consume en el algoritmo de multiplicación de una matriz por un vector.. Palabras clave: Factorización LDL T, programación paralela, ZPL. Parallelization of the LDLT decomposition with the ZPL programming language Abstract It is shown the parallelization of the LDLT factorization of a positive symmetrical matrix using the ZPL Parallel Programming Language. A brief description of the language ZPL is made, and tests to matrices are made, and acceleration and efficiency is determine varying the quantity of processors. The result obtained was a decreasing in the runtime of the program as it increases the number of processors and it was determined that approximately 90% of execution time is consumed in the algorithm of matrix - vector product. Keywords: LDL T decomposition, parallel programming, ZPL. 1. INTRODUCCIÓN La factorización de una matriz A de n x n, simétrica positiva, se realiza mediante el producto de tres matrices; una matriz L, o triangular inferior unitaria, una matriz D, o diagonal y una matriz L T, quedando A = LDL T, es decir, la matriz triangular inferior transpuesta [1], como se ilustra a continuación: a11 a21 a31 a a21 a22 a32 a42 L = a 31 a32 a 33 a43 L31 L a41 a42 a43 a44 L41 L42 L43 1 d L21 L31 L d2 L32 L d L d Este método de factorización, es llamado la Descomposición de Cholesky. Para este método la Matriz A es expresada en la forma: A = LDL T (1) Los elementos de las matrices L y D son determinados por medio de la ecuación (1), el elemento A n (i,j) de la Matriz A, se calcula a través de [2]: ó j = An ( i, j) LikdkLjk, 1 j i 1 (2) k= 1 j 1 = (, ) Lij dj An i j LikdkLjj, 1 j i 1 (3) k= 1 72 Rev. INGENIERÍA UC. Vol. 15, No 2, Agosto 2008

2 Vargas, Flores y Rey Lago mientras que los elementos de la matriz diagonal D se obtienen: ó con d i = A ( i, i) n i 1 di = An ( i, i) L k = 1 2 ik d i k = 1 k Una aplicación de la factorización LDL T está estrictamente ligada a la resolución de sistemas de ecuaciones. En matemática y álgebra lineal, un sistema lineal de ecuaciones es un conjunto de ecuaciones lineales sobre un cuerpo o un anillo conmutativo. El problema de los sistemas lineales de ecuaciones es uno de los más antiguos de la matemática y tiene una infinidad de aplicaciones, como en procesamiento digital de señales, estimación, predicción y más generalmente en programación lineal así como en la aproximación de problemas no lineales de análisis numérico. El desarrollo de la factorización de una matriz A de tamaño n por n simétrica positiva a través de la descomposición de Cholesky involucra gran cantidad de operaciones con matrices y vectores. Como el lenguaje de programación ZPL es un lenguaje orientado a operaciones con vectores y matrices que presenta buen desempeño tanto en computadoras secuenciales como en computadoras paralelas [3], se utilizará para desarrollar un algoritmo para realizar la mencionada factorización, se realizarán pruebas en un cluster de computadores con el algoritmo desarrollado que muestren los tiempos de procesamiento, la aceleración y la eficiencia variando el tamaño de las matrices de prueba y la cantidad de procesadores en el cluster. 2. PROGRAMACIÓN PARALELA Y UNA IN- TRODUCCIÓN AL LENGUAJE ZPL La programación paralela consiste en el uso de múltiples computadores, o de computadores con múltiples procesadores internos, para resolver un problema a alta velocidad. El paralelismo puede enfocarse L ik d k L ik, i 2 (4) (5) d1 = A n (1,1) (6) hacia la arquitectura (procesadores de memoria compartida, multiprocesadores de paso de mensajes), o hacia la programación (paralelismo de datos, paralelismo de tareas). Las técnicas de programación en esta área pueden clasificarse en paralelismo explicito (el programador es quien define el paralelismo dentro del programa) o paralelismo implícito (es el lenguaje de programación quien define el paralelismo) [3]. En cuanto al lenguaje ZPL, se puede mencionar que es un lenguaje de programación que es especialmente efectivo para calcular problemas de ciencias e ingeniería. Su intención es reemplazar lenguajes como Fortran y C en la computación técnica. Es un lenguaje de programación conveniente para cálculos computacionales de ingeniería y ciencias [4], ZPL es un lenguaje de programación implícitamente paralelo, fue diseñado para simplificar la programación de computadoras paralelas, los programadores no necesitan especificar cómo se ejecutan concurrentemente los cálculos, ni siquiera insertan comunicación entre procesos. Los programas escritos en ZPL, muestran una relativa simplicidad, lo que hace que sean fácil de leer y entender, conservando aún un modelo sofisticado de paralelismo [5]. Los programas de ZPL escriben pocos ciclos y realizan un mínimo de manipulación de índices. El concepto principal de este lenguaje es la región, la cual es un conjunto de índices de un rango fijo El rango r de una región es el producto cartesiano de un número finito de secuencias enteras; los límites superiores e inferiores son fijados por el programador. Uno de los operadores más utilizados en el manejo de matrices a través del Lenguaje ZPL, es el operador Reduce (<<), el cual es una de las formas funcionales que pueden ser usadas en cálculos globales. Su función es reducir los arreglos a unos de menor orden, o incluso escalares. El operador << es antecedido por otro operador aritmético para llevar a cabo las reducciones [4]. En este mismo orden de ideas, una de las características más importantes de ZPL es la habilidad de llenar una matriz con copias de una fila o columna, o más generalmente, el llenar un arreglo de dimensión mayor con copias de otro arreglo de dimensión menor. Esta operación, llamada flooding en ZPL es una generalización de la idea de la promoción escalar [4]. Rev. INGENIERÍA UC. Vol. 15, No 2, Agosto

3 Paralelización de la factorización LDL T usando el lenguaje ZPL 3. ALGORITMO DE FACTORIZACIÓN LDL T EN ZPL La programación de una aplicación paralela en ZPL consta de dos partes fundamentales, la configuración y definición de variables y regiones y la codificación del algoritmo haciendo uso de los operadores que hagan el uso más eficiente de la máquina paralela Configuración y definición de variables y regiones. La configuración y definición de variables se observan en la Figura 1 y consta de cuatro secciones: las variables de configuración (config var), la definición de las regiones, los tipos de datos a utilizar en el programa (type) y las variables a usar en el programa (var). Las variables de configuración (config var) son aquellos datos de entrada que se pueden modificar en el momento de invocar la ejecución del programa, para este caso se definió como variable de configuración: el orden la matriz cuadrada que se va a procesar. Luego se definieron tres regiones: la primera (R) conforma el espacio (filas y columnas) donde reside primariamente la matriz, luego se definieron dos regiones, una para la manipulación de vectores tipo fila (fila) y otra para el manejo de vectores tipo columna (col). Y por último, los tipos de datos a utilizar en el programa (type) y las variables a usar en el programa (var) Código del algoritmo paralelo El algoritmo para realizar la descomposición de Cholesky a una matriz A simétrica positiva, bajo el lenguaje de programación ZPL, es el mostrado en la Figura Datos 4. EXPERIMENTACIÓN Las matrices a utilizar, se generaron aleatoriamente, con elementos de tipo double. La dimensión de las mismas para los casos de prueba fueron: 100x100, 500x500 y 1000x1000. program LDLt; config var n : integer = 1000; region R = [1..n,1..n]; fila = [1,1..n]; col = [1..n,1]; -- Tamaño de la matriz -- Arreglo matricial de n por n -- Arreglo tipo vector fila de n elementos -- Arreglo tipo vector columna de n elementos type dtype = double; -- Dato de tipo real var f : file; -- Variable para lectura/escritura de archivos A, L,D : [R] dtype; -- Matriz de entrada simétrica, y matrices de salida time : double; -- Tiempo de duración del programa -- Variables Auxiliares V1 : [R] dtype; V, Diag :[fila] dtype; j : integer; Lf : [fila] dtype; Lcf : [R] dtype; Mmv : [R] dtype; Mmv1, Lj1 : [col] dtype; P1 : [fila] dtype; den, valor : double; Amaxj, Ajj, P : double; Ac : [col] dtype; Figura 1. Definición de las variables. 74 Rev. INGENIERÍA UC. Vol. 15, No 2, Agosto 2008

4 Vargas, Flores y Rey Lago for j := 1 to n do if j > 1 then -- Calculo de los elementos de la matriz D, -- almacenados en Diag [1,1..j-1] Lf := >>[j,1..j-1]l; [1,1..j-1] V:= Lf*Diag; [j,j] Ajj := max<< A; [1,1..j-1] P1 := Lf*V; [1,1..j-1] P := +<< P1; [1,j] V := Ajj - P; [1,j] Diag := max<< V; if j < n then -- Calculo de los elementos de la columna j por debajo de -- la diagonal de L [1,j] den := max<< V; [j+1..n,1] Ac := >>[j+1..n,j]a; -- Inicio de la Multiplicación de uma matriz por -- un vector [j+1..n,1..j-1] Lcf := >>[j+1..n,1..j-1]l; [1..n,1..j-1] V1 := >>[1,1..j-1] V; Mmv:= Lcf*V1; [Ar] Mmv1 := +<< [R] Mmv; -- Fin de la Multiplicación [j+1..n,1] [j+1..n,j] Lj1 := (Ac - Mmv1)/den; L:= >>[j+1..n,1] Lj1; end; else -- Calculo del primer elemento de la diagonal y la primera -- columna de L [j,j] Amaxj := max<< A; [1,1] V := Amaxj; [1,1] Diag := Amaxj; [2..n,1] L := A/Amaxj; end; [j,j] L:= 1; [1,j] [j,j] valor := max<< Diag; D := valor; end; Figura 2. Implementación del algoritmo de Factorización LDL T. Rev. INGENIERÍA UC. Vol. 15, No 2, Agosto

5 Paralelización de la factorización LDL T usando el lenguaje ZPL 4.2. Plataforma computacional Todas las pruebas se desarrollaron en el cluster NIMBUS de la Facultad de Ingeniería de la Universidad de Carabobo, el cual posee un total de 8 nodos; cuatro con un Procesador del tipo Intel PIV de 2.4 Ghz, 1000 MB de memoria RAM, y los cuatro restantes con un Procesador del tipo Intel PIV de 3.0 Ghz, 1000 MB de memoria RAM. Red de interconexión entre nodos: 1 Gigabit ethernet. La arquitectura del cluster en las pruebas hechas es un arreglo ( grid ) de n por 1, siendo n el número de procesadores, como se muestra en la Figura 3. El valor de n está comprendido desde 1 hasta Figura 3. Arquitectura del cluster para las pruebas. 5. RESULTADOS En las Tablas 1, 2 y 3 se observa el tiempo de ejecución, medido en segundo, la aceleración y la eficiencia del algoritmo implementado, junto al tiempo que tarda en realizar el producto matriz por vector y el porcentaje de este tiempo en relación al tiempo total de ejecución del programa. n Grid Procesos Tiempo Total (tt) Aceleración Tabla 1. Matriz 100 x 100. Eficiencia Tiempo Multiplicación de Matrices (tm) Porcentaje de tm respecto a tt 1x % 2x % 3x % 4x % 5x % 6x % 7x % 8x % Grid Procesos Tiempo Total (tt) Aceleración Tabla 2. Matriz 500 x 500. Eficiencia Tiempo Multiplicación de Matrices (tm) Porcentaje de tm respecto a tt 1x % 2x % 3x % 4x % 5x % 6x % 7x % 8x % 76 Rev. INGENIERÍA UC. Vol. 15, No 2, Agosto 2008

6 Vargas, Flores y Rey Lago En las Figuras 4, 5 y 6 se grafican los resultados de los tiempos de ejecución mostrados en las Tablas 1, 2 y 3 respectivamente. En la Figura 4 se evidencia que no existe una tendencia clara a la reducción del tiempo de ejecución del algoritmo a medida que se aumenta el número de procesadores. Caso distinto se aprecia en la Figura 5, donde se gráfica el tiempo de ejecución del programa para una matriz de mayor dimensión, donde se observa claramente como dicho tiempo disminuye a medida que se aumenta el número de procesadores, lo cual es consistente con la reducción del costo de comunicación respecto al cómputo útil del algoritmo sobre una cantidad de datos mayor. Tabla 3. Matriz 1000 x Grid Procesos Tiempo Total (tt) Aceleración Eficiencia Tiempo Multiplicación de Matrices (tm) Porcentaje de tm respecto a tt 1x % 2x % 3x % 4x % 5x % 6x % 7x % 8x % Tiempo de Ejecución Tiempo (s) 0,4 0,35 0,3 0,25 0,2 0,15 0,1 0, Número de Procesadores Figura 4. Tiempo de ejecución Matriz 100x100. Rev. INGENIERÍA UC. Vol. 15, No 2, Agosto

7 Paralelización de la factorización LDL T usando el lenguaje ZPL En la Figura 6, donde se grafica el tiempo de ejecución del algoritmo versus el número de procesadores para una matriz de 1000x1000, se evidencia una disminución de dicho tiempo a medida que se aumenta el número de procesadores. Aunque se observa que cuando se utilizan 5 procesadores el tiempo de ejecución aumenta de segundos a segundos, y luego comienza a disminuir nuevamente, esto se debe a la heterogeneidad del cluster, ya que las primeras 4 pruebas se realizaron con los procesadores de Tiempo de Ejecución Tiempo (s) Número de Procesadores Figura 5. Tiempo de ejecución Matriz 500x500 Tiempo de Ejecución Tiempo (s) Número de Procesadores Figura 6. Tiempo de ejecución Matriz 1000x Rev. INGENIERÍA UC. Vol. 15, No 2, Agosto 2008

8 Vargas, Flores y Rey Lago mayor velocidad (3.0 Ghz) mientras que una vez que se comienzan a realizar las pruebas con más de 4 procesadores, se toman los procesadores de menor velocidad (2.4 Ghz), haciendo que el tiempo de ejecución del algoritmo se rija por los procesadores de menor velocidad, ya que los procesadores de mayor velocidad deben esperar a que los de menor velocidad efectúen las operaciones y poder continuar con la ejecución. También se destaca lo señalado en la Tabla 2, en cuanto a la aceleración, que aumenta a medida que aumenta el número de procesadores. Por otro lado, observando el porcentaje de tiempo que el algoritmo tarda en realizar el ciclo de multiplicación de matriz por vector respecto al tiempo total de ejecución del algoritmo de factorización en las Tablas 1, 2 y 3, se puede concluir que el mismo en muchos casos se encuentra por encima del 90% 8. CONCLUSIONES Se presentó una primera versión de la factorización de una matriz A simétrica positiva a la forma LDL T mediante un algoritmo basado en los conceptos claves del lenguaje de programación paralelo ZPL como lo son el uso de regiones y los operadores paralelos. Las curvas de tiempo de ejecución de las matrices de prueba 100x100 no muestran una tendencia a disminuir cuando se aumenta el número de procesadores del cluster Nimbus. Esto puede deberse al alto costo de la comunicación entre los procesadores. En la matrices de prueba de 500x500 y 1000x1000 sí se observa una clara disminución del tiempo de ejecución a medida que se aumenta el número de procesadores, lo cual demuestra que la implementación hace buen uso de la comunicación entre procesadores. También se puede evidenciar, que a medida que se aumenta el tamaño de la matriz, ZPL permite mejorar el desempeño en cuanto al factor de aceleración. En cuanto al tiempo de ejecución del algoritmo de factorización de la matriz A, se puede mencionar, que la mayor parte del mismo se debe al tiempo que tarda en realizar el proceso de multiplicar una matriz por un vector. En el caso de la matriz 1000x1000, el porcentaje del tiempo de ejecución de la multiplicación de una matriz por un vector, respecto al tiempo total de la ejecución del programa, se encuentra por encima del 90%, como se evidencia en la Tabla RECOMENDACIONES El algoritmo de factorización LDL T propuesto puede mejorarse, ya que es una primera versión en la que se muestra de manera muy sencilla dicha factorización, sería provechoso agregar rutinas que optimicen los cálculos, como por ejemplo, haciendo uso de las técnicas de cómo el producto matriz-vector de la manera que lo implementan las rutinas BLAS, sólo que debe considerarse para ello la utilización de operadores que tengan poca comunicación para no degradar el rendimiento del algoritmo en arquitecturas multiprocesador. Como continuación de la presenta investigación, se recomienda la implementación de un algoritmo de multiplicación de una matriz por un vector, con la finalidad de disminuir los tiempos de ejecución del algoritmo de factorización de Cholesky. Sería provechoso evaluar el algoritmo usando un cluster o una supercomputadora con un mayor número de nodos y mayor capacidad de memoria, ya que algunas gráficas muestran una tendencia de disminución del tiempo de ejecución para un mayor número de nodos en el caso de matrices de gran tamaño. En virtud que los nodos del cluster donde se hicieron las pruebas no son iguales, también sería de interés hacer las mismas pruebas con un cluster cuyos nodos sean todos con las mismas características computacionales, y comparar los resultados con los obtenidos en el presente trabajo. 10. REFERENCIAS [1] Burden, R. y Faires, J. (2003) Análisis Numérico. Séptima Edición. Editorial Thomson. México. [2] Rabiner, L. y Schafer, R. Digital Processing of Speech Signals. Prentice-Hall. New Jersey. Estados Unidos. [3] Rey, D. y Canning, J. (2007). Streams: Una Librería de Habilitación de Paralelismo Mixto de Tareas en Cascada y Paralelismo de Datos para el Lenguaje Paralelo de Alto Nivel ZPL. Facultad de Ingeniería. Universidad de Carabobo. Venezuela. Rev. INGENIERÍA UC. Vol. 15, No 2, Agosto

9 [4] Snyder, L. (1999). A programmer s Guide to ZPL. The MIT Press. [5] Castellano, J., Ramírez, J. y Rey, D. (2007). Paralelización de la Factorización LU usando el Lenguaje ZPL. Instituto de Matemática y Cálculo Aplicado. Facultad de Ingeniería. Universidad de Carabobo. Venezuela. Paralelización de la factorización LDL T usando el lenguaje ZPL 80 Rev. INGENIERÍA UC. Vol. 15, No 2, Agosto 2008

INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ELÉCTRICA UNIDAD CULHUACÁN INTEGRANTES

INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ELÉCTRICA UNIDAD CULHUACÁN INTEGRANTES INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ELÉCTRICA UNIDAD CULHUACÁN INTEGRANTES CÁRDENAS ESPINOSA CÉSAR OCTAVIO racsec_05@hotmail.com Boleta: 2009350122 CASTILLO GUTIÉRREZ

Más detalles

Resolución de problemas en paralelo

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

ARREGLOS DEFINICION GENERAL DE ARREGLO

ARREGLOS DEFINICION GENERAL DE ARREGLO ARREGLOS DEFINICION GENERAL DE ARREGLO Conjunto de cantidades o valores homogéneos, que por su naturaleza se comportan de idéntica forma y deben de ser tratados en forma similar. Se les debe de dar un

Más detalles

Matrices. Definiciones básicas de matrices. www.math.com.mx. José de Jesús Angel Angel. jjaa@math.com.mx

Matrices. Definiciones básicas de matrices. www.math.com.mx. José de Jesús Angel Angel. jjaa@math.com.mx Matrices Definiciones básicas de matrices wwwmathcommx José de Jesús Angel Angel jjaa@mathcommx MathCon c 2007-2008 Contenido 1 Matrices 2 11 Matrices cuadradas 3 12 Matriz transpuesta 4 13 Matriz identidad

Más detalles

Tema 3 Resolución de Sistemas de Ecuaciones Lineales

Tema 3 Resolución de Sistemas de Ecuaciones Lineales Tema Resolución de Sistemas de Ecuaciones Lineales Índice Introducción 2 Método de Gauss 2 Resolución de sistemas triangulares 22 Triangulación por el método de Gauss 2 Variante Gauss-Jordan 24 Comentarios

Más detalles

Métodos Iterativos para Resolver Sistemas Lineales

Métodos Iterativos para Resolver Sistemas Lineales Métodos Iterativos para Resolver Sistemas Lineales Departamento de Matemáticas, CCIR/ITESM 17 de julio de 2009 Índice 3.1. Introducción............................................... 1 3.2. Objetivos................................................

Más detalles

Salvador Macías Hernández Rodolfo Gómez Vega Factorización LU. Programa 7/9/2003 Tarea No.4

Salvador Macías Hernández Rodolfo Gómez Vega Factorización LU. Programa 7/9/2003 Tarea No.4 E.99102.1 MÉTODOS COMPUTACIONALES EN INGENIERÍA Salvador Macías Hernández Rodolfo Gómez Vega Factorización LU. Programa 7/9/2003 Tarea No.4 INTRODUCCIÓN. Supongamos que A se puede factorizar como el producto

Más detalles

Algorítmica y Lenguajes de Programación. Ordenación (i)

Algorítmica y Lenguajes de Programación. Ordenación (i) Algorítmica y Lenguajes de Programación Ordenación (i) Ordenación. Introducción A lo largo del curso hemos visto distintas formas de almacenar datos: Vectores. Matrices. Ficheros Listas (pilas y colas)

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. 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

Definición 1.1.1. Dados dos números naturales m y n, una matriz de orden o dimensión m n es una tabla numérica rectangular con m filas y n columnas.

Definición 1.1.1. Dados dos números naturales m y n, una matriz de orden o dimensión m n es una tabla numérica rectangular con m filas y n columnas. Tema 1 Matrices Estructura del tema. Conceptos básicos y ejemplos Operaciones básicas con matrices Método de Gauss Rango de una matriz Concepto de matriz regular y propiedades Determinante asociado a una

Más detalles

Evaluación del rendimiento de procesadores Intel Nehalem. Modelos x7550, x5670 y x5570

Evaluación del rendimiento de procesadores Intel Nehalem. Modelos x7550, x5670 y x5570 Evaluación del rendimiento de procesadores Intel Nehalem. Modelos x7550, x5670 y x5570 Juan Carlos Fernández Rodríguez. Área de HPC. Centro Informático Científico de Andalucía (CICA) Junta de Andalucía

Más detalles

ESTRUCTURA DE DATOS: ARREGLOS

ESTRUCTURA DE DATOS: ARREGLOS ESTRUCTURA DE DATOS: ARREGLOS 1. Introduccion 2. Arreglos - Concepto - Caracteristicas 3. Arreglos Unidimensionales 4. Arreglos Bidimensionales 5. Ventajas del uso de arreglos 6. Ejemplo 1. Introducción

Más detalles

Resolución de Problemas

Resolución de Problemas Resolución de Problemas con algoritmos Colaboratorio de Computación Avanzada (CNCA) 2015 1 / 27 Contenidos 1 Introducción 2 Elementos de algoritmos Elementos Variables Estructuras de Control Condicionales

Más detalles

Un filtro general de respuesta al impulso finita con n etapas, cada una con un retardo independiente d i y ganancia a i.

Un filtro general de respuesta al impulso finita con n etapas, cada una con un retardo independiente d i y ganancia a i. Filtros Digitales Un filtro general de respuesta al impulso finita con n etapas, cada una con un retardo independiente d i y ganancia a i. En electrónica, ciencias computacionales y matemáticas, un filtro

Más detalles

MATRICES PRODUCTO DE MATRICES POTENCIAS NATURALES DE MATRICES CUADRADAS

MATRICES PRODUCTO DE MATRICES POTENCIAS NATURALES DE MATRICES CUADRADAS Tema 1.- MATRICES MATRICES PRODUCTO DE MATRICES POTENCIAS NATURALES DE MATRICES CUADRADAS Fundamentos Matemáticos de la Ingeniería 1 Un poco de historia Lord Cayley es uno de los fundadores de la teoría

Más detalles

Capacidad de procesamiento del compilador Python para el Sistema Operativo Windows y Linux Palabras Clave:

Capacidad de procesamiento del compilador Python para el Sistema Operativo Windows y Linux Palabras Clave: Capacidad de procesamiento del compilador Python para el Sistema Operativo Windows y Linux Stiven Unsihuay, Paulo Pereira, Norma León unsihuay_carlos@hotmail.com, paulopereiraa10@gmail.com, nleonl@usmp.pe

Más detalles

Matrices Invertibles y Elementos de Álgebra Matricial

Matrices Invertibles y Elementos de Álgebra Matricial Matrices Invertibles y Elementos de Álgebra Matricial Departamento de Matemáticas, CCIR/ITESM 12 de enero de 2011 Índice 91 Introducción 1 92 Transpuesta 1 93 Propiedades de la transpuesta 2 94 Matrices

Más detalles

4. Programación Paralela

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

CLUSTER FING: PARALELISMO de MEMORIA DISTRIBUIDA

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

1. INVERSA DE UNA MATRIZ REGULAR

1. INVERSA DE UNA MATRIZ REGULAR . INVERSA DE UNA MATRIZ REGULAR Calcular la inversa de una matriz regular es un trabajo bastante tedioso. A través de ejemplos se expondrán diferentes técnicas para calcular la matriz inversa de una matriz

Más detalles

Matrices: Conceptos y Operaciones Básicas

Matrices: Conceptos y Operaciones Básicas Matrices: Conceptos y Operaciones Básicas Departamento de Matemáticas, CCIR/ITESM 8 de septiembre de 010 Índice 111 Introducción 1 11 Matriz 1 113 Igualdad entre matrices 11 Matrices especiales 3 115 Suma

Más detalles

Definición de vectores

Definición de vectores Definición de vectores Un vector es todo segmento de recta dirigido en el espacio. Cada vector posee unas características que son: Origen: O también denominado Punto de aplicación. Es el punto exacto sobre

Más detalles

Matemáticas I: Hoja 3 Espacios vectoriales y subespacios vectoriales

Matemáticas I: Hoja 3 Espacios vectoriales y subespacios vectoriales Matemáticas I: Hoa 3 Espacios vectoriales y subespacios vectoriales Eercicio 1. Demostrar que los vectores v 1, v 2, v 3, v 4 expresados en la base canónica forman una base. Dar las coordenadas del vector

Más detalles

VI PLAN DE PRUEBAS, RESULTADOS Y RECOMENDACIONES

VI PLAN DE PRUEBAS, RESULTADOS Y RECOMENDACIONES VI PLAN DE PRUEBAS, RESULTADOS Y RECOMENDACIONES En la presente sección, se realiza el correspondiente plan de pruebas del prototipo con la finalidad de exponer las estrategias y recursos necesarios para

Más detalles

Conclusiones. Particionado Consciente de los Datos

Conclusiones. 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 detalles

PoliEstudio: Una herramienta computacional para la enseñanza de la Matemática, en secundaria

PoliEstudio: Una herramienta computacional para la enseñanza de la Matemática, en secundaria IV CIEMAC J.J. Fallas, J. Chavarría 1 PoliEstudio: Una herramienta computacional para la enseñanza de la Matemática, en secundaria Juan José Fallas Monge 1 Jeffry Chavarría Molina. Resumen PoliEstudio

Más detalles

Matrices equivalentes. El método de Gauss

Matrices equivalentes. El método de Gauss Matrices equivalentes. El método de Gauss Dada una matriz A cualquiera decimos que B es equivalente a A si podemos transformar A en B mediante una combinación de las siguientes operaciones: Multiplicar

Más detalles

Modelo de aplicaciones CUDA

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

Los mayores cambios se dieron en las décadas de los setenta, atribuidos principalmente a dos causas:

Los 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 detalles

I. RELACIONES Y FUNCIONES 1.1. PRODUCTO CARTESIANO { }

I. RELACIONES Y FUNCIONES 1.1. PRODUCTO CARTESIANO { } I. RELACIONES Y FUNCIONES PAREJAS ORDENADAS Una pareja ordenada se compone de dos elementos x y y, escribiéndose ( x, y ) donde x es el primer elemento y y el segundo elemento. Teniéndose que dos parejas

Más detalles

Objetivos Generales. Objetivos específicos. Que el estudiante:

Objetivos Generales. Objetivos específicos. Que el estudiante: ASIGNATURA: MÉTODOS NUMPERICOS I (ANÁLISIS Y PROCESAMIENTO DE LOS DATOS EXPERIMENTALES CON INTRODUCCIÓN A LA COMPUTACIÓN) Objetivos Generales Comprender y manejar los conceptos relacionados con el manejo,

Más detalles

1 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

1 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 detalles

Estructuras algebraicas

Estructuras algebraicas Tema 2 Estructuras algebraicas básicas 2.1. Operación interna Definición 29. Dados tres conjuntos A, B y C, se llama ley de composición en los conjuntos A y B y resultado en el conjunto C, y se denota

Más detalles

Apéndice A. Repaso de Matrices

Apéndice A. Repaso de Matrices Apéndice A. Repaso de Matrices.-Definición: Una matriz es una arreglo rectangular de números reales dispuestos en filas y columnas. Una matriz com m filas y n columnas se dice que es de orden m x n de

Más detalles

Capítulo 5: Comparación con ScaLAPACK

Capítulo 5: Comparación con ScaLAPACK Capítulo 5: Comparación con ScaLAPACK En este capítulo se presentan dos aspectos importantes en cuanto a la validez y utilización de los aportes de esta tesis: 1) Aplicación de los principios de paralelización

Más detalles

Tema 7: Programación con Matlab

Tema 7: Programación con Matlab Tema 7: Programación con Matlab 1. Introducción Matlab puede utilizarse como un lenguaje de programación que incluye todos los elementos necesarios. Añade la gran ventaja de poder incorporar a los programas

Más detalles

Métodos Computacionales 0302390

Métodos Computacionales 0302390 Métodos Computacionales 0302390 Fecha de actualización Tue, 28 Jul 2015 06:28:33-050 Usuario que realiza la actualización Facultad Autorización Vicedecano Última versión del curso 1 Número de Acta del

Más detalles

forma de entrenar a la nuerona en su aprendizaje.

forma de entrenar a la nuerona en su aprendizaje. Sistemas expertos e Inteligencia Artificial,Guía5 1 Facultad : Ingeniería Escuela : Computación Asignatura: Sistemas expertos e Inteligencia Artificial Tema: SISTEMAS BASADOS EN CONOCIMIENTO. Objetivo

Más detalles

by Tim Tran: https://picasaweb.google.com/lh/photo/sdo00o8wa-czfov3nd0eoa?full-exif=true

by Tim Tran: https://picasaweb.google.com/lh/photo/sdo00o8wa-czfov3nd0eoa?full-exif=true by Tim Tran: https://picasaweb.google.com/lh/photo/sdo00o8wa-czfov3nd0eoa?full-exif=true I. FUNDAMENTOS 3. Representación de la información Introducción a la Informática Curso de Acceso a la Universidad

Más detalles

Computación 1-2011 - Matrices dispersas

Computación 1-2011 - Matrices dispersas Computación 1-2011 - Matrices dispersas Situación: Matrices muy grandes Previsible gran porcentaje de valores = 0 Se busca una forma de representar esas matrices que cueste menos memoria y permita acelerar

Más detalles

Transformación de binario a decimal. Transformación de decimal a binario. ELECTRÓNICA DIGITAL

Transformación de binario a decimal. Transformación de decimal a binario. ELECTRÓNICA DIGITAL ELECTRÓNICA DIGITAL La electrónica es la rama de la ciencia que se ocupa del estudio de los circuitos y de sus componentes, que permiten modificar la corriente eléctrica amplificándola, atenuándola, rectificándola

Más detalles

Ejemplos de conversión de reales a enteros

Ejemplos de conversión de reales a enteros Ejemplos de conversión de reales a enteros Con el siguiente programa se pueden apreciar las diferencias entre las cuatro funciones para convertir de reales a enteros: program convertir_real_a_entero print

Más detalles

1.4.- D E S I G U A L D A D E S

1.4.- D E S I G U A L D A D E S 1.4.- D E S I G U A L D A D E S OBJETIVO: Que el alumno conozca y maneje las reglas empleadas en la resolución de desigualdades y las use para determinar el conjunto solución de una desigualdad dada y

Más detalles

Charla N 6: Utilidades de Consulta de datos.

Charla N 6: Utilidades de Consulta de datos. 1 Charla N 6: Utilidades de Consulta de datos. Objetivos Generales: La manipulación de los datos organizados en forma de lista, donde la lista relaciones diferentes ocurrencias de una información común,

Más detalles

Descomposición de dominios

Descomposición de dominios Descomposición de dominios Miguel Vargas 27/10/10 1/29 Contenido Contenido Solución de ecuaciones diferenciales con descomposición de dominios Dominios sin traslape, complemento de Schur Método alternante

Más detalles

DIRECTRICES Y ORIENTACIONES GENERALES PARA LAS PRUEBAS DE ACCESO A LA UNIVERSIDAD

DIRECTRICES Y ORIENTACIONES GENERALES PARA LAS PRUEBAS DE ACCESO A LA UNIVERSIDAD Curso Asignatura 2014/2015 MATEMÁTICAS II 1º Comentarios acerca del programa del segundo curso del Bachillerato, en relación con la Prueba de Acceso a la Universidad La siguiente relación de objetivos,

Más detalles

1. ESPACIOS VECTORIALES

1. ESPACIOS VECTORIALES 1 1. ESPACIOS VECTORIALES 1.1. ESPACIOS VECTORIALES. SUBESPACIOS VECTORIALES Denición 1. (Espacio vectorial) Decimos que un conjunto no vacío V es un espacio vectorial sobre un cuerpo K, o K-espacio vectorial,

Más detalles

Descripciones de las Habilidades de Primaria por Trimestre Materia: Matemáticas Grade: Kinder

Descripciones de las Habilidades de Primaria por Trimestre Materia: Matemáticas Grade: Kinder Grade: Kinder Medición Geometría Leer y escribir los números hasta 5 Entender que escribiendo los números representan la cantidad de objetos (0-5) Contar de uno en uno hasta 10 (empezar con cualquier número

Más detalles

3.1 DEFINICIÓN. Figura Nº 1. Vector

3.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 detalles

PRÁCTICAS VÍA INTERNET Célula de Clasificación

PRÁCTICAS VÍA INTERNET Célula de Clasificación PRÁCTICAS VÍA INTERNET Célula de Clasificación Operación Remota e Interfaz Web 1. Introducción Los variadores son convertidores de frecuencia encargados de modular la señal de alterna que recibe el motor.

Más detalles

Introducción a la Computación TFA

Introducción a la Computación TFA Introducción a la Computación TFA Departamento de Informática Facultad de Ciencias Físico, Matemáticas y Naturales- UNSL Lenguaje de Diseño de Algoritmos Estructura de Control Condicional Simple y Múltiple

Más detalles

Capítulo 4. Vectores y matrices. 4.1 Declaración de tablas. 4.2 Declaración estática de tablas

Capítulo 4. Vectores y matrices. 4.1 Declaración de tablas. 4.2 Declaración estática de tablas Capítulo 4 Vectores y matrices En FORTRAN se puede utilizar un tipo especial de variable que sirve, en particular, para almacenar vectores y matrices. De esta forma, se utiliza un sólo nombre para referirse

Más detalles

21.1.2. TEOREMA DE DETERMINACIÓN DE APLICACIONES LINEALES

21.1.2. TEOREMA DE DETERMINACIÓN DE APLICACIONES LINEALES Aplicaciones lineales. Matriz de una aplicación lineal 2 2. APLICACIONES LINEALES. MATRIZ DE UNA APLICACIÓN LINEAL El efecto que produce el cambio de coordenadas sobre una imagen situada en el plano sugiere

Más detalles

Tema: INSTALACIÓN Y PARTICIONAMIENTO DE DISCOS DUROS.

Tema: INSTALACIÓN Y PARTICIONAMIENTO DE DISCOS DUROS. 1 Facultad: Ingeniería Escuela: Electrónica Asignatura: Arquitectura de computadoras Lugar de ejecución: Lab. de arquitectura de computadoras, edif. de electrónica. Tema: INSTALACIÓN Y PARTICIONAMIENTO

Más detalles

UNIVERSIDAD DE ATACAMA

UNIVERSIDAD DE ATACAMA UNIVERSIDAD DE ATACAMA FACULTAD DE INGENIERÍA / DEPARTAMENTO DE MATEMÁTICA ALGEBRA II Guía de Matrices y Determinantes Primer año Plan Común de Ingeniería Segundo Semestre 2009 1. Hallar una matriz B que

Más detalles

SISTEMAS DE ECUACIONES LINEALES

SISTEMAS DE ECUACIONES LINEALES SISTEMAS DE ECUACIONES LINEALES INTRODUCCIÓN En el presente documento se explican detalladamente dos importantes temas: 1. Descomposición LU. 2. Método de Gauss-Seidel. Se trata de dos importantes herramientas

Más detalles

PROCESAMIENTO DIGITAL DE IMÁGENES MEDIANTE EL USO DE UN FPGA Y LENGUAJE VHDL

PROCESAMIENTO DIGITAL DE IMÁGENES MEDIANTE EL USO DE UN FPGA Y LENGUAJE VHDL PROCESAMIENTO DIGITAL DE IMÁGENES MEDIANTE EL USO DE UN FPGA Y LENGUAJE VHDL N. E. Chávez Rodríguez*, A. M. Vázquez Vargas** *Departamento de Computación **Departamento de Procesamiento Digital de Señales

Más detalles

Factorizaciones de Cholesky, matrices definidas. semidefinidas positivas.

Factorizaciones de Cholesky, matrices definidas. semidefinidas positivas. Factorizaciones de Cholesky, matrices definidas y semidefinidas positivas Héctor Manuel Mora Escobar Universidad Central, Bogotá hectormora@yahoo.com Junio de 2011 1 Introducción Este documento presenta,

Más detalles

Fundamentos de Matemática Aplicada. (Prácticas)

Fundamentos de Matemática Aplicada. (Prácticas) Fundamentos de Matemática Aplicada (Prácticas) Damián Ginestar Peiró UNIVERSIDAD POLITÉCNICA DE VALENCIA 1 Índice general 1. Matrices dispersas 3 1.0.1. Esquemas de almacenamiento.............. 3 1.0.2.

Más detalles

15. Arquitectura de los multiprocesadores. 16. Multiprocesadores de memoria compartida. 17. Multicomputadores.

15. 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 detalles

Fundamentos de la Programación

Fundamentos de la Programación Fundamentos de la Programación El Software Las operaciones que debe realizar el hardware son especificadas con una lista de instrucciones, llamadas programas o software. Dos grandes grupos de software

Más detalles

Apoyo para la preparación de los estudios de Ingeniería y Arquitectura Física (Preparación a la Universidad) Unidad 4: Vectores

Apoyo para la preparación de los estudios de Ingeniería y Arquitectura Física (Preparación a la Universidad) Unidad 4: Vectores Apoyo para la preparación de los estudios de Ingeniería y Arquitectura Física (Preparación a la Universidad) Unidad 4: Vectores Universidad Politécnica de Madrid 5 de marzo de 2010 2 4.1. Planificación

Más detalles

Primer Parcial de Programación 3 (1/10/2009)

Primer Parcial de Programación 3 (1/10/2009) Primer Parcial de Programación (/0/009) Instituto de Computación, Facultad de Ingeniería Este parcial dura horas y contiene carillas. El total de puntos es 0. En los enunciados llamamos C* a la extensión

Más detalles

8. CONCLUSIONES Y RECOMENDACIONES

8. CONCLUSIONES Y RECOMENDACIONES 8. CONCLUSIONES Y RECOMENDACIONES 8.1 Conclusiones En el proyecto de tesis Realización de software educativo para simular la dispersión de contaminantes atmosféricos se desarrolló un programa computacional

Más detalles

Cálculo Simbólico también es posible con GeoGebra

Cálculo Simbólico también es posible con GeoGebra www.fisem.org/web/union ISSN: 1815-0640 Número 34. Junio de 2013 páginas 151-167 Coordinado por Agustín Carrillo de Albornoz Cálculo Simbólico también es posible con GeoGebra Antes de exponer las posibilidades

Más detalles

CAPÍTULO 4: ALGORITMOS DE APRENDIZAJE

CAPÍTULO 4: ALGORITMOS DE APRENDIZAJE Capítulo 4 Algoritmos de Aprendizaje 26 CAPÍTULO 4: ALGORITMOS DE APRENDIZAJE En este capítulo se proporcionan las descripciones matemáticas de los principales algoritmos de aprendizaje para redes neuronales:

Más detalles

Construcción de cubos OLAP utilizando Business Intelligence Development Studio

Construcción de cubos OLAP utilizando Business Intelligence Development Studio Universidad Católica de Santa María Facultad de Ciencias e Ingenierías Físicas y Formales Informe de Trabajo Construcción de cubos OLAP utilizando Business Intelligence Development Studio Alumnos: Solange

Más detalles

Curso cero Matemáticas en informática :

Curso cero Matemáticas en informática : y Curso cero Matemáticas en informática : y Septiembre 2007 y y Se llama matriz de orden m n a cualquier conjunto de elementos dispuestos en m filas y n columnas: a 11 a 12 a 13 a 1n a 21 a 22 a 23 a 2n

Más detalles

Cómo?: Resolviendo el sistema lineal homógeneo que satisfacen las componentes de cualquier vector de S. x4 = x 1 x 3 = x 2 x 1

Cómo?: Resolviendo el sistema lineal homógeneo que satisfacen las componentes de cualquier vector de S. x4 = x 1 x 3 = x 2 x 1 . ESPACIOS VECTORIALES Consideremos el siguiente subconjunto de R 4 : S = {(x, x 2, x 3, x 4 )/x x 4 = 0 x 2 x 4 = x 3 a. Comprobar que S es subespacio vectorial de R 4. Para demostrar que S es un subespacio

Más detalles

Matrices invertibles. La inversa de una matriz

Matrices invertibles. La inversa de una matriz Matrices invertibles. La inversa de una matriz Objetivos. Estudiar la definición y las propiedades básicas de la matriz inversa. Más adelante en este curso vamos a estudiar criterios de invertibilidad

Más detalles

Pilas y Colas. Capítulo 3

Pilas y Colas. Capítulo 3 Pilas y Colas Capítulo 3 Pilas Una pila representa una estructura lineal de datos en que se puede agregar o quitar elementos únicamente por uno de los dos extremos. En consecuencia, los elementos de una

Más detalles

TP 0 - Implementación de codificador y estructura básica. BitsTranslation. 1.0

TP 0 - Implementación de codificador y estructura básica. BitsTranslation. 1.0 TP 0 - Implementación de codificador y estructura básica. BitsTranslation. 1.0 Gabriel Ostrowsky, Padrón Nro. 90.762 gaby.ostro@gmail.com Juan Manuel Gonzalez Durand, Padrón Nro. 91.187 juanma.durand@gmail.com

Más detalles

ALGEBRA LINEAL. Héctor Jairo Martínez R. Ana María Sanabria R.

ALGEBRA LINEAL. Héctor Jairo Martínez R. Ana María Sanabria R. ALGEBRA LINEAL Héctor Jairo Martínez R. Ana María Sanabria R. SEGUNDO SEMESTRE 8 Índice general. SISTEMAS DE ECUACIONES LINEALES.. Introducción................................................ Conceptos

Más detalles

TEMA: MANEJO DE TABLAS DINAMICAS EN MICROSOFT EXCEL 2013.

TEMA: MANEJO DE TABLAS DINAMICAS EN MICROSOFT EXCEL 2013. Empremática, Guía 8 1 TEMA: MANEJO DE TABLAS DINAMICAS EN MICROSOFT EXCEL 2013. Objetivos Facultad: Ingeniería Escuela: Computación Asignatura: Empremática Conocer el funcionamiento de una tabla dinámica.

Más detalles

Dirección de Planificación Universitaria Dirección de Planificación Universitaria 0819-07289 Panamá, Rep. de Panamá 0819-07289 Panamá, Rep.

Dirección de Planificación Universitaria Dirección de Planificación Universitaria 0819-07289 Panamá, Rep. de Panamá 0819-07289 Panamá, Rep. Comparación de las tasas de aprobación, reprobación, abandono y costo estudiante de dos cohortes en carreras de Licenciatura en Ingeniería en la Universidad Tecnológica de Panamá Luzmelia Bernal Caballero

Más detalles

Adquisición de Datos usando Matlab

Adquisición de Datos usando Matlab 21 Adquisición de Datos usando Matlab Bruno Vargas Tamani Facultad de Ingeniería Electrónica y Eléctrica, Universidad Nacional Mayor de San Marcos, Lima, Perú RESUMEN: La interconexión a nivel de computadoras

Más detalles

4 Pruebas y análisis del software

4 Pruebas y análisis del software 4 Pruebas y análisis del software En este capítulo se presentan una serie de simulaciones donde se analiza el desempeño de ambos sistemas programados en cuanto a exactitud con otros softwares que se encuentran

Más detalles

GPU IMPLEMENTATIONS OF SCHEDULING HEURISTICS FOR HETEROGENEOUS COMPUTING ENVIRONMENTS

GPU 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 detalles

RESULTADOS CONSULTA CIUDADANA VIRTUAL. Consulta Laboral en Línea

RESULTADOS CONSULTA CIUDADANA VIRTUAL. Consulta Laboral en Línea RESULTADOS CONSULTA CIUDADANA VIRTUAL Consulta Laboral en Línea Septiembre, 2015 1 Agradecimientos Ponemos a disposición de ustedes los resultados de la Consulta Ciudadana Virtual, efectuada en julio de

Más detalles

❷ Aritmética Binaria Entera

❷ Aritmética Binaria Entera ❷ Una de las principales aplicaciones de la electrónica digital es el diseño de dispositivos capaces de efectuar cálculos aritméticos, ya sea como principal objetivo (calculadoras, computadoras, máquinas

Más detalles

7. Conclusiones. 7.1 Resultados

7. Conclusiones. 7.1 Resultados 7. Conclusiones Una de las preguntas iniciales de este proyecto fue : Cuál es la importancia de resolver problemas NP-Completos?. Puede concluirse que el PAV como problema NP- Completo permite comprobar

Más detalles

Capitán de fragata ingeniero AGUSTÍN E. GONZÁLEZ MORALES. ÁLGEBRA PARA INGENIEROS (Solucionario)

Capitán de fragata ingeniero AGUSTÍN E. GONZÁLEZ MORALES. ÁLGEBRA PARA INGENIEROS (Solucionario) Capitán de fragata ingeniero AGUSTÍN E. GONZÁLEZ MORALES ÁLGEBRA PARA INGENIEROS (Solucionario) 2 Í N D I C E CAPÍTULO : MATRICES, DETERMINANTES Y SISTEMAS DE ECUACIONES LINEALES CAPÍTULO 2: ESPACIOS VECTORIALES

Más detalles

Una computadora de cualquier forma que se vea tiene dos tipos de componentes: El Hardware y el Software.

Una computadora de cualquier forma que se vea tiene dos tipos de componentes: El Hardware y el Software. ARQUITECTURA DE LAS COMPUTADORAS QUE ES UNA COMPUTADORA (UN ORDENADOR)? Existen numerosas definiciones de una computadora, entre ellas las siguientes: 1) Una computadora es un dispositivo capaz de realizar

Más detalles

18. Camino de datos y unidad de control

18. Camino de datos y unidad de control Oliverio J. Santana Jaria Sistemas Digitales Ingeniería Técnica en Informática de Sistemas Curso 2006 2007 18. Camino de datos y unidad de control Un La versatilidad una característica deseable los Los

Más detalles

RELACIONES DE RECURRENCIA

RELACIONES DE RECURRENCIA Unidad 3 RELACIONES DE RECURRENCIA 60 Capítulo 5 RECURSIÓN Objetivo general Conocer en forma introductoria los conceptos propios de la recurrencia en relación con matemática discreta. Objetivos específicos

Más detalles

Novedades en Q-flow 3.02

Novedades en Q-flow 3.02 Novedades en Q-flow 3.02 Introducción Uno de los objetivos principales de Q-flow 3.02 es adecuarse a las necesidades de grandes organizaciones. Por eso Q-flow 3.02 tiene una versión Enterprise que incluye

Más detalles

GUÍA DE TRABAJO Tecnología en Sistemas de Información

GUÍA DE TRABAJO Tecnología en Sistemas de Información 1. IDENTIFICACIÓN Asignatura Laboratorio Lógica y Programación Guía No. 1 Área Básica de la Ingeniería Nivel II Código LLI22 Pensum 10 Correquisito(s) LPI24 Prerrequisito(s) Créditos 2 TPS 2 TIS 4 TPT

Más detalles

Sistemas de Ecuaciones Lineales y Matrices

Sistemas de Ecuaciones Lineales y Matrices Sistemas de Ecuaciones Lineales y Matrices Oscar G Ibarra-Manzano, DSc Departamento de Area Básica - Tronco Común DES de Ingenierías Facultad de Ingeniería, Mecánica, Eléctrica y Electrónica Trimestre

Más detalles

Comenzaremos recordando algunas definiciones y propiedades estudiadas en el capítulo anterior.

Comenzaremos recordando algunas definiciones y propiedades estudiadas en el capítulo anterior. Capítulo 2 Matrices En el capítulo anterior hemos utilizado matrices para la resolución de sistemas de ecuaciones lineales y hemos visto que, para n, m N, el conjunto de las matrices de n filas y m columnas

Más detalles

ARBOLES ARBOLES BINARIOS ORDENADOS. REPRESENTACIÓN Y OPERACIONES

ARBOLES ARBOLES BINARIOS ORDENADOS. REPRESENTACIÓN Y OPERACIONES ARBOLES ARBOLES BINARIOS ORDENADOS. REPRESENTACIÓN Y OPERACIONES Introducción al tema a. Formar grupos de 4 personas b. Tomar una hoja en blanco y una lapicera o lápiz c. En la hoja en blanco diseña un

Más detalles

Tema 1 Introducción. Arquitectura básica y Sistemas Operativos. Fundamentos de Informática

Tema 1 Introducción. Arquitectura básica y Sistemas Operativos. Fundamentos de Informática Tema 1 Introducción. Arquitectura básica y Sistemas Operativos Fundamentos de Informática Índice Descripción de un ordenador Concepto básico de Sistema Operativo Codificación de la información 2 1 Descripción

Más detalles

4 APLICACIONES LINEALES. DIAGONALIZACIÓN

4 APLICACIONES LINEALES. DIAGONALIZACIÓN 4 APLICACIONES LINEALES DIAGONALIZACIÓN DE MATRICES En ocasiones, y con objeto de simplificar ciertos cálculos, es conveniente poder transformar una matriz en otra matriz lo más sencilla posible Esto nos

Más detalles

Tema 3. Medidas de tendencia central. 3.1. Introducción. Contenido

Tema 3. Medidas de tendencia central. 3.1. Introducción. Contenido Tema 3 Medidas de tendencia central Contenido 31 Introducción 1 32 Media aritmética 2 33 Media ponderada 3 34 Media geométrica 4 35 Mediana 5 351 Cálculo de la mediana para datos agrupados 5 36 Moda 6

Más detalles

TEMA 6. EIGENVALORES Y EIGENVECTORES

TEMA 6. EIGENVALORES Y EIGENVECTORES TEMA 6. EIGENVALORES Y EIGENVECTORES M. C. Roberto Rosales Flores INSTITUTO TECNOLÓGICO SUPERIOR DE TLAXCO Ingeniería en Logística M. C. Roberto Rosales Flores (ITST TEMA 6. EIGENVALORES Y EIGENVECTORES

Más detalles

Identificación de diferentes representaciones de funciones

Identificación de diferentes representaciones de funciones Grado 0 Matematicas - Unidad Reconozcamos otras características de la función Tema Identificación de diferentes representaciones de funciones Nombre: Curso: El concepto de función es una de los más importante

Más detalles

CRIPTOGRAFÍA SIMÉTRICA Y ASIMÉTRICA

CRIPTOGRAFÍA SIMÉTRICA Y ASIMÉTRICA CRIPTOGRAFÍA SIMÉTRICA Y ASIMÉTRICA Para generar una transmisión segura de datos, debemos contar con un canal que sea seguro, esto es debemos emplear técnicas de forma que los datos que se envían de una

Más detalles

35 Facultad de Ciencias Universidad de Los Andes Mérida-Venezuela. Potencial Eléctrico

35 Facultad de Ciencias Universidad de Los Andes Mérida-Venezuela. Potencial Eléctrico q 1 q 2 Prof. Félix Aguirre 35 Energía Electrostática Potencial Eléctrico La interacción electrostática es representada muy bien a través de la ley de Coulomb, esto es: mediante fuerzas. Existen, sin embargo,

Más detalles

Álgebra Lineal Ma1010

Álgebra Lineal Ma1010 Álgebra Lineal Ma1010 Mínimos Cuadrados Departamento de Matemáticas ITESM Mínimos Cuadrados Álgebra Lineal - p. 1/34 En esta sección veremos cómo se trabaja un sistema inconsistente. Esta situación es

Más detalles

Introducción a la Programación en MATLAB

Introducción a la Programación en MATLAB Introducción a la Programación en MATLAB La programación en MATLAB se realiza básicamente sobre archivos M, o M-Files. Se los denomina de esta forma debido a su extensión.m. Estos archivos son simple archivos

Más detalles