Monografias.com > Computación > Programación
Descargar Imprimir Comentar Ver trabajos relacionados

Tipos de problemas paralelos. Metodología de desarrollo de programas paralelos




Enviado por Pablo Turmero



Partes: 1, 2

    Monografias.com

    Índice
    1. Introducción.
    2. Análisis de algoritmos.
    3. Metodología de desarrollo de programas paralelos.
    4. Esquemas de algoritmos paralelos.
    5. Problemas numéricos. Librerías.

    Monografias.com

    ? Los problemas que pueden resolverse mediante un algoritmo paralelo son, obviamente, muy heterogéneos.

    Suelen ser problemas de complejidad elevada, aún no perteneciendo al grupo de problemas intratables (el número de operaciones crece de forma rápida –p.e. exponencial– con el tamaño del problema).

    Monografias.com

    ? Dentro del conjunto de problemas tratables (el número de operaciones crece polinómicamente con el tamaño del problema) se suelen dar dos situaciones que hacen necesaria la programación paralela:

    – Problemas de gran dimensión

    – Problemas de tiempo real
    Otro tipo de problemas: problemas de gran desafío, por su relevancia social (genoma humano, meteorología, clima, fenómenos sísmicos…).

    Monografias.com

    ? Diferentes modelos sobre distintos aspectos de la programación paralela:
    Modelo arquitectónico: arquitectura de la máquina
    — multiprocesadores: memoria compartida
    — multicomputadores: paso de mensajes
    — modelos mixtos
    – Modelo de programación: herramientas de alto nivel (OpenMP, MPI).
    – Modelo de coste: permite evaluar el coste del algoritmo.

    Monografias.com

    Índice
    1. Introducción.
    2. Análisis de algoritmos.
    3. Metodología de desarrollo de programas paralelos.
    4. Esquemas de algoritmos paralelos.
    5. Problemas numéricos. Librerías.

    Monografias.com

    ? En la programación paralela (al igual que en la secuencial) son necesarias herramientas que permitan estimar el tiempo de ejecución y la memoria consumidos por un algoritmo, para determinar si es adecuado o no para la resolución del problema.

    El objetivo es desarrollar algoritmos eficientes (eficiencia: relación entre los recursos que consume y los resultados que obtiene).

    Monografias.com

    ? Factores que influyen en el tiempo de ejecución de un programa:

    el lenguaje de programación (el programador)
    – la máquina
    – el compilador (opciones)
    – los tipos de datos
    – los usuarios que estén trabajando en el sistema

    Monografias.com

    ? Factores que influyen en el tiempo de ejecución de un programa paralelo:

    – la competencia por la memoria (bloques de cache)
    – la fracción de código secuencial (Amdahl)
    – la creación/asignación de procesos
    – la computación extra: variables de control, identificación de procesos, cálculos adicionales…
    – la comunicación (para memoria distribuida)
    – la sincronización
    – los desequilibrios de carga

    Partes: 1, 2

    Página siguiente 

    Nota al lector: es posible que esta página no contenga todos los componentes del trabajo original (pies de página, avanzadas formulas matemáticas, esquemas o tablas complejas, etc.). Recuerde que para ver el trabajo en su versión original completa, puede descargarlo desde el menú superior.

    Todos los documentos disponibles en este sitio expresan los puntos de vista de sus respectivos autores y no de Monografias.com. El objetivo de Monografias.com es poner el conocimiento a disposición de toda su comunidad. Queda bajo la responsabilidad de cada lector el eventual uso que se le de a esta información. Asimismo, es obligatoria la cita del autor del contenido y de Monografias.com como fuentes de información.

    Categorias
    Newsletter