Solving Dense Linear Systems on Platforms with Multiple Hardware Accelerators
|
|
|
- Dolores González Vidal
- hace 10 años
- Vistas:
Transcripción
1 Solving Dense Linear Systems on Platforms with Multiple Hardware Accelerators Maribel Castillo, Francisco D. Igual, Rafael Mayo, Gregorio Quintana-Ortí, Enrique S. Quintana-Ortí, Robert van de Geijn Grupo de Arquitecturas y Computación de Altas Prestaciones Universidad Jaume I de Castellón (Spain) Maribel Castillo et al. Solving Dense Linear Systems on Platforms with Multiple Hardware Accelerators 1 / 23
2 Motivación Prestaciones GPU OpenGL + Cg Facilidad de programación GPU CUDA multigpu Maribel Castillo et al. Solving Dense Linear Systems on Platforms with Multiple Hardware Accelerators 2 / 23
3 Motivación Prestaciones GPU OpenGL + Cg Facilidad de programación GPU CUDA multigpu Maribel Castillo et al. Solving Dense Linear Systems on Platforms with Multiple Hardware Accelerators 2 / 23
4 Motivación Prestaciones GPU OpenGL + Cg Facilidad de programación GPU CUDA multigpu?? Maribel Castillo et al. Solving Dense Linear Systems on Platforms with Multiple Hardware Accelerators 2 / 23
5 Motivación Prestaciones GPU OpenGL + Cg Facilidad de programación GPU CUDA multigpu FLAME + SuperMatrix?? Maribel Castillo et al. Solving Dense Linear Systems on Platforms with Multiple Hardware Accelerators 2 / 23
6 Índice 1 Introducción 2 FLAME 3 FLAME en plataformas con múltiples aceleradores 4 Mejorando las prestaciones 5 Resultados experimentales 6 Conclusiones Maribel Castillo et al. Solving Dense Linear Systems on Platforms with Multiple Hardware Accelerators 3 / 23
7 Introducción Introducción Procesadores multicore/aceleradores hardware Elevado potencial programación paralela GPUs: Cómo programarlas de forma fácil y eficiente? El problema surge tanto para una como para múltiples GPUs Maribel Castillo et al. Solving Dense Linear Systems on Platforms with Multiple Hardware Accelerators 4 / 23
8 Introducción Trabajo previo y aportaciones Implementaciones existentes para sistemas multi-gpu: Distribución de datos entre GPUs + código estilo ScaLAPACK Planteamientos similares a las arquitecturas de memoria distribuida Independencia entre código y arquitectura Ejecución paralela runtime Nueva arquitectura adaptación del runtime Ideas ya contrastadas para multicore pueden ser utilizadas en el runtime Maribel Castillo et al. Solving Dense Linear Systems on Platforms with Multiple Hardware Accelerators 5 / 23
9 FLAME FLAME FLAME: Formal Linear Algebra Methods Environment Notación para expresar algoritmos de álgebra lineal densa y banda Metodología para derivar familias de algoritmos (variantes) APIs: FLAME/C, FLAME@lab, FLAG@lab... Sencilla transformación notación código FLASH API: extiende FLAME para algoritmos por bloques Maribel Castillo et al. Solving Dense Linear Systems on Platforms with Multiple Hardware Accelerators 6 / 23
10 FLAME FLAME: de algoritmo a código ( ATL A TR Partition A A BL A BR where A TL is 0 0 while m(a TL ) < m(a) do Determine block size n b Repartition ( ) A ATL A 00 A 01 A 02 TR A A BL A 10 A 11 A 12 BR A 20 A 21 A 22 where A 11 is n b n b A 11 := CHOL_UNB(A 11 ) A 21 := A 21 TRIL(A 11 ) T A 22 := A 22 A 21 A T 21 Continue with ( ATL A TR A BL endwhile A BR ) ) A 00 A 01 A 02 A 10 A 11 A 12 A 20 A 21 A 22 FLA_Error FLASH_Chol_by_blocks_var1 ( FLA_Obj A ) { FLA_Obj ATL, ATR, A00, A01, A02, ABL, ABR, A10, A11, A12, A20, A21, A22 ; FLA_Part_2x2 ( A, &ATL, &ATR, &ABL, &ABR, 0, 0, FLA_TL ) ; while ( FLA_Obj_length ( ATL ) < FLA_Obj_length ( A ) ) { FLA_Repart_2x2_to_3x3 ( ATL, ATR, &A00, &A01, &A02, &A10, &A11, &A12, ABL, ABR, &A20, &A21, &A22, 1, 1, FLA_BR ) ; / / FLA_Chol_unb_var1 ( FLASH_MATRIX_AT( A11 ) ) ; FLASH_Trsm ( FLA_RIGHT, FLA_LOWER_TRIANGULAR, FLA_TRANSPOSE, FLA_NONUNIT_DIAG, FLA_ONE, A11, A21 ) ; FLASH_Syrk ( FLA_LOWER_TRIANGULAR, FLA_NO_TRANSPOSE, FLA_MINUS_ONE, A21, FLA_ONE, A22 ) ; / / FLA_Cont_with_3x3_to_2x2 ( &ATL, &ATR, A00, A01, A02, A10, A11, A12, &ABL, &ABR, A20, A21, A22, FLA_TL ) ; } } Maribel Castillo et al. Solving Dense Linear Systems on Platforms with Multiple Hardware Accelerators 7 / 23
11 El runtime SuperMatrix FLAME Extracción de paralelismo a alto nivel Descomposición de operaciones en tareas Identificación de dependencias entre tareas Planificación de ejecución cuando las tareas están preparadas (dependencias satisfechas) Mapeado de tareas sobre núcleos/aceleradores Oculta detalles de paralelización al programador Maribel Castillo et al. Solving Dense Linear Systems on Platforms with Multiple Hardware Accelerators 8 / 23
12 FLAME en plataformas con múltiples aceleradores FLAME en plataformas con múltiples aceleradores Trabajo previo Cada Nvidia G80/IBM Cell B.E. es visto como una arquitectura multicore Cada acelerador es visto como un único core Existe una implementación optimizada de BLAS disponible Analogía multicore multiacelerador El paralelismo se extrae a dos niveles: 1 Alto nivel: SuperMatrix 2 Bajo nivel: BLAS Maribel Castillo et al. Solving Dense Linear Systems on Platforms with Multiple Hardware Accelerators 9 / 23
13 FLAME en plataformas con múltiples aceleradores Modelo de ejecución Estación de trabajo (multicore) + múltiples aceleradores hardware Aceleradores: elementos pasivos a la espera de trabajo Independencia entre RAM y memoria del acelerador (sin mecanismos de coherencia) Comunicación CPU-acelerador: copias entre memorias, a través de RAM Ejemplo: Nvidia Tesla s870 Maribel Castillo et al. Solving Dense Linear Systems on Platforms with Multiple Hardware Accelerators 10 / 23
14 FLAME en plataformas con múltiples aceleradores SuperMatrix: funcionamiento Ejecución del algoritmo por bloques en dos fases (tiempo de ejecución): 1 Fase de análisis Un thread ejecuta el código No se realizan operaciones inmediatamente lista de tareas pendientes Identificación de dependencias entre tareas D.A.G. 2 Fase de lanzamiento Los threads ociosos inspeccionan la cola de tareas pendientes Al encontrar una lista para ejecución, se computa en un acelerador Actualización de la información de dependencias Fase de análisis: no se modifica Fase de lanzamiento: posibilidad de adaptación al entorno específico (i.e. Tesla) Maribel Castillo et al. Solving Dense Linear Systems on Platforms with Multiple Hardware Accelerators 11 / 23
15 Mejorando las prestaciones Implementación básica Creación de tantos threads en el host como aceleradores Detección de tarea lista: 1 Copia de datos asociados a memoria del acelerador 2 Orden de ejecución de la operación BLAS correspondiente 3 Transferencia de datos a RAM Ejecución híbrida: la CPU planifica, el acelerador ejecuta Ciertas tareas pueden ser ejecutadas en CPU si es conveniente Problema: excesivas transferencias entre memorias Maribel Castillo et al. Solving Dense Linear Systems on Platforms with Multiple Hardware Accelerators 12 / 23
16 Mejorando las prestaciones Mejorando el rendimiento de SuperMatrix Cachés y coherencia de memoria Políticas de coherencia de memoria: 1 Write-through: escrituras inmediatamente reflejadas en memoria principal 2 Write-back: datos actualizados únicamente cuando la línea de cache es reemplazada En sistemas con memoria compartida: 1 Write-update: escrituras por uno de los procesadores propagadas inmediatamente a las copias en caches del resto de procesadores 2 Write-invalidate: escrituras por uno de los procesadores invalidan las copias en las caches del resto de procesadores Objetivo: reducción de transferencias Maribel Castillo et al. Solving Dense Linear Systems on Platforms with Multiple Hardware Accelerators 13 / 23
17 Mejorando las prestaciones Mejorando el rendimiento de SuperMatrix Analogías: Multiprocesador con MC Sistema multiacelerador Acelerador Procesador Memoria del acelerador Caches RAM Memoria compartida por los procesadores (aceleradores) Aplicación de las políticas de coherencia conocidas a nuestro sistema multiacelerador Maribel Castillo et al. Solving Dense Linear Systems on Platforms with Multiple Hardware Accelerators 14 / 23
18 Mejorando las prestaciones 2-D + write-through Distribución de datos: mapeado 2-D cíclico Operaciones que escriben sobre un bloque dado se asignan a la misma GPU Bloques propietarios y no propietarios Funcionamiento: Inicialmente todos los bloques residen en RAM Tarea asignada a procesador los bloques se copian a GPU (si no residen ya allí) Bloques propietarios: se mantienen en memoria de GPU hasta el final de la ejecución Bloques no propietarios: se descartan al completar la operación Política write-through para bloques propietarios: propagación inmediata de datos escritos a RAM Maribel Castillo et al. Solving Dense Linear Systems on Platforms with Multiple Hardware Accelerators 15 / 23
19 Mejorando las prestaciones Cache + write-invalidate Problema: gran cantidad de transferencias de bloques no propietarios Cache software para bloques de sólo lectura (no propietarios) Se mantienen en memoria de GPU los bloques más recientemente usados Operaciones que escriben sobre un bloque dado se asignan a la misma GPU El thread correspondiente en CPU invalida las copias en el resto de GPUs Políticas de reemplazo y número de bloques de caché por acelerador pueden ser modificados Maribel Castillo et al. Solving Dense Linear Systems on Platforms with Multiple Hardware Accelerators 16 / 23
20 Write-back Mejorando las prestaciones Objetivo: reducción de transferencias a RAM para bloques propietarios Política write-back: inconsistencias entre GPU y RAM Actualización de bloques propietarios en RAM: sólo si otra GPU los necesita Finalización del algoritmo: actualización de datos a RAM Maribel Castillo et al. Solving Dense Linear Systems on Platforms with Multiple Hardware Accelerators 17 / 23
21 Mejorando las prestaciones Optimización de rutinas BLAS 1 Sgemm optimizado: CUBLAS Ssyrk optimizado: basado en sgemm de CUBLAS Strsm optimizado: inversión de la matriz en CPU + producto matriz-matriz en GPU Maribel Castillo et al. Solving Dense Linear Systems on Platforms with Multiple Hardware Accelerators 18 / 23
22 Resultados experimentales Resultados experimentales Nvidia Tesla s870 4 GPUs Nvidia Quadro 5600 Interfaz doble PCIExpress Gen2 1.5 Gbytes RAM por GPU Host: Dual Intel Xeon QuadCore 2.00 Ghz, 8 Gb RAM Maribel Castillo et al. Solving Dense Linear Systems on Platforms with Multiple Hardware Accelerators 19 / 23
23 Resultados experimentales Resultados experimentales Evaluación de diversos sistemas spotrf en Intel Itanium: MKL 8.1 en Intel Itanium2 a 1.5 Ghz spotrf en SGI Altix 350: MKL 8.1 multihilo en 16 Intel Itanium2 a 1.5 Ghz (ccnuma) spotrf en Intel Xeon QuadCore: MKL 10 multihilo en Intel Xeon QuadCore a 2 Ghz AB en SGI Altix 350: nuestro algoritmo por bloques en SGI Altix 350 AB en Tesla s870: nuestro algoritmo por bloques (mejor variante) en una máquina Nvidia Tesla s870 (4 GPUs) Maribel Castillo et al. Solving Dense Linear Systems on Platforms with Multiple Hardware Accelerators 20 / 23
24 Resultados experimentales Resultados experimentales Cholesky factorization on NVIDIA Tesla S870 G. Tuned Strsm F. Tuned Ssyrk E. Tuned Sgemm D. Write-back C. Cache + write-invalidate B. 2D + write-through A. Basic implementation GFLOPS Matrix size Maribel Castillo et al. Solving Dense Linear Systems on Platforms with Multiple Hardware Accelerators 21 / 23
25 Resultados experimentales Resultados experimentales Cholesky factorization on several platforms AB on Tesla S870 AB on SGI Altix 350 spotrf on Intel Xeon QuadCore spotrf on SGI Altix 350 spotrf on Intel Itanium GFLOPS Matrix size Maribel Castillo et al. Solving Dense Linear Systems on Platforms with Multiple Hardware Accelerators 22 / 23
26 Conclusiones Conclusiones SuperMatrix: solución flexible para multicore y multiaceleradores Posibilidad de aplicación de técnicas ya contrastadas Transparencia para el programador Runtime configurable y fácilmente ampliable No sólo aplicable a sistemas multigpu IBM Cell B.E. Maribel Castillo et al. Solving Dense Linear Systems on Platforms with Multiple Hardware Accelerators 23 / 23
FLAG/C. Una API para computación matricial sobre GPUs. M. Jesús Zafont Alberto Martín Francisco Igual Enrique S. Quintana-Ortí
FLAG/C Una API para computación matricial sobre GPUs M. Jesús Zafont Alberto Martín Francisco Igual Enrique S. Quintana-Ortí High Performance Computing & Architectures Group Universitat Jaume I de Castellón
High Performance Computing and Architectures Group
HPCA Group 1 High Performance Computing and Architectures Group http://www.hpca.uji.es Universidad Jaime I de Castellón ANACAP, noviembre de 2008 HPCA Group 2 Generalidades Creado en 1991, al mismo tiempo
Técnicas SuperEscalares en la Paralelización de Bibliotecas de Computación Matricial sobre Procesadores Multinúcleo y GPUs
Técnicas SuperEscalares en la Paralelización de Bibliotecas de Computación Matricial sobre Procesadores Multinúcleo y GPUs Enrique S. Quintana-Ortí [email protected] High Performance Computing & Architectures
Arquitecturas GPU v. 2013
v. 2013 Stream Processing Similar al concepto de SIMD. Data stream procesado por kernel functions (pipelined) (no control) (local memory, no cache OJO). Data-centric model: adecuado para DSP o GPU (image,
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
Kepler. 1. Presentación de la arquitectura. Índice de contenidos [25 diapositivas] Kepler, Johannes (1571-1630)
Índice de contenidos [25 diapositivas] Manuel Ujaldón Nvidia CUDA Fellow Dpto. Arquitectura de Computadores Universidad de Málaga 1. Presentación de la arquitectura [3] 2. Los cores y su organización [7]
FUNDAMENTOS DE COMPUTACIÓN PARA CIENTÍFICOS. CNCA Abril 2013
FUNDAMENTOS DE COMPUTACIÓN PARA CIENTÍFICOS CNCA Abril 2013 6. COMPUTACIÓN DE ALTO RENDIMIENTO Ricardo Román DEFINICIÓN High Performance Computing - Computación de Alto Rendimiento Técnicas, investigación
Índice. Qué es Java? La plataforma Java 2 La Máquina Virtual de Java Características principales Qué ventajas tengo como desarrollador?
INTRODUCCIÓN A JAVA 20/02/2007 Introducción a JAVA 2 Índice Qué es Java? La plataforma Java 2 La Máquina Virtual de Java Características principales Qué ventajas tengo como desarrollador? Bibliografía
Sistemas de Operación II
Sistemas de Operación II Sistemas de Archivos Distribuidos Prof. Carlos Figueira Basado en material de Yudith Cardinale (USB) Andrew Tanembaum y Marteen van Steen Contenido Introducción Requisitos Aspectos
Multiplicación de Matrices en Sistemas cc-numa Multicore. Autor: Jesús Cámara Moreno Director: Domingo Giménez Cánovas
Multiplicación de Matrices en Sistemas cc-numa Multicore Autor: Jesús Cámara Moreno Director: Domingo Giménez Cánovas Índice de Contenido 1. Introducción 2. Línea de Investigación 3. Sistemas Empleados
Capitulo 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
TEMA 4: SISTEMAS MULTIPROCESADOR (MEMORIA COMPARTIDA) BLOQUE 2 Arquitecturas de computación paralela
TEMA 4: SISTEMAS MULTIPROCESADOR (MEMORIA COMPARTIDA) BLOQUE 2 Arquitecturas de computación paralela 2 CONTENIDOS DE LA UNIDAD 4.4 Diseño de arquitecturas de memoria compartida y compartida-distribuida.
Computación de Propósito General en Unidades de Procesamiento Gráfico GPGPU
Computación de Propósito General en Unidades de Procesamiento Gráfico () E. Dufrechou, P. Ezzatti, M. Pedemonte y J.P.Silva Clase 8 ALN en GPUs Contenido Motivación Conceptos básicos de ALN Problemas Tipo
High Performance Computing y Big Data en AWS. +info: (http://gac.udc.es) HPC y Big Data en AWS 16 Abril, 2012 1 / 14
High Performance Computing y Big Data en AWS +info: (http://gac.udc.es) HPC y Big Data en AWS 16 Abril, 212 1 / 14 High Performance Computing High Performance Computing (HPC) Afonta grandes problemas empresariales,
Sistemas Operativos. Curso 2016 Procesos
Sistemas Operativos Curso 2016 Procesos Agenda Proceso. Definición de proceso. Contador de programa. Memoria de los procesos. Estados de los procesos. Transiciones entre los estados. Bloque descriptor
Se encarga de realizar las funciones básicas de manejo y configuración del ordenador. La BIOS tiene más tareas fundamentales: Chequearse a sí misma.
La BIOS, siglas de su nombre en inglés Basic Input-Output System, también conocida como Sistema Básico de Entrada / Salida, es básicamente un código de software que permite iniciar el sistema operativo
Capítulo 2. Sistemas Operativos. Elementos, estructura y funciones generales.
Capítulo 2. Sistemas Operativos. Elementos, estructura y funciones generales. 1. Concepto de Sistema Operativo. 2. Evolución histórica. 3. Tipos de Sistemas Operativos. 4. Estructura de un Sistema Operativo.
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
Introducción HPC. Curso: Modelización y simulación matemática de sistemas. Esteban E. Mocskos ([email protected]) Escuela Complutense Latinoamericana
Curso: Modelización y simulación matemática de sistemas Metodología para su implementación computacional Introducción HPC Esteban E. Mocskos ([email protected]) Facultad de Ciencias Exactas y Naturales,
Modelo de estimación de speedup factor mediante umbralización en multicores asimétricos
Modelo de estimación de speedup factor mediante umbralización en multicores asimétricos Reporte Técnico Adrian Pousa 1 Juan Carlos Saez 1 Instituto de Investigación en Informática LIDI Argentina. Facultad
EL CLUSTER FING: COMPUTACIÓN DE ALTO DESEMPEÑO EN FACULTAD DE INGENIERÍA
EL CLUSTER FING: COMPUTACIÓN DE ALTO DESEMPEÑO EN FACULTAD DE INGENIERÍA SERGIO NESMACHNOW Centro de Cálculo, Instituto de Computación FACULTAD DE INGENIERÍA, UNIVERSIDAD DE LA REPÚBLICA, URUGUAY EL CLUSTER
MANUAL TÉCNICO DE IMPLEMENTACIÓN PROYECTO SOCIAL COMPUESCUELA. Elaborado por: Julián A. Hernández M.
MANUAL TÉCNICO DE IMPLEMENTACIÓN PROYECTO SOCIAL COMPUESCUELA Elaborado por: Julián A. Hernández M. PONTIFICIA UNIVERSIDAD JAVERIANA CALI SANTIAGO DE CALI 2011 CONTENIDO Pág. INTRODUCCIÓN...3 1. ANÁLISIS
Capítulo 11. Conclusiones y trabajo futuro
Capítulo 11. Conclusiones y trabajo futuro En esta tesis ha realizado un entorno de desarrollo Web que proporciona herramientas para la mejora de la calidad del código de los desarrolladores. Para conseguir
Figura 1.4. Elementos que integran a la Tecnología de Información.
1.5. Organización, estructura y arquitectura de computadoras La Gráfica siguiente muestra la descomposición de la tecnología de información en los elementos que la conforman: Figura 1.4. Elementos que
Actividad N 1. Primer procesador creado por Intel
Actividad N 1 Primer procesador creado por Intel El Intel 4004 (i4004), un CPU de 4bits, fue el primer microprocesador en un simple chip, así como el primero disponible comercialmente. Aproximadamente
Ejemplos de optimización para Kepler. 1. Balanceo dinámico de la carga. Contenidos de la charla [18 diapositivas]
Ejemplos de optimización para Kepler Manuel Ujaldón Nvidia CUDA Fellow Dpto. Arquitectura de Computadores Universidad de Málaga Contenidos de la charla [18 diapositivas] 1. Balanceo dinámico de la carga.
Segmentación de Imágenes en Procesadores Many-Core
Universidad de Santiago de Compostela Segmentación de Imágenes en Procesadores Many-Core Lilien Beatriz Company Garay Fernández [email protected] Indice 1. Introducción Single-chip Cloud Computer (SCC)
Tutorial CUDA Univ. de Santiago. 6 y 7 de Agosto, 2013
Tutorial CUDA Univ. de Santiago. 6 y 7 de Agosto, 2013 La suma por reducción Este código realiza la suma de un vector de N elementos mediante un operador binario de reducción, es decir, en log 2 (N) pasos.
Laboratorio de Herramientas Computacionales
Laboratorio de Herramientas Computacionales Tema 1.1 Componentes físicos de la computadora UNIVERSIDAD MICHOACANA DE SAN NICOLÁS DE HIDALGO FACULTAD DE INGENIERIA ELECTRICA M.I. ROSALÍA MORA JUÁREZ Antecedentes
Unidad II: Administración de Procesos y del procesador
Unidad II: Administración de Procesos y del procesador 2.1 Concepto de proceso Un proceso no es más que un programa en ejecución, e incluye los valores actuales del contador de programa, los registros
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
Procesamiento de imágenes en GPUs mediante CUDA. I. Introducción. Indice de contenidos
Procesamiento de imágenes en GPUs mediante CUDA Manuel Ujaldón Martínez Nvidia CUDA Fellow Departamento de Arquitectura de Computadores Universidad de Málaga Indice de contenidos 1. Introducción. [2] 2.
Versión: 01. Fecha: 01/04/2013. Código: F004-P006-GFPI GUÍA DE APRENDIZAJE Nº 1 1. IDENTIFICACIÓN DE LA GUIA DE APRENDIZAJE
SERVICIO NACIONAL DE APRENDIZAJE SENA GUÍA DE APRENDIZAJE SISTEMA INTEGRADO DE GESTIÓN Proceso Gestión de la Formación Profesional Integral Procedimiento Ejecución de la Formación Profesional Integral
INFORME TECNICO PREVIO DE EVALUACIÓN DE SOFTWARE N 002-2011/UIE-PATPAL - FBB
INFORME TECNICO PREVIO DE EVALUACIÓN DE SOFTWARE N 002-2011/UIE-PATPAL - FBB Contenido 1. NOMBRE DEL AREA... 2 2. RESPONSABLES DE LA EVALUACIÓN... 2 3. CARGOS... 2 4. FECHA... 2 5. JUSTIFICACIÓN... 2 6.
Jerarquía de Memoria. Sistema de Memoria. El Cache. Efectividad del Cache. Patrón de Accesos a Memoria Generado por Programas
Sistema de Jerarquía de L L Primaria Secundaria El Efectividad del El mecanismo más utilizado para compensar por la diferencia en velocidades entre el y la memoria primaria (factor a 0 t ípico) Es una
Introducció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 ([email protected]) Facultades de Ciencias Exactas
Sistemas de Operación II
Sistemas de Operación II Procesos en Sistemas Distribuidos Prof. Carlos Figueira Basado en material de Yudith Cardinale, Mariela Curiel (USB) Andrew Tanembaum y Marteen van Steen Contenido Clientes Servidores
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
EL COMPUTADOR. Las computadoras son actualmente
EL COMPUTADOR Es una máquina o Dispositivo mecánico-electrónico que procesa gran cantidad de información (numérica, alfanumérica) capaz elaborar gráficos, imágenes, diseños, sonidos y ayudándonos a realizar
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
Heterogénea y Jerárquica
Metodología de la Programación Paralela 2015-2016 Facultad Informática, Universidad de Murcia Computación Híbrida, Heterogénea y Jerárquica Contenidos 1 Sistemas 2 Paralelismo anidado 3 Programación híbrida
Organización de Computadoras. Turno Recursantes Clase 8
Organización de Computadoras Turno Recursantes Clase 8 Temas de Clase Subsistema de Memoria Organización de Memoria Principal Notas de clase 8 2 Memoria Velocidad del procesador: se duplica cada 18 meses
Computación de Propósito General en Unidades de Procesamiento Gráfico GPGPU
Computación de Propósito General en Unidades de Procesamiento Gráfico () R. Bayá, E. Dufrechou, P. Ezzattiy M. Pedemonte Clase 1 Introducción Contenido Un poco de historia El pipeline gráfico Tarjetas
SERVICIO DE SOPORTE Y MANTENIMIENTO ADAPTATIVO, PERFECTIVO Y EVOLUTIVO DEL GESTOR DE EXPEDIENTES Y REGISTRO (REGEXLAN) DE LANBIDE
SERVICIO DE SOPORTE Y MANTENIMIENTO ADAPTATIVO, PERFECTIVO Y EVOLUTIVO DEL GESTOR DE EXPEDIENTES Y REGISTRO (REGEXLAN) DE LANBIDE PLIEGO DE PRESCRIPCIONES TÉCNICAS 1. INTRODUCCIÓN LANBIDE, Servicio Vasco
FP BÁSICA Ofimática y archivo de Documentos
FP BÁSICA Ofimática y archivo de Documentos ÍNDICE Introducción. Licencias de Software 1. Introducción Qué es hardware y qué es software? El término hardware (hw) hace referencia a las partes tangibles
RAID. Redundant Array of Independent Disks. Rafael Jurado Moreno ([email protected]) Fuente: Wikipedia
RAID Redundant Array of Independent Disks Rafael Jurado Moreno ([email protected]) Fuente: Wikipedia I.E.S. María Moliner. Segovia 2010 1.Introducción. En informática, el acrónimo RAID (del inglés Redundant
1 (2 5 puntos) Responda con brevedad y precisión a las siguientes preguntas:
Universidad de Las Palmas de Gran Canaria Escuela Universitaria de Informática Facultad de Informática Sistemas Operativos Examen parcial, 11 de mayo de 2002 SOLUCIONES Calificación 1 2 3 4 5 1 (2 5 puntos)
DESARROLLO DE SOFTWARE MODULAR, ABIERTO Y COLABORATIVO PARA SIMULACIÓN DE MÁQUINAS Y MECANISMOS
UNIVERSIDADE DA CORUÑA Escola Politécnica Superior. Ferrol. INGENIERÍA INDUSTRIAL DESARROLLO DE SOFTWARE MODULAR, ABIERTO Y COLABORATIVO PARA SIMULACIÓN DE MÁQUINAS Y MECANISMOS Autor: Tutor: Miguel Álvarez
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 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
Dibujo Técnico Industrial. Prof. Aquiles M. Garcia.
Dibujo Técnico Industrial. Prof. Aquiles M. Garcia. Presentación. El presente programa de estudios por competencias, tiene la finalidad de interpretar todas las formas de dibujo en la Ingeniería industrial,
ARQUITECTURA DE COMPUTADORAS
ARQUITECTURA DE COMPUTADORAS Información General Objetivos Al terminar el curso, el estudiante estará capacitado para: 1. Manejar medidas de performance que permitan comparar diversos sistemas de Computadora.
CENTRO DE SUPERCOMPUTACIÓN
Uso del supercomputador Ben Arabí CENTRO DE SUPERCOMPUTACIÓN José Ginés Picón López Técnico de aplicaciones Murcia a 2 de Febrero de 2012 Uso del supercomputador Ben Arabí Descripción de la Arquitectura
Guia para examen de Sistemas Operativos Para primer parcial Febrero 2013 Revisión 2 Ing. Julio Cesar Gonzalez Cervantes
Guia para examen de Sistemas Operativos Para primer parcial Febrero 2013 Revisión 2 Ing. Julio Cesar Gonzalez Cervantes Qué es un software comercial? Es el software que las compañías cobran por su producto
Arquitectura Básica para Controladores de Lógica Difusa a Programarse en FPGAs
Arquitectura Básica para Controladores de Lógica Difusa a Programarse en FPGAs Juan C. Herrera Lozada, [email protected] Ma. de Lourdes Olvera Cárdenas, [email protected] Ma. Teresa Lozano Hernández. [email protected]
Tema 3. Buses. Arquitectura de computadores. Plan 96. Curso 2010-2011. Jerarquía de buses
Tema 3. Buses 1. Introducción Jerarquía de buses Clasificación Fases de una transacción 2. Transferencia de datos 3. Temporización Bus síncrono Bus asíncrono Bus semisíncrono 4. Arbitraje del bus Centralizado
Mendieta. Carlos Bederián [email protected] IFEG-CONICET, FaMAF-UNC WHPC13
Mendieta Carlos Bederián [email protected] IFEG-CONICET, FaMAF-UNC 1 Antes que nada ssh [email protected] 2 Especificaciones - Nodo Supermicro 1027GR-TRF 1U de altura Dual socket 2011 Fuentes de 1820W
UNIVERSIDAD DE ORIENTE FACULTAD DE ICIENCIAS ECONOMICAS LAS REDES I. Licda. Consuelo Eleticia Sandoval
UNIVERSIDAD DE ORIENTE FACULTAD DE ICIENCIAS ECONOMICAS LAS REDES I Licda. Consuelo Eleticia Sandoval OBJETIVO: ANALIZAR LAS VENTAJAS Y DESVENTAJAS DE LAS REDES DE COMPUTADORAS. Que es una red de computadoras?
El Producto: Software
Este material está basado en el curso preparado por A.Navarro, UCM U (que a su vez sigue el texto del libro de Pressman) El Producto: Software Ingeniería del Software de Gestión 1 Facultad de Informática
Arquitecturas de Computadoras II. Febrero 2013
Arquitecturas de Computadoras II Febrero 2013 1 Sabes... 1. Cuál es la Arquitectura Von Neumann? 2. Qué es Programación? 3. Qué es un algoritmo? 4. Qué es un programa? 5. Qué es un sistema? 6. Materias
Fundamentos de Computación para Científicos
Fundamentos de Computación para Científicos Conceptos de Sistemas Operativos Noviembre, 2015 Contenido 1 Definición 2 Kernel 3 Procesos 4 Memoria 5 Sistema de Archivos 6 Seguridad y Protección 7 Interfaz
18 y 19 Sistemas de Archivos Distribuidos y Tarea 05
18 y 19 Sistemas de Archivos Distribuidos y Tarea 05 Prof. Edgardo Adrián Franco Martínez http://computacion.cs.cinvestav.mx/~efranco [email protected] Estructuras de datos (Prof. Edgardo A. Franco)
Seminario II: Introducción a la Computación GPU
Seminario II: Introducción a la Computación GPU CONTENIDO Introducción Evolución CPUs-Evolución GPUs Evolución sistemas HPC Tecnologías GPGPU Problemática: Programación paralela en clústers heterogéneos
GANETEC SOLUTIONS HPC Banca / Aseguradoras
GANETEC SOLUTIONS HPC Banca / Aseguradoras Ganetec Global Solutions mediante el uso de HPC permite a sus clientes hacer frente a las nuevas exigencias del mercado. En el sector financiero las necesidades
Introducción Componentes Básicos Concurrencia y Paralelismo Ejemplos Síntesis Lecturas Recomendadas. Arquitectura de Computadoras
Arquitectura de Computadoras Contenidos 1 Introducción Computadora Arquitectura Partes de una arquitectura 2 Componentes Básicos CPU Jerarquía de Memoria 3 Concurrencia y Paralelismo Arquitecturas concurrentes
CPU. Unidad central de procesamiento
CPU Unidad central de procesamiento QUÉ ES UNA PLACA BASE? La mainboard o motherboard es el elemento principal de un Pc. En ella se integran o se conectan el resto de dispositivos (memoria, procesador,
Colecció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,
Profesor(a): Ing. Miriam Cerón Brito
Área Académica: Informática Tema: Ambiente Windows Profesor(a): Ing. Miriam Cerón Brito Periodo: Enero Junio 2014 Abstract: In this presentation you can find basic information for know and manage the operative
Equipamiento disponible
PCI 00 Acción Preparatoria Computación Avanzada en Aplicaciones Biomédicas CaaB (High Performance Computing applied to Life Sciences) Equipamiento disponible Participantes Universidad de Málaga, España
El Bueno, el Malo y el Feo
El Bueno, el Malo y el Feo Mejorando la Eficiencia y Calidad del Software Paralelo Ricardo Medel Argentina Systems & Tools SSG-DPD Basado en un guión de Eric W. Moore - Senior Technical Consulting Engineer
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
GESTIÓN DE PROYECTOS CON MICROSOFT PROJECT
(60 HORAS) COSTE: Bonificable a través de los créditos de formación de la FTFE. OBJETIVOS DEL CURSO OBJETIVOS GENERALES Una gran parte de los trabajos que se realizan diariamente requieren una planificación
CONTABILIDAD ANALÍTICA EN LAS UNIVERSIDADES Una solución integral
ESPAÑA BRASIL COLOMBIA CHILE ECUADOR NICARAGUA PERÚ REPÚBLICA DOMINICANA VENEZUELA CONTABILIDAD ANALÍTICA EN LAS UNIVERSIDADES Una solución integral Inmaculada Martí Forés y Raúl Fernández Fernández 23
Qué es lo que su empresa necesita? Productividad? Organización? Eficiencia? Ahorro? Control? Seguridad?
QUÉ BENEFICIOS TRAE SYNCWARE A MI EMPRESA? Más seguridad en la toma de decisiones informáticas SYNCWARE, nacida en enero de 2014, como una pequeña empresa con el propósito de trabajar en el sector de las
PROBLEMAS DE FUNDAMENTOS DE TECNOLOGÍA DE COMPUTADORES T5. MEMORIAS
PROBLEMAS DE FUNDAMENTOS DE TECNOLOGÍA DE COMPUTADORES T5. MEMORIAS Tema 5 Memorias Hoja: 2 / 14 Base teórica La memoria es el lugar en el que se almacenan las instrucciones y los datos para que se puedan
3.8 Construcción de una ALU básica
3.8 Construcción de una ALU básica En este punto veremos como por medio de compuertas lógicas y multiplexores, se pueden implementar las operaciones aritméticas básicas de una ALU. Esencialmente en este
ARQUITECTURA DE COMPUTADORAS I. Propósito del curso : Al final del curso el estudiante: Ingeniería Ingeniería en Sistemas.
UNIVERSIDAD AUTÓNOMA DE CHIHUAHUA Clave: 08MSU0017H Clave: 08USU4053W FACULTAD DE INGENIERÍA PROGRAMA DEL CURSO: ARQUITECTURA DE COMPUTADORAS I DES: Ingeniería Ingeniería en Sistemas Programa(s) Educativo(s):
TEMA 2: CAPACIDAD: Diseño del Servicio TI Anexo II: Amazon EC2
CIMSI Configuración, Implementación y Mantenimiento de Sistemas Informáticos TEMA 2: CAPACIDAD: Diseño del Servicio TI Anexo II: Amazon EC2 Daniel Cascado Caballero Rosa Yáñez Gómez Mª José Morón Fernández
Licenciatura en Computación
Res. CFI 21/06/2012 Res. CDC 25/09/2012 Pub. DO 31/10/2012 Plan de Estudios Licenciatura en Computación Facultad de Ingeniería 1 Antecedentes y fundamentos 1.1 Antecedentes En la Facultad de Ingeniería,
Capí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
Virtualización en procesadores multinúcleo
Virtualización en procesadores multinúcleo Francisco Triviño García [email protected] Becario de investigación Presente y Futuro de los Sistemas de Computación Conference title 1 Índice 1. Introducción
502 A I.S.C. JOSE BARDO MORENO MACHADO ENRIQUE EDUARDO MORAN PRADO EDILBERTO RASCON HERNANDEZ
502 A I.S.C. JOSE BARDO MORENO MACHADO ENRIQUE EDUARDO MORAN PRADO EDILBERTO RASCON HERNANDEZ Dispositivo basado en circuitos que posibilitan el almacenamiento limitado de información y su posterior recuperación.
Arquitectura de aceleradores. Carlos Bederián IFEG CONICET GPGPU Computing Group FaMAF UNC [email protected]
Arquitectura de aceleradores Carlos Bederián IFEG CONICET GPGPU Computing Group FaMAF UNC [email protected] Contenidos Cómo llegamos hasta acá Qué hay ahora Qué hace Cómo lo uso Hacia dónde parece que
Familia de procesadores Intel x86
Familia de procesadores Intel x86 Mario Medina C. [email protected] Intel 8086 y 8088 8086: 1978, 29K transistores 8 Registros de 16 bits Bus de datos de 16 bits Bus de dirección de 20 bits Multiplexado
