Loquesea

Páginas: 14 (3427 palabras) Publicado: 2 de noviembre de 2012
HERRAMIENTAS PARA PROGRAMACION PARALELA
José Manuel García Carrasco
Departamento de Informática Universidad de Castilla-La Mancha

1. CONCEPTOS PREVIOS.
Gracias a las progresivas mejoras tecnológicas desarrolladas durante las décadas pasadas, la capacidad de procesamiento de los ordenadores ha aumentado cada vez más. De todas formas, estas mejoras tecnológicas -integación VLSI, aumento de lafrecuencia de reloj en los procesadores, etctienen un límite físico, por lo cual el aumento de capacidad de procesamiento no es ilimitado. Hay una serie de problemas que no se pueden resolver con este tipo de ordenadores: la circulación atmosférica y el tiempo, la evolución de las galaxias, problemas de sistemas expertos e inteligencia artificial, etc. Para la resolución de estos problemas seestá investigando intensamente desde hace dos décadas en el procesamiento paralelo. Hoy en día ya tenemos ordenadores comerciales que trabajan en paralelo, y esta parece ser la principal línea de investigación para mejorar la potencia de los ordenadores. De hecho, esta técnica ya ha llegado a los ordenadores personales gracias a la posibilidad de añadir placas que contienen varios procesadores más.Esta línea de investigación ha dado lugar a los multiprocesadores y los multicomputadores. Sin embargo, que un ordenador tenga una mayor capacidad de procesamiento no se consigue simplemente colocando un número mayor de procesadores, sino que supone una gran complejidad, tanto en el hardware como en el software. Vamos a describir brevemente esta complejidad, centrándonos en los aspectos deprogramación. En primer lugar, no todo problema puede ser paralelizado. Hay problemas que son inherentemente secuenciales y por lo tanto es difícil conseguir su ejecución en paralelo. De todas formas, la mayoría de los problemas científicos descritos anteriormente se pueden describir fácilmente en paralelo.

En segundo lugar, necesitamos una arquitectura paralela que permita ejecutar una determinadaaplicación, pero también un lenguaje adecuado que permita expresar el paralelismo del problema. Este punto ha dado lugar a diversas líneas de trabajo e investigación que vamos a describir a continuación: a) Verificación de programas paralelos. Un programa en paralelo no tiene nada que ver con un programa secuencial, pues su comportamiento es muy diferente. Las técnicas de verificación para programassecuenciales no sirven en el caso paralelo, por lo que se tiene que desarrollar toda la teoría formal de verificación de programas. Se puede citar los trabajos de [Kel76] y [Owi76] como dos trabajos pioneros que explican a fondo el problema de la verificación. Hay que tener en cuenta que en el caso paralelo nos aparecen problemas tales como el deadlock, livelock, race conditions, el nodeterminismo, etc., que complican abundantemente la verificación formal de un programa. b) Abstracción del hardware de la máquina. Mientras está claro que los lenguajes secuenciales son independientes de la máquina en que se ejecutan, no se puede decir lo mismo de los lenguajes paralelos. Es fácil que una independencia de la máquina conduzca a una pérdida de potencia, por lo que habitualmente se encuentranligados en mayor o menor medida a una arquitectura determinada. Un ejemplo de unión estrecha lo tenemos con el lenguaje Occam [Inm88], cuyo desarrollo está vinculado al del transputer [Inm89]. Lo habitual es conseguir un grado de abstracción media, es decir, abstraer los detalles de más bajo nivel (tipo de conexión entre los procesadores, potencia de cada procesador, mecanismo de acceso a memoriapor los procesadores, etc.), para dejar sólo la referencia al modelo de procesamiento empleado (sistólicos, SIMD, MIMD, etc.). c) Lenguajes síncronos o asíncronos. La mayoría de los lenguajes de programación desarrollados son asíncronos, es decir, son no deterministas y están basados en las nociones de procesos y comunicaciones entre procesos. Ejemplos de lenguajes de este tipo son el ADA,...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • LOQUESEA
  • Loquesea
  • Loquesea!
  • Loquesea
  • Loquesea
  • Loquesea
  • Loquesea
  • Loquesea

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS