Upload
silvio-dresser
View
228
Download
0
Embed Size (px)
Citation preview
8/17/2019 4.5 Casos de Estudio
1/5
4.5 Casos de Estudio
Caso de Estudio de la Computaciòn ParalelaDescripción:
La programación paralela involucra muchos aspectos que no se presenta en la programación
convencional (secuencial). El diseño de un programa paralelo tiene que considerar entre otras
cosas el tipo de arquitectura so!re la cual se va a e"ecutar el programa las necesidades de
tiempo # espacio que requiere la aplicación el modelo de programación paralelo adecuado
para implantar la aplicación # la $orma de coordinar # comunicar a di$erentes procesadores
para que resuelvan un pro!lema com%n. E&isten varias herramientas disponi!les para
programación paralela. En el curso utili'aremos P # P* dado su alta disponi!ilidad para
computadoras di$erentes # su aceptación en la comunidad acad+mica.
PROCESAMIENTO EN PARALELOEs un proceso empleado para acelerar el tiempo de e"ecución de un programa
dividi+ndolo en m%ltiples tro'os que se e"ecutar,n al mismo tiempo cada uno en su
8/17/2019 4.5 Casos de Estudio
2/5
propios procesadores.
4.4.1. DESCRIPCIÓN
La tecnolog-a detr,s del desarrollo de componentes de sistemas computacionales ha
alcan'ado su madure' # los desarrollos est,n a punto de producirse en la era del
procesamiento en paralelo lo que signi$ica que la tecnolog-a de la computaciónparalela necesita avan'ar a%n cuando no est, lo su$icientemente madura como para
ser e&plotado como una tecnolog-a de disponi!ilidad masiva.
La ra'ón principal para crear # utili'ar computación paralela es que el paralelismo es
una de las me"ores $ormas de salvar el pro!lema del cuello de !otella que signi$ica la
velocidad de un %nico procesador.
La ra'ón de ser del procesamiento en paralelo es acelerar la resolución de un
pro!lema la aceleración que puede alcan'arse depende tanto del pro!lema en s-
como de la arquitectura de la computadora.
Las aplicaciones que se !ene$ician de una aceleración m,s signi$icativa son aquellas
que descri!en procesos intr-nsicamente paralelos las simulaciones de modelos
moleculares clim,ticos o económicos tienen todas una amplia componente paralela
como los sistemas que representan. el hardare de la m,quina entra en "uego #a que
es preciso ma&imi'ar la relación entre el tiempo de c,lculo %til # el perdido en el paso
de mensa"es par,metros que dependen de la capacidad de proceso de las CP/s #
de la velocidad de la red de comunicaciones.
0a# 1 $ormas !,sicas de o!tener partes independientes en un programa paralelo:
descomposición $uncional o descomposición de datos que descri!iremos a
continuación.
Descomposición de datos. /n e"emplo de aplicación completamente paraleli'a!le esel c,lculo del ,rea !a"o una curva por integración num+rica !asta con dividir el
intervalo de integración entre todos los procesadores disponi!les # que cada uno
resuelva su $ragmento sin preocuparse de qu+ hacen los dem,s al $inal los
resultados parciales se recolectan # se suman convenientemente.
Con n procesadores es posi!le resolver el pro!lema n veces m,s r,pido que
haciendo uso de uno sólo (salvo por el m-nimo retraso que supone el reparto de
tra!a"o inicial # la recolección de datos $inal) consiguiendo una aceleración lineal con
el n%mero de procesadores. 2i las condiciones son mu# $avora!les es incluso
posi!le alcan'ar la aceleración superlineal consistente en que el programa se
e"ecuta a%n m,s r,pido que en r+gimen linea la aparente parado"a se da de!ido a
que cada procesador cuenta con su propia memoria ordinaria # cach+ que pueden
ser usadas de $orma m,s e$iciente con un su!con"unto de datos de hecho es posi!le
que el pro!lema no se pueda resolver en un %nico procesador pero s- so!re un
con"unto de ordenadores de!idamente con$igurados simplemente por cuestión de
tamaño de los datos.
8/17/2019 4.5 Casos de Estudio
3/5
Descomposición $uncional. /n modelo computacional se !asa por empe'ar en que
una aplicación consiste en varias tareas cada tarea es responsa!le de una parte de
la carga de procesamiento de la aplicación en general # a su ve' cada tarea reali'a
una operación independiente de las otras tareas. Los algoritmos de cada tarea sondi$erentes este modelo se denomina descomposición $uncional # se puede
aprovechar las caracter-sticas particulares de cada tipo de tarea para e"ecutarlas en la
maquina que sea mas conveniente para tal e$ecto.
2e re$iere al proceso o trans$erencia de datos de $orma simult,nea en oposición al
proceso o trans$erencia en serie en la trans$erencia de datos en paralelo la
in$ormación se env-a simult,neamente en grupos por e"emplo los ocho !its de un
!#te de datos se transmiten a la ve' a trav+s de ocho hilos independientes de un
ca!le. En el proceso en paralelo # en otras operaciones similares se reali'a m,s de
un proceso a la ve' por e"emplo varios microprocesadores de una computadora
pueden estar mane"ando di$erentes aspectos de un proceso (tales como un c,lculo
complicado) al mismo tiempo.
4.4.2. EVOLUCIÓN
Durante años se han encontrado di$icultades al momento de anali'ar sistemas de
gran tamaño3 si !ien en el caso de los sistemas de potencia +ste se ha visto
$avorecido por la descripción de pro!lemas mediante matrices # por la utili'ación de
computadores digitales para su manipulación la necesidad de lograr un equili!rio en
la cantidad de in$ormación a procesar # su calidad contin%a siendo evidente.
El procesamiento paralelo ha permitido so!rellevar algunas de estas di$icultades
particularmente en lo que respecta a la velocidad de procesamiento3 siempre que laarquitectura del computador sea la apropiada.
Los sistemas paralelos me"oran la velocidad de procesamiento # de E42 mediante la
utili'ación de CP/ # discos en paralelo. Cada ve' son mas comunes computadoras
paralelas lo que hace que cada ve' sea mas importante el estudio de los sistemas
paralelos de !ases de datos.
En el proceso paralelo se reali'an muchas operaciones simult,neamente mientras
que en el procesamiento secuencial los distintos pasos computacionales han de
e"ecutarse en serie la ma#or-a de las maquinas de gama alta o$recen un cierto grado
de paralelismo de grano grueso: son comunes las m,quinas con dos o cuatro
procesadores. Las computadoras masivamente paralelas se distinguen de las
maquinas de grano grueso porque son capaces de soportar un grado de paralelismo
mucho ma#or.
5a se encuentran en el mercado computadoras paralelas con cientos de CP/6s #
discos para medir el rendimiento de los sistemas de !ases de datos e&isten dos
medidas principales la primera es la productividad: numero de tareas que pueden
8/17/2019 4.5 Casos de Estudio
4/5
completarse en un intervalo de tiempo determinado la segunda es le tiempo de
respuesta: cantidad de tiempo que necesita para complementar una %nica tarea a
partir del momento en que se env-e.
/n sistema que procese transacciones puede me"orar el tiempo de respuesta as-
como la productividad reali'ando en paralelo las distintas su!tareas de cadatransacción actualmente se han propuesto soluciones !asadas en procesamiento
paralelo para una gran cantidad de los an,lisis asociados a los sistemas3 entre +stos
se encuentran el $lu"o de potencia la simulación din,mica inclu#endo la de
transitorios electromagn+ticos3 el an,lisis de la esta!ilidad transitoria mediante
$unciones de energ-a el de la esta!ilidad a pertur!ación pequeña # a la plani$icación
de sistemas el+ctricos de potencia.
El procesamiento paralelo es particularmente atractivo si es posi!le descomponer el
sistema en su!sistemas acoplados d+!ilmente pero cada uno con sus varia!les
acopladas $uertemente.
4.4.3. CARACTERÍSTICASEl uso de varios procesadores est, motivado por consideraciones relativas a las
prestaciones #4o a la $ia!ilidad podemos clasi$icar dichos sistemas como sigue:
7 ultiprocesadores d+!ilmente acoplados 8 Consisten en un con"unto desistemas relativamente autónomos en los que cada CP/ dispone de supropia memoria principal # sus canales de E42. En este conte&to se utili'a$recuentemente el t+rmino multicomputador.7 Procesadores de /so Espec-$ico 8 9ales como un procesador de E42. Eneste caso ha# un maestro una CP/ de uso general # los procesadores deuso espec-$ico est,n controlados por la CP/ maestra a la que proporcionan
ciertos servicios.7 ultiprocesadores $uertemente acoplados 8 Constituidos por un con"unto deprocesadores que comparten una memoria principal com%n # est,n !a"o elcontrol de un mismo sistema operativo.7 Procesadores paralelos 8 ultiprocesadores $uertemente acoplados quepueden cooperar en la e"ecución en paralelo de una tarea o un tra!a"o.
El procesamiento en paralelo se !asa principalmente en ultiprocesadores
$uertemente acoplados que cooperan para la reali'ación de los procesos aqu- sus
caracter-sticas.
7 Posee dos o m,s procesadores de uso general similares # de capacidades
compara!les.7 9odos los procesadores comparten el acceso a una memoria glo!al.
7 9am!i+n pueden utili'arse algunas memorias locales (privadas como la cache).
7 9odos los procesadores comparten el acceso a los dispositivos de E42 !ien a trav+s
de los mismos canales !ien a trav+s de canales distintos que proporcionan caminos
de acceso a los mismos dispositivos.
7 El sistema est, controlado por un sistema operativo integrado que permite la
8/17/2019 4.5 Casos de Estudio
5/5
interacción entre los procesadores # sus programas en los niveles de tra!a"o tarea
$ichero # datos elementales.
La ganancia de velocidad # la amplia!ilidad son dos aspectos importantes en el
estudio del paralelismo la ganancia de velocidad se re$ieres a la e"ecución en menor
tiempo de una tarea dada mediante el incremento del grado de paralelismo laamplia!ilidad se re$iere al mane"o de transacciones mas largas mediante el
incremento del grado de paralelismo.
Consid+rese un sistema paralelo con un cierto n%mero de procesadores # discos que
esta e"ecutando una aplicación de !ase de datos supóngase ahora que se
incrementa el tamaño del sistema añadi+ndole m,s procesadores discos # otros
componentes. La amplia!ilidad esta relacionada con la capacidad para procesar m,s
largas e el mismo tiempo mediante el incremento de los recursos del sistema.
VENTAJAS Y DESVENTAJAS
E&isten algunos $actores que tra!a"an en contra de la e$iciencia del paralelismo #
pueden atenuar tanto la ganancia de velocidad como la amplia!ilidad.
7 Costes de ii!io" en una operación paralela compuesta por miles de proceso el
tiempo de inicio puede llegar ser mucho ma#or que le tiempo real de procesamiento
lo que in$lu#e negativamente en la ganancia de velocidad.
7 Ite#$e#e!i%" como lo procesos que se e"ecutan en un proceso paralelo acceden
con $recuencia a recursos compartidos pueden su$rir un cierto retardo como
consecuencia de la inter$erencia de cada nuevo proceso en la competencia este
$enómeno a$ecta tanto la ganancia de velocidad como la amplia!ilidad.
7 Ses&o: normalmente es di$-cil dividir una tarea en partes e&actamente iguales
entonces se dice que la $orma de distri!ución de los tamaños es sesgada.El procesamiento paralelo implica una serie de di$icultades a nivel programación de
so$tare es di$-cil lograr una optimi'ación en el aprovechamiento de los recursos de
todas las CP/ con el que se est+ tra!a"ando sin que se $ormen cuello de !otella. En
muchas de las ocasiones no es posi!le el tra!a"ar con equipos multiprocesadores
dado el elevado costo que este representa as- que solo se dedica a ciertas ,reas de
investigación especiali'ada o pro#ectos gu!ernamentales o empresariales.