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

Programación paralela. Metodología de la programación




Enviado por Pablo Turmero



Partes: 1, 2

    Monografias.com

    Programación paralela
    Especificación de problema ? algoritmo paralelo.

    Programación paralela:
    no hay recetas,
    creatividad,
    aproximación metodológica.

    Monografias.com

    Fases
    Particionado: descomponer datos y tareas
    independiente del número de procesadores

    Comunicación: establecer comunicaciones entre tareas.

    Aglomeración: combinación de tareas para reducir costes.

    Mapeo: asignación de tareas a procesadores,
    maximizar balanceo,
    minimizar comunicaciones.

    Monografias.com

    Particionado

    Descomposición del problema de grano fino: gran número de tareas.

    Descomposición del dominio: primero se descomponen los datos y después las tareas.

    Descomposición funcional: primero se descomponen las tareas y después los datos.

    Monografias.com

    Descomposición del dominio
    Conjunto de datos del mismo tamaño.

    Tareas que trabajen sobre esos datos.

    Tareas pueden necesitar información de distintos conjuntos de datos.

    Posibles distintas particiones:

    Ejemplo: malla tridimensional.

    Monografias.com

    Descomposición funcional
    Puede haber datos distintos para las distintas funciones,

    o compartición de datos:

    Por duplicación,

    Por comunicación

    Ejemplo: modelado del clima, tratamiento de imágenes.

    Monografias.com

    Particionado, chequeo
    ¿Las tareas superan al menos en un orden de magnitud el número de procesadores?
    Si no, poca flexibilidad para los pasos posteriores.

    ¿Se evita duplicación de computación y de almacenamiento?
    Si no, puede dar lugar a algoritmo no escalable.

    ¿Son las tareas de tamaño similar?
    Si no, puede ser difícil hacer una asignación balanceada.

    ¿Aumenta el número de tareas con el tamaño del problema?
    Si no, puede dar lugar a algoritmo no escalable.

    ¿Se han estudiado distintas particiones?
    ¿y descomposición del dominio y funcional?

    Monografias.com

    Comunicación
    Se definen canales (directos o indirectos) entre tareas que tienen que comunicar datos.
    Se definen mensajes a enviar y recibir.

    En paralelismo de datos no se podrán crear los canales.

    Optimización de prestaciones:

    Distribuyendo comunicaciones (paralelismo en comunicaciones). El sistema puede limitarlo (redes).

    Comunicaciones globales: identificar conjuntos de tareas que intervienen en la comunicación. Utilizar rutinas optimizadas, o programarlas si no están disponibles.

    Solapar comunicación y computación (pipeline).

    Monografias.com

    Comunicación
    Ejemplos:

    Suma de n números.

    Relajación de Jacobi.

    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