Taller de Programación Paralela

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

Download "Taller de Programación Paralela"

Transcripción

1 Taller de Programación Paralela Departamento de Ingeniería Informática Universidad de Santiago de Chile April 17, 2008

2

3 Motivación Programar aplicaciones paralelas no es una tarea trivial. Paralelismo debe considerar aspectos tales como: 1. División del problema/solución 2. Acceso a datos compartidos 3. Sincronismo entre las tareas/eventos 4. Asincronismo (no determinismo) en tareas/eventos 5. Balance de carga 6. Deadlocks 7. Paradigma de programación (?) Programación paralela requiere programadores especializados que entiendan computación paralela La vida sería más fácil para programadores si gcc --Paralelize fem.c 3 / 11

4 Motivación (cont) Idealmente, un software paralelo debiera: ser fácil de usar proveer transparencia a la arquitectura del procesador proveer transparencia a la red de comunicación (si existe) ser portable acomodar heterogeneidad proveer escalabilidad proveer transparencia al paralelismo 4 / 11

5 Estrategias de paralelismo Exiten dos aproximaciones principales para abordar programación paralels Paralelismo impĺıcito El programador se abstrae de la paralelización misma. Uso de lenguajes y compiladores paralelos El programador no tiene control de cómo los datos y el cómputo es planificado. Codigo fuente Modificacion menor al codigo Paralelizacion automatica Aplicacion paralela 5 / 11

6 Estrategias de paralelismo Paralelismo semi expĺıcito El código es modificado para hacer uso de librerías y software paralelo Apoyo de librerías para sincronización de tareas y paso de mensajes para comunicación. Identificacion y reemplazo de rutinas Codigo fuente Relink Aplicacion paralela Desarrollo librerias paralelas 6 / 11

7 Estrategias de paralelismo (cont) Paralelismo expĺıcito El código original sufre modificaciones sustanciales El programador es responsable de la descomposición del problema, comunicación, mapeo de tareas aprocesadores, etc. Codigo fuente Modificacion mayor al codigo Paralelizacion asistida por compilador Aplicacion paralela 7 / 11

8 Niveles de paralelismo Se puede explotar paralelismo a varios niveles Cada nivel define un nivel de granularidad, es decir el tamaño del código que se paraleliza. En este curso nos concentramos en los dos niveles superiores Tarea i-1 Tarea i Tarea i+1 func1() func2() func3() Granularidad Entidad Paralelizado por Muy Fino Instrucción Procesador Fino Bloque de Compilador instrucción Medio Función Programador Grande Programa Programador a[i] = 4*i a[i+1] =.. a[i] = 4*i a[i+1] =.. * + / a[i] = 4*i a[i+1] =.. 8 / 11

9 Paso de Mensajes Modelo más popular para implementar paralelismo a nivel de tareas Las tareas no comparten el espacio de direcciones El programador especifica el particionamiento de los datos y el cómputo El programador especifica cuando las tareas deben intercambiar datos Cluster de computadores Memoria Compartida Modelo para paralelizar tareas que comparten la memoria Dependiendo de la herramienta usada, paralelización puede ser impĺıcita o no Comunicación es mediante variables compartidas y puede ser impĺıcita o no Sistemas multiprocesadores Híbridos Paralelismo de Datos 9 / 11

10 Memoria compartida main() { int A[100][100], B[100][100]; #pragma_omp parallel for num_threads(5) for (i=0; i < 10; i++) { for (j=0; j < 10; j++) A[i][j] = B[i][j]... } Programador inserta directivas para especificar regiones paralelas Compilador realiza la paralelización Es posible reusar mucho código secuencial OpenMP estándar desde / 11

11 Paso de mensajes main() { int A[20][20], B[20][20]; Programador responsable de distribución de datos y comunicación Uso de librerías (eficientes) Uso de compilador tradicional MPI (Message Passing Interface) estándar desde 1995 MPI_Receive(A,...); MPI_Receive(B,...); for (i=0; i < 20; i++) for (j=0; j < 20; j++) { A[i][j] = B[i][j]... MPI_Send(...); } MPI_send(...) 11 / 11

Lusitania. Pensando en Paralelo. César Gómez Martín

Lusitania. Pensando en Paralelo. César Gómez Martín Lusitania Pensando en Paralelo César Gómez Martín [email protected] www.cenits.es Esquema Introducción a la programación paralela Por qué paralelizar? Tipos de computadoras paralelas Paradigmas de

Más detalles

Paradigma de paso de mensajes

Paradigma de paso de mensajes Paradigma de paso de mensajes Curso 2011-2012 Índice Visión lógica del paradigma de paso de mensajes. Operaciones básicas en paso de mensajes. Operaciones bloqueantes. Operaciones no bloqueantes. MPI:

Más detalles

Nociones básicas de computación paralela

Nociones básicas de computación paralela Nociones básicas de computación paralela Javier Cuenca 1, Domingo Giménez 2 1 Departamento de Ingeniería y Tecnología de Computadores Universidad de Murcia 2 Departamento de Informática y Sistemas Universidad

Más detalles

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

Más detalles

ARQUITECTURAS PARA PROCESAMIENTO PARALELO

ARQUITECTURAS PARA PROCESAMIENTO PARALELO 1 de 6 27/11/11 13:08 ARQUITECTURAS PARA PROCESAMIENTO PARALELO Facultad de Ingeniería de Sistemas Información para el Proyecto REYCYT RESUMEN Se presenta información general relativa a las diferentes

Más detalles

UNIVERSIDAD DE GUADALAJARA

UNIVERSIDAD DE GUADALAJARA UNIVERSIDAD DE GUADALAJARA CENTRO UNIVERSITARIO DE LOS ALTOS DIVISIÓN DE ESTUDIOS EN FORMACIONES SOCIALES LICENCIATURA: INGENIERÍA EN COMPUTACIÓN UNIDAD DE APRENDIZAJE POR OBJETIVOS ORGANIZACIÓN DE COMPUTADORAS

Más detalles

IMPLEMENTACIÓN DE COMPUTACIÓN DE ALTO RENDIMIENTO Y PROGRAMACIÓN PARALELA EN CÓDIGOS COMPUTACIONALES CARLOS ANDRÉS ACOSTA BERLINGHIERI

IMPLEMENTACIÓN DE COMPUTACIÓN DE ALTO RENDIMIENTO Y PROGRAMACIÓN PARALELA EN CÓDIGOS COMPUTACIONALES CARLOS ANDRÉS ACOSTA BERLINGHIERI IMPLEMENTACIÓN DE COMPUTACIÓN DE ALTO RENDIMIENTO Y PROGRAMACIÓN PARALELA EN CÓDIGOS COMPUTACIONALES CARLOS ANDRÉS ACOSTA BERLINGHIERI UNIVERSIDAD EAFIT ESCUELA DE INGENIERÍAS ÁREA DE DISEÑO MEDELLÍN 2009

Más detalles

Message Passing Interface (MPI)

Message Passing Interface (MPI) Message Passing Interface (MPI) INTRODUCCIÓN MPI (Message Passing Interface) como es un interfaz estandarizada para la realización de aplicaciones paralelas basadas en pasaje de mensajes. El modelo de

Más detalles

MINUTA: Taller en UAEMEX, Toluca. Construcción de Tecnología HPC

MINUTA: Taller en UAEMEX, Toluca. Construcción de Tecnología HPC MINUTA: Taller en UAEMEX, Toluca Construcción de Tecnología HPC de MESA: Taller DE construcción de Tacnología HPC Sesión: # 1 a la 5 INFORMACIÓN GENERAL FECHA: 213 al 17 de julio 2015 Construcción de Tecnología

Más detalles

Sistemas Distribuidos. Soporte de Sistemas Operativos

Sistemas Distribuidos. Soporte de Sistemas Operativos Soporte de Sistemas Operativos Soporte de Sistemas Operativos Soporte de Sistemas Operativos Soporte de Sistemas Operativos Tareas principales de un SO: Administrar recursos Proveer abstracciones de los

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

Paralelización de Programas Secuenciales: OpenMP

Paralelización de Programas Secuenciales: OpenMP Paralelización de Programas Secuenciales: OpenMP http://www.openmp.org Manuel Arenaz [email protected] Índice Introducción a la programación paralela Programación con OpenMP Directivas de compilación Librería

Más detalles

Hilos. Módulo 4. Departamento de Informática Facultad de Ingeniería Universidad Nacional de la Patagonia San Juan Bosco. Hilos

Hilos. Módulo 4. Departamento de Informática Facultad de Ingeniería Universidad Nacional de la Patagonia San Juan Bosco. Hilos Hilos Módulo 4 Departamento de Informática Facultad de Ingeniería Universidad Nacional de la Patagonia San Juan Bosco Hilos Revisión Modelos Multihilados Librerías de Hilos Aspectos sobre Hilos Ejemplos

Más detalles

PREPARATORIA OFICIAL NO. 82 JOSÉ REVUELTAS INFORMÁTICA & COMPUTACIÓN I UNIDAD II LAS TIC

PREPARATORIA OFICIAL NO. 82 JOSÉ REVUELTAS INFORMÁTICA & COMPUTACIÓN I UNIDAD II LAS TIC GOBIERNO DEL ESTADO DE MÉXICO PREPARATORIA OFICIAL NO. 82 JOSÉ REVUELTAS INFORMÁTICA & COMPUTACIÓN I UNIDAD II LAS TIC SECTOR EDUCATIVO INDEPENDIENTE OCTUBRE 2013 Índice Unidad II Las Tic Informática y

Más detalles

Programación Híbrida e Introducción a la Programación de GPUs

Programación Híbrida e Introducción a la Programación de GPUs Programación Híbrida e Introducción a la Programación de GPUs Fernando Robles Morales Instituto Nacional de Medicina Genómica Enrique Cruz Martínez Universidad Autónoma de la ciudad de México CONTENIDO

Más detalles

Universidad de Costa Rica Sistema de Aplicaciones Estudiantiles SAE

Universidad de Costa Rica Sistema de Aplicaciones Estudiantiles SAE Página 1 de 8 Plan de Estudio Enfasis 0 Bloque Común(no hay énfasis) Nivel Curso Nombre del curso T P L TP Cred. Requisitos y Req. Equivalentes Correquisitos y Correq. Equivalentes 1 CI1010 INTRODUCCIÓN

Más detalles

Sistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria

Sistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria 1.2. Jerarquía de niveles de un computador Qué es un computador? Sistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria Es un sistema tan complejo

Más detalles

TEMA 5: PARALELISMO A NIVEL DE HILOS, TAREAS Y PETICIONES (TLP, RLP) (primera parte).

TEMA 5: PARALELISMO A NIVEL DE HILOS, TAREAS Y PETICIONES (TLP, RLP) (primera parte). TEMA 5: PARALELISMO A NIVEL DE HILOS, TAREAS Y PETICIONES (TLP, RLP) (primera parte). SISTEMAS PARALELOS Y DISTRIBUIDOS. 3º GIC www.atc.us.es Dpto. de Arquitectura y Tecnología de Computadores. Universidad

Más detalles

MAGMA. Matrix Algebra on GPU and Multicore Architecture. Ginés David Guerrero Hernández

MAGMA. Matrix Algebra on GPU and Multicore Architecture. Ginés David Guerrero Hernández PLASMA GPU MAGMA Rendimiento Trabajo Futuro MAGMA Matrix Algebra on GPU and Multicore Architecture Ginés David Guerrero Hernández [email protected] Grupo de Arquitecturas y Computación Paralela

Más detalles

Tema 2 Introducción a la Programación en C.

Tema 2 Introducción a la Programación en C. Tema 2 Introducción a la Programación en C. Contenidos 1. Conceptos Básicos 1.1 Definiciones. 1.2 El Proceso de Desarrollo de Software. 2. Lenguajes de Programación. 2.1 Definición y Tipos de Lenguajes

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

UNIVERSIDAD DE GUADALAJARA

UNIVERSIDAD DE GUADALAJARA UNIVERSIDAD DE GUADALAJARA CENTRO UNIVERSITARIO DE LOS ALTOS DIVISIÓN DE ESTUDIOS EN FORMACIONES SOCIALES LICENCIATURA: INGENIERÍA EN COMPUTACIÓN UNIDAD DE APRENDIZAJE POR OBJETIVOS TALLER DE PROGRAMACIÓN

Más detalles

GUÍA DOCENTE Arquitecturas Avanzadas de Computadores

GUÍA DOCENTE Arquitecturas Avanzadas de Computadores GUÍA DOCENTE 2016-2017 Arquitecturas Avanzadas de Computadores 1. Denominación de la asignatura: Arquitecturas Avanzadas de Computadores Titulación Máster en Ingeniería Informática Código 7060 2. Materia

Más detalles

PR1: Programación I 6 Fb Sistemas Lógicos 6 Obligatoria IC: Introducción a los computadores 6 Fb Administración de

PR1: Programación I 6 Fb Sistemas Lógicos 6 Obligatoria IC: Introducción a los computadores 6 Fb Administración de CUADRO DE ADAPTACIÓN INGENIERÍA INFORMÁTICA - Campus Río Ebro Código Asignaturas aprobadas Créditos Carácter Asignaturas/Materias reconocida Créditos Carácter 12007 Cálculo 7,5 MAT1; Matemáticas I 12009

Más detalles

de Gran Canaria Centro de Tecnología Médica Programación Concurrente

de Gran Canaria Centro de Tecnología Médica  Programación Concurrente Universidad de Las Palmas de Gran Canaria Centro de Tecnología Médica http://www.ctm.ulpgc.es Tema 1: Introducción a la Escuela Técnica Superior de Ingenieros de Telecomunicación Conceptos Fundamentales

Más detalles

1 Software de una computadora 2 Sistemas operativos 3 Manejo avanzado y programación en ms-dos 4 Lenguajes de programación

1 Software de una computadora 2 Sistemas operativos 3 Manejo avanzado y programación en ms-dos 4 Lenguajes de programación 1 Software de una computadora 1.1 Software de control o sistema de explotación 1.2 Software de tratamiento 1.3 Software de diagnóstico y mantenimiento 1.4 Actividades: software de una computadora 2 Sistemas

Más detalles

28/08/2014-16:52:22 Página 1 de 5

28/08/2014-16:52:22 Página 1 de 5 - NIVELACION 1 MATEMATICA - NIVELACION FISICA - NIVELACION AMBIENTACION UNIVERSITARIA 1 - PRIMER SEMESTRE 71 REPRESENTACION GRAFICA 1 - PRIMER SEMESTRE 1 INTRODUCCION A LA INGENIERIA Para Cursarla debe

Más detalles

Interfaces. Carrera: SCF Participantes. Representantes de la academia de sistemas y computación de los Institutos Tecnológicos.

Interfaces. Carrera: SCF Participantes. Representantes de la academia de sistemas y computación de los Institutos Tecnológicos. 1.- DATOS DE LA ASIGNATURA Nombre de la asignatura: Carrera: Clave de la asignatura: Horas teoría-horas práctica-créditos Interfaces Ingeniería en Sistemas Computacionales SCF - 0417 2-4-8 2.- HISTORIA

Más detalles

Memoria compartida simétrica

Memoria compartida simétrica Memoria compartida simétrica Arquitectura de Computadores J. Daniel García Sánchez (coordinador) David Expósito Singh Javier García Blas Óscar Pérez Alonso J. Manuel Pérez Lobato Grupo ARCOS Departamento

Más detalles

Tema V Generación de Código

Tema V Generación de Código Tema V Generación de Código Una vez que se ha realizado la partición HW/SW y conocemos las operaciones que se van a implementar por hardware y software, debemos abordar el proceso de estas implementaciones.

Más detalles

Diseño arquitectónico 1ª edición (2002)

Diseño arquitectónico 1ª edición (2002) Unidades temáticas de Ingeniería del Software Diseño arquitectónico 1ª edición (2002) Facultad de Informática objetivo Los sistemas grandes se descomponen en subsistemas que suministran un conjunto relacionado

Más detalles

Módulo: Modelos de programación para Big Data

Módulo: Modelos de programación para Big Data Program. paralela/distribuida Módulo: Modelos de programación para Big Data (título original: Entornos de programación paralela basados en modelos/paradigmas) Fernando Pérez Costoya Introducción Big Data

Más detalles

C1 INTRODUCCIÓN AL LENGUAJE C. Fundamentos de Informática Departamento de Ingeniería de Sistemas y Automática. EII. Universidad de Valladolid

C1 INTRODUCCIÓN AL LENGUAJE C. Fundamentos de Informática Departamento de Ingeniería de Sistemas y Automática. EII. Universidad de Valladolid C1 INTRODUCCIÓN AL LENGUAJE C Fundamentos de Informática Departamento de Ingeniería de Sistemas y Automática. EII. Universidad de Valladolid Índice 1. Lenguajes de Programación 1. Definición. 2. Niveles

Más detalles

Curso de Computación Científica en Clusters

Curso de Computación Científica en Clusters Pilar González, Juan Piernas, Luis P. García, Javier Cuenca, Juan Fernández, Domingo Giménez UniversidaddeMurcia Introducción Avances en distintas áreas científicas e ingenieriles uso intensivo y extensivo

Más detalles

Las optimizaciones pueden realizarse de diferentes formas. Las optimizaciones se realizan en base al alcance ofrecido por el compilador.

Las optimizaciones pueden realizarse de diferentes formas. Las optimizaciones se realizan en base al alcance ofrecido por el compilador. Unidad III: Optimización Las optimizaciones pueden realizarse de diferentes formas. Las optimizaciones se realizan en base al alcance ofrecido por el compilador. La optimización va a depender del lenguaje

Más detalles

Programación concurrente

Programación concurrente Programación concurrente Josep Jorba Esteve Remo Suppi Boldrito P07/M2106/02841 FUOC P07/M2106/02841 2 Programación concurrente FUOC P07/M2106/02841 Programación concurrente Índice Introducción... 5 Objetivos...

Más detalles

Tema: Clases y Objetos en C#. Parte II.

Tema: Clases y Objetos en C#. Parte II. Programación II. Guía No. 5 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación II Tema: Clases y Objetos en C#. Parte II. Objetivos Implementar clases, objetos, propiedades, métodos y

Más detalles

EVOLUCIÓN DE LOS PROCESADORES

EVOLUCIÓN DE LOS PROCESADORES EVOLUCIÓN DE LOS PROCESADORES Lecturas recomendadas: * Tanembaum, A. Organización de computadoras. Cap. 1 * Stallings, W. Organización y arquitectura de computadores. Cap. 2 Arquitectura de una computadora

Más detalles

TEMA 1. INTRODUCCIÓN A LA PROGR. DISTRIBUIDA Y PARALELA

TEMA 1. INTRODUCCIÓN A LA PROGR. DISTRIBUIDA Y PARALELA Relación de Ejercicios Programación Distribuida y Paralela. 4 o de Ingeniería Superior en Informática. Departamento de Lenguajes y Sistemas Informáticos TEMA 1. INTRODUCCIÓN A LA PROGR. DISTRIBUIDA Y PARALELA

Más detalles

UNIDAD II Metodología de programación paralela. Lic. Jesús Germán Andrés PAUTSCH - FCEQyN - UNaM

UNIDAD II Metodología de programación paralela. Lic. Jesús Germán Andrés PAUTSCH - FCEQyN - UNaM UNIDAD II Metodología de programación paralela UNIDAD II: Metodología de programación paralela Metodología de programación paralela Algunos conceptos que nos ayudarán a entender mejor el tema. Modelos

Más detalles

SOMI XVIII Congreso de Instrumentación TECNOLOGIAS DE LA INFORMACION BSR18171

SOMI XVIII Congreso de Instrumentación TECNOLOGIAS DE LA INFORMACION BSR18171 SOFTWARE DE CAJERO AUTOMÁTICO UTILIZANDO PROGRAMACIÓN CONCURRENTE Y PARALELA Bárbara Emma Sánchez Rinza y María Lucero Aranda Ortiz. Benemérita Universidad Autónoma de Puebla edifico 135 14 sur y Av. San

Más detalles

Arquitectura de Computadoras para Ingeniería

Arquitectura de Computadoras para Ingeniería Arquitectura de Computadoras para Ingeniería (Cód. 7526) 1 Cuatrimestre 2016 Dra. Dana K. Urribarri DCIC - UNS Dana K. Urribarri AC 2016 1 Jerarquía de Memoria Dana K. Urribarri AC 2016 2 Indexado físico

Más detalles

Nombre de la asignatura: Programación Básica. Créditos: Objetivo de aprendizaje

Nombre de la asignatura: Programación Básica. Créditos: Objetivo de aprendizaje Nombre de la asignatura: Programación Básica Créditos: 2 4-6 Objetivo de aprendizaje Plantear metodológicamente la solución de problemas susceptibles de ser computarizados a través del manejo de técnicas

Más detalles

Con estas consideraciones, Flynn clasifica los sistemas en cuatro categorías:

Con estas consideraciones, Flynn clasifica los sistemas en cuatro categorías: Taxonomía de las arquitecturas 1 Introducción Introducción En este trabajo se explican en detalle las dos clasificaciones de computadores más conocidas en la actualidad. La primera clasificación, es la

Más detalles

Objetos de aprendizaje: Computadora

Objetos de aprendizaje: Computadora MOMENTO I. BLOQUE 1. Opera las funciones básicas del sistema operativo y garantiza la seguridad de la información Objetos de aprendizaje: Computadora Lectura 1: La Computadora La computadora es una máquina

Más detalles

TEMA 9. SISTEMAS OPERATIVOS DISTRIBUIDOS

TEMA 9. SISTEMAS OPERATIVOS DISTRIBUIDOS TEMA 9. SISTEMAS OPERATIVOS DISTRIBUIDOS Introducción Hardware Software Aspectos de diseño 1 Introducción Aparecen en los 80 Desarrollo de Microprocesadores LAN Sistemas Distribuidos: Gran nº de procesadores

Más detalles

Unidad I Introducción a la programación de Sistemas. M.C. Juan Carlos Olivares Rojas

Unidad I Introducción a la programación de Sistemas. M.C. Juan Carlos Olivares Rojas Unidad I Introducción a la programación de Sistemas M.C. Juan Carlos Olivares Rojas Agenda 1.1 Qué es y que estudia la programación de sistemas? 1.2 Herramientas desarrolladas con la teoría de programación

Más detalles

Adolfo J. Banchio. FaMAF, IFEG-CONICET, Universidad Nacional de Córdoba. 27 04 10 Seminario de grupo 1

Adolfo J. Banchio. FaMAF, IFEG-CONICET, Universidad Nacional de Córdoba. 27 04 10 Seminario de grupo 1 Paralelizar un Código usando OpenMP Adolfo J. Banchio FaMAF, IFEG-CONICET, Universidad Nacional de Córdoba 27 04 10 Seminario de grupo 1 Contenido Introducción Paralelización: por qué OpenMP? Qué es OpenMP?

Más detalles

GUÍA DE APRENDIZAJE ARQUITECTURA DE COMPUTADORES

GUÍA DE APRENDIZAJE ARQUITECTURA DE COMPUTADORES GUÍA DE APRENDIZAJE ARQUITECTURA DE COMPUTADORES GRADO EN INGENIERIA DE COMPUTADORES Datos Descriptivos CENTRO RESPONSABLE: E.U. DE INFORMATICA OTROS CENTROS IMPLICADOS: CICLO: Grado sin atribuciones MÓDULO:

Más detalles

40803 - Introducción a la Informática 40807 - Fundamentos de Programación 40817 - Ingeniería del Software I 40822 - Ingeniería del Software II 40866

40803 - Introducción a la Informática 40807 - Fundamentos de Programación 40817 - Ingeniería del Software I 40822 - Ingeniería del Software II 40866 T1 T2 T3 T4 T5 40804 - Técnicas de Comunicación para la Ingeniería I 40809 - Técnicas de Comunicación para la Ingeniería II 40813 - Programación I T6 T7 40813 - Programación I 40868 - La Informática como

Más detalles

Tecnología de software para sistemas de tiempo real

Tecnología de software para sistemas de tiempo real 1 dit UPM Tecnología de software para sistemas de tiempo real Juan Antonio de la Puente DIT/UPM Motivación Las herramientas y la tecnología de software que se usan para construir otros tipos de sistemas

Más detalles

Análisis de rendimiento de algoritmos paralelos

Análisis de rendimiento de algoritmos paralelos Análisis de rendimiento de algoritmos paralelos Joaquín Andrés López Molina [email protected] Daniel Mauricio Rodríguez Alpizar [email protected] Estudiantes de Ingeniería en Computación

Más detalles

Concurrencia. Concurrencia

Concurrencia. Concurrencia Concurrencia Procesos y hebras Concurrencia Programación concurrente Por qué usar hebras y procesos? Ejecución de procesos Ejecución de hebras Hebras vs. Procesos Creación y ejecución de hebras La prioridad

Más detalles

Sesión 6: Cálculo paralelo en Code-Aster

Sesión 6: Cálculo paralelo en Code-Aster en Code-Aster R. López-Cancelos 1, I. Viéitez 2 1 Departamento de Ingeniería de los Materiales, Mecánica Aplicada y Construcción, E. de Ing. Industrial, Universidad de Vigo, Campus Marcosende, E-36310

Más detalles

Introducción a los Sistemas Operativos

Introducción a los Sistemas Operativos Introducción a los Sistemas Operativos Departament d Informàtica de Sistemes i Computadors EPS d'alcoi Contenidos Introducción Hardware Qué es un Sistema Operativo Historia de los Sistemas Operativos 1

Más detalles

Evolución del software y su situación actual

Evolución del software y su situación actual Evolución del software y su situación actual El software es el conjunto de programas que permite emplear la PC, es decir, es el medio de comunicación con la computadora, el control de sus funciones y su

Más detalles

HORARIO DE LABORATORIOS , PRIMER SEMESTRE

HORARIO DE LABORATORIOS , PRIMER SEMESTRE HORARIO DE LABORATORIOS 2016-2017, PRIMER SEMESTRE 8:00-9:00 Instalaciones Eléctricas 9:00-10:00 Instalaciones Eléctricas Aula de Informática 1 Instalaciones Eléctricas Instalaciones Eléctricas 10:00-11:00

Más detalles

ÍNDICE CAPÍTULO 1 FUNDAMENTOS DE LOS MICROCONTROLADORES

ÍNDICE CAPÍTULO 1 FUNDAMENTOS DE LOS MICROCONTROLADORES ÍNDICE CAPÍTULO 1 FUNDAMENTOS DE LOS MICROCONTROLADORES 1.1 Introducción 1.2 Fundamentos de los procesadores digitales secuenciales 1.2.1 Introducción 1.2.2 Arquitectura interna 1.2.2.1 Procesadores digitales

Más detalles

Fundamentos de programación JAVA

Fundamentos de programación JAVA Pág. N. 1 Fundamentos de programación JAVA Familia: Editorial: Autor: Computación e informática Macro Ricardo Walter Marcelo Villalobos ISBN: 978-612-304-238-7 N. de páginas: 296 Edición: 2. a 2014 Medida:

Más detalles

Cómputo en paralelo con OpenMP 1

Cómputo en paralelo con OpenMP 1 Cómputo en paralelo con OpenMP 1 Miguel Vargas-Félix [email protected] http://www.cimat.mx/~miguelvargas CIMAT, September 2, 2015 1/34 Velocidad de los procesadores de escritorio Recientemente, la

Más detalles

Paralelización del código Stampack v7.10. W.Castelló F. Flores

Paralelización del código Stampack v7.10. W.Castelló F. Flores Paralelización del código Stampack v7.10 W.Castelló F. Flores Publicación CIMNE Nº-362, Julio 2011 Paralelización del código Stampack v7.10 W. Castelló F. Flores Publicación CIMNE Nº-362, Julio 2011 Centro

Más detalles

INSTITUCIÓN EDUCATIVA SAN CRISTÓBAL

INSTITUCIÓN EDUCATIVA SAN CRISTÓBAL INSTITUCIÓN EDUCATIVA SAN CRISTÓBAL MEDIA TÉCNICA EN PROGRAMACIÓN DE SOFTWARE TEMA: LOS LENGUAJES DE PROGRAMACIÓN Profesora: Beatriz Elena Herrera Legarda Qué es una computadora? Computadora electrónica

Más detalles

CLUSTER FING: ARQUITECTURA Y APLICACIONES

CLUSTER FING: ARQUITECTURA Y APLICACIONES CLUSTER FING: ARQUITECTURA Y APLICACIONES SERGIO NESMACHNOW Centro de Cálculo, Instituto de Computación FACULTAD DE INGENIERÍA, UNIVERSIDAD DE LA REPÚBLICA, URUGUAY CONTENIDO Introducción Clusters Cluster

Más detalles

FUNCIONAMIENTO DEL ORDENADOR

FUNCIONAMIENTO DEL ORDENADOR FUNCIONAMIENTO DEL ORDENADOR COMPUTACIÓN E INFORMÁTICA Datos de entrada Dispositivos de Entrada ORDENADOR PROGRAMA Datos de salida Dispositivos de Salida LOS ORDENADORES FUNCIONAN CON PROGRAMAS Los ordenadores

Más detalles

Universidad Católica de Santiago del Estero Facultad de Matemática Aplicada Carrera de Ingeniería en Electrónica

Universidad Católica de Santiago del Estero Facultad de Matemática Aplicada Carrera de Ingeniería en Electrónica PLANIFICACIÓN DE CÁTEDRA AÑO: 2006 1. IDENTIFICACION. 1.1.Asignatura: INFORMÁTICA 1.2.Carrera: Ingeniería en Electrónica. 1.3.Régimen: Primer cuatrimestre. 1.4.Promoción: Con examen final. 1.5. Correlativas:

Más detalles

Sistemas Operativos. Procesos

Sistemas Operativos. Procesos Sistemas Operativos Procesos Agenda Proceso. Definición de proceso. Contador de programa. Memoria de los procesos. Estados de los procesos. Transiciones entre los estados. Bloque descriptor de proceso

Más detalles

Conceptos generales de sistemas distribuidos

Conceptos generales de sistemas distribuidos Departament d Arquitectura de Computadors Conceptos generales de sistemas distribuidos Sistema distribuido Un sistema en el que los componentes hardware y/o software ubicados en computadores en red, se

Más detalles

UNIVERSIDAD DEL VALLE DE MÉXICO PROGRAMA DE ESTUDIO DE LICENCIATURA PRAXIS MES XXI

UNIVERSIDAD DEL VALLE DE MÉXICO PROGRAMA DE ESTUDIO DE LICENCIATURA PRAXIS MES XXI UNIVERSIDAD DEL VALLE DE MÉXICO PROGRAMA DE ESTUDIO DE LICENCIATURA PRAXIS MES XXI NOMBRE DE LA ASIGNATURA: SUPERCÓMPUTO FECHA DE ELABORACIÓN: ENERO 2005 ÁREA DEL PLAN DE ESTUDIOS: AS ( ) AC ( ) APOBL

Más detalles

INDICE Control de dispositivos específicos Diseño asistido por computadora Simulación Cálculos científicos

INDICE Control de dispositivos específicos Diseño asistido por computadora Simulación Cálculos científicos INDICE Parte I. La computadora digital: organización, operaciones, periféricos, lenguajes y sistemas operativos 1 Capitulo 1. La computadora digital 1.1. Introducción 3 1.2. Aplicaciones de las computadoras

Más detalles

INDICE Programa Entrada Unidad de control Unidad aritmética y lógica (ALU)

INDICE Programa Entrada Unidad de control Unidad aritmética y lógica (ALU) INDICE Capitulo 1. Qué es un computador? 1.1. Introducción 1 1.2. El computador como dispositivo electrónico 2 1.3. Cómo se procesa la información? 3 1.4.Diagrama de bloques de un computador 1.4.1. Información

Más detalles