Que Es Programacion Paralela

Páginas: 11 (2677 palabras) Publicado: 30 de septiembre de 2012
SISTEMAS PARALELOS


1 Programación paralela


Uso de varios procesadores trabajando juntos para resolver una tarea común, cada procesador trabaja en una porción del problema; los procesos pueden intercambiar datos, a través de la memoria o por una red de interconexión


Posibilidades:

• Segmentación encauzada. Pipeline
• Jerarquía de memorias
• División de memoria enbloques
• Paralelismo a nivel de instrucción
• Ejecución fuera de orden
• Especulación
• Múltiples unidades funcionales
• Unidades vectoriales
• Procesadores de E/S
• Varios procesadores en un chip
• LAN de altas prestaciones

La programación paralela es:


• Concurrente:
Varios procesos trabajando en la solución de un problema, puede serparalela (varios procesadores)
• Heterogénea:
Varios procesadores con características distintas
• Adaptativa:
Durante la ejecución el programa se adapta a las características del sistema
• Distribuida:
Varios procesadores geográficamente distribuidos. Hay paso de mensajes pero se necesita infraestructura especial

Porque emplear programación paralela:

• Laprogramación paralela permite:
– Resolver problemas que no caben en una CPU
– Resolver problemas que no se resuelven en un tiempo razonable
• Se pueden ejecutar
– Problemas mayores
– Más rápidamente
– Más problemas
2 Modelos de computadores paralelos

2.1 SECUENCIAL (SISD) Las instrucciones se realizan de memoria a procesador y los datos entre memoriay computador.












2.2 PARALELO (SIMD) Una única Unidad de Control. La misma instrucción se ejecuta síncronamente por todas las unidades de procesamiento. Sincronización automática. Requiere menos hardware porque sólo necesita una U.C global y menos memoria porque tiene una sola copia del programa.













2.3 PARALELO (MIMD) Cada procesador ejecuta unprograma diferente independientemente de los otros procesadores. Almacena el programa y el Sistema Operativo en cada procesador.










2.3.1 MEMORIA DISTRIBUIDA Cada procesador tiene su propia memoria local. Se utiliza paso de mensajes para intercambiar datos.












2.3.2 MEMORIA COMPARTIDA Un único espacio de memoria. Todos los procesadores tienen acceso a lamemoria a través de una red de conexión: Bus, Red de barras cruzadas, Red multietapa.





























3 Lenguales y modelos

Las variaciones entre los paradigmas están motivados por varios factores:

– Diferencia de esfuerzo invertido en escribir programas paralelos. Algunos lenguajes requieren menos esfuerzo para el programador, mientras que otrosrequieren menos trabajo pero generan un código menos eficiente.
– Un determinado paradigma de programación puede ser más eficiente que otros al programar sobre determinadas arquitecturas paralelas.
– Distintas aplicaciones tienen diferentes tipos de paralelismo y por tanto se han desarrollado diferentes lenguajes de programación para explotarlos.

3.1 Paralelismo implícito y explícito

•Explícito :
– El algoritmo paralelo debe especificar explícitamente cómo cooperan los procesadores para resolver un problema específico.
– La tarea del compilador es sencilla, en cambio la del programador es bastante difícil.
• Implícito:
– Se usa un lenguaje de programación secuencial y el compilador inserta las instrucciones necesarias para ejecutar el programaen un computador paralelo.
– El compilador tiene que analizar y comprender las dependencias para asegurar un mapeo eficiente en el computador paralelo.

3.2 Paralelismo de datos

• Facilitar al programador la tarea de expresar el paralelismo disponible en un programa de manera independiente de la arquitectura.
• Aplicaciones en las que los datos están sujetos a idéntico...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Programacion concurrente y paralela
  • Programacion Puerto Paralelo
  • Programacion Paralela Pvm
  • Programacion paralela y distribuida
  • Taller de programación paralela
  • Programacion de puertos paralelo
  • Programacion Paralela
  • Programación Paralela openMP

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS