programa

Páginas: 32 (7875 palabras) Publicado: 24 de febrero de 2015
1
CONCEPTOS GENERALES

1.1. Necesidad del paralelismo
En la actualidad, hay una gran demanda de computadores rápidos para muchos campos de
aplicación de tipo científico, técnico, médico, etc. Para muchas de estas áreas de aplicación, se
necesita un gran volumen de cálculo. Sin el empleo de computadores muy potentes, muchos de
los cálculos precisos para este tipo de aplicaciones no podríanrealizarse a una velocidad razonable. Por otra parte, las tendencias actuales de la ciencia y la técnica siguen planteando problemas
que exigen cada vez más y más potencia de cálculo. Todo esto hace que las prestaciones de los
computadores deban mejorar continuamente.
Para ver de una forma más palpable la necesidad actual de computadores más rápidos pondremos un ejemplo: los satélitesartificiales envían información a la tierra al ritmo de 1020
bits/sg. Todo este volumen de información se utiliza para efectuar predicciones meteorológicas, etc. Si queremos procesar esta información con el fin de que los resultados de ese proceso
sean útiles, deben procesarse con una velocidad suficiente. Teniendo en cuenta que los cálculos
para este tipo de aplicaciones no son sencillos, se podríaestimar que la velocidad de proceso
necesaria, para que los resultados se obtengan antes de dejar de ser útiles, debe ser de unas 1023
operaciones/sg.
Es conocido que la velocidad de los computadores ha ido aumentando con el tiempo según
las evoluciones de la Tecnología. En cualquier caso, existen límites físicos para el aumento
indefinido de la velocidad de las máquinas (velocidad de la luz,capacidad de los conductores,
disipación de calor en los circuitos integrados, etc.). Estas limitaciones provocan que se busquen
nuevas alternativas para aumentar las prestaciones de las máquinas. Una de las alternativas que
resulta más evidente es poner a trabajar varios elementos de proceso simultáneamente, dicho
de otra forma, tratar de desarrollar el paralelismo; así el trabajo se repartiráy se tardará menos
tiempo en completar el proceso de cálculo.
1

2

Conceptos generales

1.2. Concepto de paralelismo
Definiremos el procesamiento paralelo como la forma de computación que explota la concurrencia en el proceso de cálculo.
En esta definición, la palabra concurrencia se refiere a la ejecución simultánea de diferentes
acciones.
El procesamiento paralelo puede explotarsea diferentes niveles (Gajski & Peir, 1985). Describiremos estos niveles en orden descendente:
Nivel de trabajo (job): se trata de ejecutar simultáneamente diferentes trabajos (procesos) independientes en diversos elementos de proceso. Este nivel de paralelismo lo puede manejar
completamente el gestor de procesos del sistema operativo (scheduler), asignando cada
trabajo a un procesadordiferente. En este nivel una de las explotaciones más sencillas
del paralelismo es el multiproceso simétrico (SMP) que consiste en tener varias colas de
procesos, asignando cada una a un procesador diferente.
Nivel de procedimiento: este nivel trataría de ejecutar diferentes procedimientos de un mismo
proceso de forma simultánea sobre elementos de proceso diferentes.
Nivel de instrucción: se trataríade ejecutar diferentes instrucciones, de una misma tarea simultáneamente. Una de las formas más fáciles de explotar el paralelismo a este nivel, es
provocar que iteraciones diferentes de un bucle sean ejecutadas en procesadores distintos.
Nivel intrainstrucción: explota el paralelismo dentro de cada instrucción, ejecutando de forma
simultánea varias acciones de cara a la ejecución de lasinstrucciones. Un ejemplo de este
nivel de paralelismo lo constituyen los procesadores segmentados. En ellos se divide la
ejecución de cada instrucción en pasos, y cada paso es ejecutado por una etapa diferente
del procesador (segmento), de forma que pueden ejecutarse simultáneamente acciones
diferentes de distintas instrucciones.
Es posible implementar el paralelismo a uno o más de estos niveles...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Programa
  • Program
  • Un Programa
  • Programas
  • Programas
  • Programa
  • Programador
  • Program

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS