Cluster Alto Rendimiento

Share Embed Donate


Short Description

En este artículo se realiza una introducción a los conceptos y definiciones que se necesitan para el desarrollo de un cl...

Description

Cluster de Alto Rendimiento Dan Daniel Jime imenez nez

Andr Andres es Medi edina

 Instituto de Electr´  onica Aplicada, Universidad Mayor de San Andr´  es  La Paz, Bolivia djimen dji menezj ezjere erez@g z@gmai mail.c l.com om

wellvu wel lvu@ho @hotma tmail. il.com com

art ´ıculo ıculo se realiza una introducci on o´ n a los  Resumen— En este art´ conceptos y definiciones que se necesitan para el desarrollo de un cluster de computadoras, as´ı como los componentes y las funciones funciones del mismo, mismo, tambi tambi en e´ n se calculan los tiempos de proce proceso so de dos progr programa amass ejecut ejecutado adoss con difer diferent entes es condiciones en el cluster dise ˜  dise ˜  nado.

I.

´ I NTRODUCCI ON

El termino e´ rmino cluste clusterr (grupo (grupo o racimo racimo)) se define define como como el conjunto de computadores que se comportan como si fuesen un u´ nico computador. La tecnolog´ unico tecnolog´ıa ıa de clusteres ha evolucionado en apoy apoyo o de acti activi vida dade dess que que van van desd desdee apli aplica caci cion ones es de superc´ supercomputo o´ mputo y software de misiones cr ´ıticas, ıticas, servidores web y Figura 1: Cluster de Almacenamiento comercio electr onico, o´ nico, hasta bases de datos de alto rendimiento, entr entree otro otross usos usos.. El comput o´ mputo o con cluste clusteres res surge surge como como resultado de la convergencia de varias tendencias actuales que  B. Alta Disponibilidad  Los cluster cluster de alta disponibilid disponibilidad ad proporcion proporcionan an continua continua incluyen incluyen la disponibil disponibilidad idad de micropro microprocesad cesadores ores econ´omicos omicos dispon dis ponibi ibili lidad dad de los servic ser vicios ios a trav tra v es e ´ s de la elim el imin inac acii on o´ n de alto rendimien rendimiento to y redes redes de alta velocida velocidad, d, el desarrollo desarrollo alla por por un unico u´ nico elemen elemento to y a trav´ trav´es es del proces proceso o ´ de herramientas de software para c omputo distribuido de alto de la falla recuperaci´ ci´on on en contra contra de fallo falloss al trasla trasladar dar el servic servicio io rendimie rendimiento, nto, as´ as´ı como como la crecie creciente nte necesi necesidad dad de potenc potencia ia de recupera ´ desde el nodo de cluster err o oneo neo a otro nodo completamente computacional para aplicaciones que la requieran. funcional. funcional. Generalment Generalmente, e, los servicios servicios en los cluster de alta ´ II. C LASIFICACI ON DE LOS  C LUSTERES disponibilidad leen y escriben datos a trav es e´ s de la lectura y escritura a un sistema de archivos montado. As´ı, ı, un cluster de Un clus luster ter pued uede estar star cons consttitui ituido do por por dos dos o m as a´ s comput computado adores res,, de los cuales cuales se espera espera que presen presente te uno o alta disponibilidad debe mantener la integridad de los datos cuando cuando un nodo nodo recibe recibe el contro controll del servicio servicio desde desde otro otro diferentes combinaciones de los siguientes servicios: nodo. Los nodos err oneos o´ neos no son vistos por los clientes fuera •  Almacenamiento del cluster. Los cluster de alta disponibilidad son conocidos tambi´en en como cluster con recuperaci´on on contra fallas. •  Alta disponibilidad •

 Balance de carga



 Alto rendimiento

 A.

Almacenamiento Un cluster de almacenamiento proporciona una imagen de sistema sistema de archiv archivos os consiste consistente nte a lo largo largo de los servidores servidores en el cluster, permitiendo que los servidores lean y escriban de forma forma simult simult´anea a´ nea a un sistem sistemaa de archi archivo voss compar compartid tido. o. Un cluster de almacenamiento simplifica la administraci on ´ de almacenamiento al limitar la instalaci´on on de aplicaciones a un sistema de archivos. Asimismo, con un sistema de archivos a lo largo del cluster, un cluster de almacenamiento elimina la necesidad de copias de m as a´ s de los datos de la aplicaci on o´ n y ´ simplifica la creaci on o´ n de copias de seguridad y recuperaci on contra desastres.

Figura 2: Cluster de Alta Disponibilidad

1

Trusted by over 1 million members

Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.

Trusted by over 1 million members

Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.

Trusted by over 1 million members

Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.

Trusted by over 1 million members

Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.

C.

Balanc Balancee de Carga Carga Los cluste clusterr de balanc balancee de carga carga respon responden den a petici peticione oness de servic servicios ios de red desde desde difere diferente ntess nodos nodos para para balanc balancear ear las las peti petici cion ones es a los los lar largo de los los nodo nodoss del del clus cluste terr. El balance de carga proporciona escalabilidad econ´omica omica porque se puede configurar el n umero u´ mero de nodos de acuerdo con los requerimientos de balance de carga. Si un nodo en un cluster de balance de carga falla, el software de balance de carga detecta la falla y asigna las peticiones a otros nodos en el cluster. Los nodos err´oneos oneos en un cluster de balance de carga no son visibles desde los clientes fuera del cluster.



 Almacenamiento



 Sistemas operativos



 Conexiones de red



  Middleware



 Protocolos de comunicaci on o´ n y servicios



  Aplicaciones



 Ambientes de programaci on o´ n paralela

 A.

Nodo Nodo es un punto de intersecci on o´ n de dos o mas elementos, depend dependien iendo do del paradi paradigma gma en que se encuen encuentre tre;; un nodo nodo en redes de computadores es un servidor, mientras que para estructur estructuras as de datos din´amicas amicas,, un nodo nodo es un regis registr tro o que contie contiene ne un dato dato de inter´ inter´es. e s. En el ambito a´ mbito de programac programaci´ i´on on paralela, un nodo puede ser de dos tipos:

Dedicado:  Es un computador sin perif ´ perif ericos e´ ricos de salida, es decir no tiene conectado ni el teclado, ni mouse, ni monitor, solamente se encuentra conectado a los dem as a´ s nodos. Este tipo de nodos solo realizan trabajo del cluster, no hacen ninguna tarea individualmente. individualmente.

Figura 3: Cluster de Alta Disponibilidad

 D.

ericos de salida, los No dedicado:   Es un computador con perif´ericos mas importantes son el teclado y el monitor, ademas se encuentra conectado a los dem as a´ s nodos. En este tipo de nodo se realizan dos tipos de tareas, las relacionadas con el cluster y las tareas individuales del nodo, estas ultimas se realizan como ultima prioridad, por tanto se efect´uan en los periodos de reloj libres que dejan las tareas del cluster.

Alto Rendimiento Los cluste clusterr de alto alto rendim rendimien iento to utiliz utilizan an los nodos nodos para para ejecutar c´ calculos a´ lculos simult aneos. a´ neos. Un cluster de alto rendimiento permi permite te que las aplica aplicacio ciones nes trabaj trabajen en de forma forma parale paralela, la, mejorand mejorando o as´ as´ı el rendim rendimien iento to de estas. e´ stas. Los cluste clusterr de alto alto  B. Almacenamiento rendimie rendimiento nto son conocidos conocidos como cluster cluster computaci computacional onales es o El almacenamiento en un cluster es un punto muy delicado y computaci´on on de red. a tomarse muy en cuenta, ya que este puede ser compartido o individual en cada nodo. El problema mas importante esta en la sincronizaci´ sincronizacion o´ n de lectura/escritura as´ as ´ı como el tiempo que usa cada nodo ya que el bus es compartido y el acceso es unico. u´ nico. El protocolo mas usado para el acceso al almacenamiento almacenamiento es NFS 1 . En cuanto a hardware, se pueden utilizar discos duros por cada nodo (sistema tipo DAS 2 ), o bien un unico u´ nico disco compartido 3 entre los nodos (sistema tipo NAS ). El sistema compartido obtiene el acceso a trav es e´ s de los protocolos CIFS, NFS, FTP o TFTP. C.

Sistem Sistema a Opera Operativ tivo o El sistem sistemaa operat operativ ivo o debe debe ser multip multiproc roceso eso,, ya que es el que permitir permitir´a´ una gesti gestion o´ n eficien eficiente te de los recursos recursos en cada cada nodo, nodo, tanto tanto para para el balanc balanceo eo de carga carga en cada cada nodo, nodo, como como para la eficiencia del cluster en su totalidad. Los mas comunes

Trusted by over 1 million members

Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.

Trusted by over 1 million members

Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.

Trusted by over 1 million members

Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.

 D.



  GNU/Linux



  Unix



  Windows



  Mac OS



  Solaris



  FreeBSD Conexiones de Red 

Para un buen rendimiento del cluster la conexi´on on entre los nodos debe ser lo menos compleja posible, para incrementar la ´ Para velocidad en el intercambio intercambio de informaci on. Para ello se utilizan utilizan diferentes tecnolog´ tecnolog ´ıas ıas en los adaptadores de red.

F.

Protoc Protocolos olos de Comunicac Comunicaciion ´  y Servicio

Protocolo es un conjunto de reglas que permiten que dos o mas entidades se comuniquen para transmitir cualquier tipo de informaci on o´ n por medio de un enlace f ´ısico. ısico. Por ejemplo, entre un nodo y el sistema de almacenamiento com´un se puede utilizar el protocolo FTP, entre nodo y nodo se puede utilizar el protocolo UDP y entre el cluster y el cliente se puede utilizar el protocolo TCP/IP. G.

Aplica Aplicacio ciones nes

En la actu actual alid idad ad exis existe ten n un gran gran nume numero ro de clus cluste tere ress implem implement entado ados, s, los ejemp ejemplos los mas mas sobres sobresali alient entes es son los servid servidore oress de Google Google,, Faceb Facebook ook,, Amazon Amazon,, tareas tareas:: etc. etc. Las aplicaciones son muchas y son variadas, se pueden realizar las siguientes

Ethernet:   Es la mas utilizada en la actualidad, aun as´ as ´ı no es la mas eficaz ya que limita el tama no n˜ o de paquete, realiza una excesiva comprobaci´on on de errores y los protocolos no son muy avanzados, un ejemplo es el protocolo TCP/IP. La solucion ´ a algunos de estos problemas puede ser el uso de Gigabit Ethernet (1 Gbit/s) o mejor aun 10 Gigabit Ethernet (10 Gbit/s), con una latencia de 30 a 100  µs. Myrinet:   Si se dese deseaa una una red red de baja baja late latenc ncia ia,, esta esta es la elecci´ eleccion o´ n perfecta ya que llega a tener de 3 a 10 µs, con una velocid velocidad ad de transf transfere erenci nciaa de 2 a 10 Gbit/s Gbit/s.. Los protocolos sobre esta red son MPICH-GM, MPICH-MX, Sockets-GM y Sockets MX,



  Predicciones Meteorol´ogicas ogicas



 Predicciones Burs´ Bursatiles a´ tiles



 Simulaciones de Comportamiento Cinem atico a´ tico y Din´ Dinamico a´ mico de componentes mec anicos a´ nicos



  Dise˜ Diseno n˜ o y an´ analisis a´ lisis de nuevo materiales



 Estudio de f armacos a´ rmacos y enfermedades epid emicas e´ micas



  Dise˜no no de Estructuras moleculares



  Creacion o´ n y renderizaci on o´ n de fotogramas de animaci on o´ n

InfiniBand:  Es la red con mayor ancho de banda, 96 Gbit/s y •   Investigaci on o´ n en general latencia de 10  µ s. Define una conexion o´ n entre un nodo de computaci´on on y un nodo de I/O. La conexi´on on va desde un • etc 4 5 HCA hasta un TCA . Se est´a usando principalmente para  H. Ambientes de Programaci Programaci´  on ´  Paralela acceder a arrays de discos SAS. Los Los ambi ambien ente tess de prog progra rama maci ci´on o´ n para parale lela la perm permit iten en SCI: 6 Es una tecnolog´ tecnolog´ıa ıa bastante escalable, se aplica en las impl implem emen enta tarr algo algori ritm tmos os que que haga hagan n uso uso de recu recurs rsos os topolog´ıas ıas de anillo (1D), toro (2D), e hipercubo (3D) sin compartidos: CPU, memoria, datos y servicios. necesidad de un switch. Se tienen tasas de transferencia de hasta 5,3 Gbit/s y latencia de 1,43  µs. ˜ IV. DIS E NO  E.

Middleware Middleware

Es un software que produce la interacci on ´ entre el sistema operati operativo vo y las aplicaci aplicaciones. ones. Mediante Mediante middlew middleware are se tiene tiene la sensaci sensaci´on o´ n de que se esta esta utiliz utilizand ando o una ordenado ordenadorr muy potent potentee en lugar lugar de vario varioss comune comunes. s. Es el encar encargad gado o de congel congelar ar o descon descongel gelar ar proces procesos, os, balanc balancear ear la carga, carga, etc. etc. Tambi ambi en e´ n mediante esta herramienta se pueden conectar mas nodos al cluster y utilizarlos sin tener que realizar una tarea compleja para poder distribuir los procesos con los nuevos nodos. Existen varios tipos de este software algunos ejemplos son: MOSIX,

 A.

Hardware Hardware

El cluster dise nado n˜ ado es del tipo Beowulf, este es un sistema de computo o´ mputo paralelo basado en clusters de ordenadores personales conectados a trav es e´ s de redes inform aticas a´ ticas est andar, a´ ndar, sin el uso de equipos desarrollados espec´ıficamente ıficamente para la computaci´on on paralela. Las caracter´ caracter ´ısticas ısticas son las mismas en las cuatro PC’s y son las siguientes:

Procesador:   Intel Pentium D CPU @ 3.40 Ghz

Trusted by over 1 million members

Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.

Trusted by over 1 million members

Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.

Trusted by over 1 million members

Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.

 B.

CSMA/CD12 que incrementa la latencia y reduce la velocidad de la obtenci´on on de resultados; esta basado en el est´andar andar IEEE 802.3.

Sistema Operativo

Figura 5: S.O. Ubuntu

Es una distribuci´ distribuci´on on de Ubunt Ubuntu u para para servid servidore oress basada basada en Debian. La diferencia con el anterior sistema es que en este se deben instalar todos los paquetes y configurar cada nodo para funcionar como parte del cluster, cluster, diferenciando el nodo maestro de los nodos esclavos. C.

Figura 7: Cable UTP y Conector RJ45

Las direcciones IP’s se designan de la siguiente manera:

Almace Almacenam namien iento to

El almacenamiento del cluster es el disco duro que se halla en el nodo nodo maestr maestro, o, este este disco disco tiene tiene una capaci capacidad dad de 150 7 Gb @ 133 Mbps bajo la tecnolog tecnolog´´ıa ıa IDE o ATA8 .   El nodo maestro comparte una carpeta con los nodos esclavos mediante la tecnolog´ tecnolog´ıa ıa libre NAS 9 mediante el protocolo NFS 10 . 1)

Proto Protocol colo o NFS 

Es un protocolo de nivel de aplicaci on, o´ n, de acuerdo con el 11 modelo modelo OSI OSI , este este prot protoc ocol olo o hace hace posi posibl blee que que un nodo nodo acce acceda da a los archivos de otro como si fueran propios del mismo mediante una conexi´on on de red, este protocolo esta incluido por defecto en los sistemas UNIX y en algunos sistemas Linux.

Figura 8: Par´ Parametros a´ metros de la Red

 E.

Middleware Middleware

En el desarr desarroll ollo o del cl uster ´ se utiliz utilizo´ el softwa software re SSH13 , este software brinda la posibilidad de conectarse desde el nodo maestro a los nodos esclavos. Una vez que se ha compartido una carpeta o un sistema de archivos se conecta mediante SSH y se inicia un proceso en cada nodo, todo desde el nodo maestro.

Figura 6: Sistema de Archivos en Red

 D.

Conexi´  Conexion ´  de Red 

Ethernet es el medio m as a´ s utilizado por su bajo costo y su f acil a´ cil instalaci on, o´ n, esta tecnolog tecnolog´ıa ıa es solo solo recome recomenda ndable ble para para prop´ propositos ´ de estudio ya que cuenta con detecci on o´ n de colisiones

Figura 9: Identificaci´ Identificacion o´ n mediante llaves SSH

SSH trabaj trabajaa de forma forma pareci parecida da a telnet telnet,, pero pero utiliza utiliza un cifrad cifrado o para que la informaci´on on no sea legible, con la unica u ´ nica manera de acceder a esta esta informaci´on on es por medio de ataques de

Trusted by over 1 million members

Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.

Trusted by over 1 million members

Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.

Trusted by over 1 million members

Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.

F.

Administr Administrador ador de Pro Proceso cesoss 1) Open OpenMP MPD D MPD es un administrador de procesos compatible com MPI hasta la versi on o´ n 1.2. MPD trata de evitar el env´ env ´ıo ıo de procesos a los nodos esclavos, solo cuando el nodo maestro no es suficiente para ejecutar un proceso, entonces es que MPD comienza a mandar tareas, pero lo hace hasta que el siguiente nodo tampoco abastezca; se observa que MPD es eficiente para tareas que necesiten de c´ calculos a´ lculos muy largos. 2) Hydr Hydra a Hydra es un administrador de procesos compatible con MPI desde la versi on o´ n 1.3. Hydra al contrario de MPD trata de usar procesado procesadores res alejados alejados al nodo maestro, maestro, tanto tanto para reducir la carga a este, como para tener mas n´ucleos ucleos activos y usar todos los periodos de clock para realizar los c alculos a´ lculos en todos los nucleos u´ cleos Hydra es eficiente cuando los procesos no son muy pesados y cuando se tiene una gran cantidad de datos. G.

Ambiente Ambiente de Progr Programaci´  amaci´  on Paralela Para poder ejecutar programas se necesita de un entorno, en nuestra investigaci´on on utilizamos dos diferentes. 1)

MPI  

MPI MPI15 ,   es un est´andar andar de paso de mensajes que define la sintax sintaxis is y la sem´antica antica de las funciones funciones de una librer´ librer´ıa ıa en ´ ˜ un lengua lenguaje je en espec espec´ıfico ı fico,, en el cual cual se dise dise˜nan nan programas programas que explo explotan tan a los multip multiproc rocesa esador dores es o bien bien a un sistem sistemaa multin ucleo. u´ cleo. MPI tiene soporte para C, C++, C#, Fortran, Ada, Python, OCaml, Java y c´odigo odigo ensamblador.



  Bucle PARFOR: p a rf r f o r i = 1 :8 :8 A( i ) = i ; en d

1 2 3

Salida del procesador 1: Salida del procesador 2: Salida del procesador 3: Salida del procesador 4:

1, 2 3, 4 5, 6  7, 8 

En este este caso caso tomand tomando o en cuenta cuenta que cada cada proces procesado adorr realiza 2 procesos y que cada proceso toma 10 µs el tiempo total es de: 10µs ×  2 = 20µs Claramente en el ejemplo anterior se nota que el tiempo se reduce a 41  utilizando 4 n ucleos u´ cleos que solamente usando 1 n ucleo. u´ cleo. Y como este ejemplo existen muchos otros pero este tema sera tratado en los siguientes cap´ıtulos. ıtulos. V.  A.

RESULTADOS

Benchmark  HPC T e s t − − − − − − − − − − − − − − Q u an a n t it i t y o f p r o c e s s or or s = 4 C al a l ccu u lt l t aaii on on t i m e = 1.10 seconds C lu l u st s t eerr s p e e d = 1 6 3 6 MFLOPS



− − − − − − − − − − − − − − − − − − − −

Clu ste r Clu ste r Clu ste r Clu ste r

n o de de n o de de n o de de n o de de

N00 N01 N02 N03

speed speed speed speed

= = = =

4 09 09 4 09 09 4 09 09 4 09 09

M FL FLOPS M FL FLOPS M FL FLOPS M FL FLOPS

2) Octa Octave ve − − − − − − − − − − − − − − − − − − − − GNU Octave es un software libre enfocado a los c´alculos matem´ matematic a´ ticos os.. Es el equi equiva vale lent ntee al soft softwa ware re priv privat atiivo de Mathworks   MATLAB. Este software ejecuta scripts que Los resultados anteriores indican claramente que el numero de sean compatibles con MATLAB , es decir que es compatible operaciones de punto flotante por segundo que puede realizar 6 con archi archivo voss de exten extensi´ si´on on .m, es un lenguaje lenguaje interpretado interpretado.. el cluster es de  1636 × 10 , esto es 4 veces mayor al numero de Actual Actualme mente nte octav octavee tiene tiene mucha muchass funcio funciones nes nativ nativas as para para operaciones de un simple nodo. el procesam procesamient iento o paralelo paralelo,, entre entre algunas algunas se puede nombrar  B. C alculo ´  ´  de Pi basicam a´ sicament entee es un bucle bucle f or pero pero que utiliz utilizaa vario varioss  parf or, q u e b´ El prim primeer caso caso de estu estudi dio o es el c´alcul lculo o de pi con con procesadores para realizar la ejecuci on. o´ n. Un ejemplo practico a´ ctico es programaci´ programacion o´ n para parale lela la.. Pi es una una raz razon. o´ n. Es la resp respue uest staa a el siguiente: la pregunta: pregunta: ¿como se relaciona relaciona la distancia distancia a trav trav es e´ s de un •   Bucle FOR: circulo (el di ametro a´ metro con la distancia a su alrededor)?. Durante milenios se ha sabido que las dos medidas de un c ´ırculo ırculo est an a´ n f o r   i = 1 :8 :8 1 relacionadas. El reto estaba en descubrir como. Pi es irracional. 2 A( i ) = i ; 3 en d Su valo valorr se pare parece ce a 22/7 22/7,, pero pero como como ocur ocurre re con con todo todoss los numeros umer ´ os irraciona irracionales, les, ninguna ninguna fracci fracci on o´ n puede describir describirlo lo Salida del procesador: 1, 2, 2, 3, 4, 5, 5, 6, 7, 8  perfectamente, y la expresi on o´ n decimal continuar a´ para siempre sin repetici repeticione ones. s. Luego, Luego, como Phi, Phi, y e, pi es una constant constantee natural que es imposible conocer completamente. Eso no ha

Trusted by over 1 million members

Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.

Trusted by over 1 million members

Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.

Trusted by over 1 million members

Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.

Figura 10: C´ Calculo a´ lculo de Pi por el m´ metodo e´ todo Monte-Carlo

Supongamo Supongamoss que los dardos dardos se reparten reparten uniforme uniformement mente, e, entonce la probabilidad de que un dardo caiga en el cuadrante del circulo es: ´ Area del cuadrante P  = Area del cuadrado

P  =

π 4

Si lanzamos N dardos sobre el cuadrado, y sea M el n umero u´ mero de dardos que caen en el cuadrante. La frecuencia relativa de ca ´ıda ıda M  π en el cuadrante N  , ser´ sera´ aproximadamente igual a 4 . Por tanto:

π  =

4  ×  M  N 

Se util utiliz iz´o´ este   algoritmo   en dife difere rent ntes es ambi ambien ente tes. s. El balanceador de trabajos que se utiliz´o es OpenMPD, este evita el retardo que pueda provocarse en la red del cluster; lo que hace hace es envia enviarr trabaj trabajos os a los nodos nodos m as a´ s lejano lejanoss siempr siempree y cuando los m´ mas a´ s cercanos est en e´ n ocupados. Es decir que si el nodo maestro se configur o´ para trabajar en conjunto con el cluster y definimos dos procesos, tomando en cuenta que cada nodo tiene dos procesadores, el trabajo se realizara solo en el nodo maestro. maestro. Si definimos definimos tres procesos, procesos, el balancead balanceador or verifica verifica que dos de los procesos ser an a´ n realizados en el nodo maestro y enviara el proceso sobrante al nodo m as a´ s cercano al maestro. Con Con ello ello se pued puedee afirm afirmar ar que que solo solo cuan cuando do se defin definan an siet sietee o m´as as procesos es que las cuatro computadoras del cluster trabajaran en conjunto. Por ello es que este administrador es muy recomendable cuando se utiliza una infraestructura tipo Beowulf. El otro ambiente o condici´on on es cuando se define que el nodo maestro no trabaje en conjunto con el cluster. Esto tiene un gran efecto como se verifica mas adelante, ya que al tener al nodo maestro solo como emisor de trabajos y receptor de resultados se gana un tiempo importante y el proceso se culmina en menor tiempo que cuando este trabaja. Por otra otra parte parte no es estric estrictam tament entee limita limitante nte el n umero u´ mero de procesos, aunque se tienen solamente 8 n ucleos u´ cleos de trabajo en total, se pueden asignar el n umero u´ mero de procesos que se desee a

Figura 11: Algoritmo para el c´ calculo a´ lculo de Pi

Trusted by over 1 million members

Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.

Trusted by over 1 million members

Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.

Trusted by over 1 million members

Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.

Trusted by over 1 million members

Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.

1)

Proces Procesamien amiento to con el maestr maestro o incluido incluido

PC

Proc Proces esos os

t1 [µs]

t2 [µs]

t3 [µs]

t4 [µs]

t5 [µs]

tpromedio [µs]

Error [×10−12 ]

1

1

6887

6932

6898

6909

6909

6907

8.333410

1

2

1205

1172

1099

1219

1202

1179,4

8.333387

2

3

215

249

284

168

189

221

8.333387

2

4

252

209

244

209

256

234

8.333307

3

5

121

157

113

95

102

117.6

8.333298

3

6

95

118

124

96

97

106

8.333312

4

7

61

52

43

95

51

60.4

8.333312

4

8

62

67

71

66

52

63.6

8.333312

Cuadro 1: Tiempos para c´ calculo a´ lculo de Pi con nodo maestro

Figura 12: Diferencia de tiempo en 5 tomas

Trusted by over 1 million members

Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.

Trusted by over 1 million members

Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.

Trusted by over 1 million members

Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.

Se puede notar una gran diferencia en los tiempos de c alculo. a´ lculo.

tmax  = 6932µ 6932µs tmin  = 43 43µ µs

(1 Proc Proces eso o / 1 PC) PC) (7 Proc Proces esos os / 4 PC) PC)

Incremento = Incremento = 161. 161.21 21X  X  2)

Proces Procesamien amiento to sin sin el nodo nodo maestr maestro o

PC

Proc Proces esos os

t1 [µs]

t2 [µs]

t3 [µs]

t4 [µs]

t5 [µs]

tpromedio [µs]

Error [×10−12 ]

1

1

4899

4899

4888

4905

4911

4900.4

8.333410

1

2

1022

1157

1164

1187

1385

1183

8.333387

2

3

737

797

799

743

731

761.4

8.333387

2

4

296

272

254

270

234

265.2

8.333307

3

5

144

195

189

192

137

171.4

8.332980

3

6

147

198

110

135

110

140

8.333312

4

7

50

31

41

41

41

40.8

8.333307

4

8

27

38

32

29

26

30.2

8.333321

4

9

20

20

22

20

16

19.6

8.333325

4

10

16

22

20

16

22

19.2

8.333321

4

11

20

20

20

16

19

19

8.333319

4

12

15

13

10

17

13

13.6

8.333325

4

13

15

10

13

11

13

12.4

8.333334

4

14

14

13

15

14

13

13.8

8.333343

4

15

9

11

13

10

12

11

8.333343

4

16

11

11

8

11

10

10.2

8.333343

Trusted by over 1 million members

Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.

Trusted by over 1 million members

Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.

Trusted by over 1 million members

Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.

Figura 14: Diferencia de tiempo en 5 tomas

Figura 15: Comparaci´on de tiempo con respecto a procesos y CPU’s

El aparente incremento de tiempo al usar el nodo maestro tiene una explicaci on. o´ n. Cuando el nodo maestro trabaja conjuntamente con el cluster, cluster, este realiza 3 trabajos de fondo. Primero env´ıa ıa los trabajos a cada nodo del cluster, cluster, despu ´es debe realizar la cantidad de trabajos que le son asignados como a cualquiera de los nodos esclavos, y por ´ultimo ultimo debe recibir los resultados de todos los dem´ demas a´ s nodos e ir sumando parcialmente hasta llegar al resultado final.

Trusted by over 1 million members

Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.

Trusted by over 1 million members

Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.

Trusted by over 1 million members

Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.

C.

Estimador Estimador de Regre Regresi si´  on ´  Nadaraya-Watson El estimador de Nadaraya-Watson es uno de los mecanismos de Regresion o´ n no param´ parametrica e´ trica m´ mas a´ s prestigiosos. Usa un m etodo e´ todo Kernel de estimaci on o´ n de funciones de densidad. Un Kernel muy usual es la distribuci´on on Normal. Por ejemplo una N(0, 1). Al par´ parametro a´ metro h se le denomina ventana y, en realidad, modifica ´ de la Normal, si es esta la dispersion e´ sta la que act ua u´ a de Kernel. Es una forma forma origin original al de constr construir uir una estim estimaci aci o´ n de la variable dependiente “y” a partir de un valor de una variable independiente “x”, bas´andose andose exclusivamente en la posici´on on de los valores de la muestra que tenemos. Se trata de un mecanismo de construcci on ´ de la variable “y” ponderando los valores muestrales de esta variable seg un u´ n la distancia que haya desde el valor de “x” a los valores muestrales de la variabl variablee independi independiente ente.. La ponderaci´ ponderaci´on on se material materializa iza mediante el numerador del Kernel. Supongamos que este e´ ste sea la N(0, 1), entonces si el valor de “x” est a´ cerca de un valor muestral muestral de la variabl variablee independie independiente nte la resta resta ser a´ un valor pr´ proximo o´ ximo a cero y tendr a´ en la Normal un valor grande. Sin embargo, los valores alejados dar´an an restas grandes en valor absolu absoluto to y en la Normal Normal tendr tendr a´ un valor alor proximo o´ ximo a cero. cero. Observemos, pues, que el valor de “y” para esa “x” estar a´ muy influido por los valores muestrales cercanos.



Racine17 demuestr demuestraa que la paraleliz paralelizaci aci on o´ n MPI MPI pued puedee ser ser usada para acelerar el c´alculo alculo del estimador de regresi´on on del Kernel, por medio del c alculo a´ lculo de ajustes de porciones de la muestra muestra en diferente diferentess computad computadoras. oras. La figura figura 16   muestra el incremento en la velocidad de c alculo a´ lculo para problemas de econometr´ econometr´ıa ıa en un cluster de 12 computadoras. El incremen incremento to para k   nodos nodos es el tiempo tiempo para finali finalizar zar el problema en un solo nodo dividido entre el tiempo para finalizar el problema en k   nodos. Se obtiene un incremento de 10X. Como se aprecia en el gr afico, a´ fico, la regresi on ´ Kernel es la que incrementa la velocidad de c alculo, a´ lculo, seguida seguida por Montecarl Montecarlo, o, Bootstrap, MLE y GMM, en ese mismo orden. Este   algoritmo es el que se uso para la investigaci on o´ n con el soporte del software Octave en tres diferentes condiciones. 1)

C alculo ´  ´  solo en el nodo maestro

Tiempo [s]

Datos

Procesos

1000

2000

5000

7000

10000

2

0,908

2,421

13,821

106,074

264,369

3

0,467

1,201

5,312

10,736

197,566

4

0,322

0,811

3,464

11,979

100,989

5

0,245

0, 0 ,605

2,606

5,135

45,85

6

0,203

0,51

2,266

4,711

32,678

7

0,176

0,421

1,922

3,995

31,808

8

0,157

0, 0 ,372

1,646

3,591

18,17

n

gˆ(x) =

yt K [x  −  xt /γ n ]

t=1

 n

K [x  −  xt /γ n ]

t=1

 n

gˆ(x) =

wt yn

t=1

Lo que vemos es que el peso depende de cada punto en la muestra. Para calcular el ajuste en cada punto de la muestra de datos de tama no n˜ o  n , en el orden de  n 2 k calculos a´ lculos realizados, donde k  es la dimensi on o´ n del vector descriptivo de variables  x.

Cuadro 3: Tiempos de c´alculo alculo utilizando solo el nodo maestro

Trusted by over 1 million members

Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.

Trusted by over 1 million members

Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.

Trusted by over 1 million members

Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.

2)

C alculo utilizando todo el cluster  ´  ´ 

Tiempo [s]

3)

Datos

C alculo utilizando solo los nodos esclavos ´  ´ 

Tiempo [s]

Datos

Procesos

1000

2000

5000

7000

10000

Procesos

1000

2000

5000

7000

10000

2

0,889

2,292

10,585

23,027

15,38

2

0,08

0,119

0,286

0,643

1,038

3

0,461

1,156

2,087

10,2

45,155

3

0,042

0,059

0,133

0,213

0,636

4

0,317

0,769

3,313

6,648

22,571

4

0,041

0,041

0,09

0,318

0,626

5

0,24

0,588

2,482

4,873

11,082

5

0,034

0,043

0,067

0,119

0,48

6

0,19

0,473

2,069

4,263

8,149

6

0,02

0,028

0,064

0,109

0,411

7

0,169

0,391

1,716

3,704

10,501

7

0,028

0,025

0,051

0,097

0,388

8

0,146

0,349

1,507

3,045

8,486

8

0,025

0,031

0,063

0,092

0,563

Cuadro 4: Tiempos de c´alculo alculo utilizando todo el cluster

Cuadro 5: Tiempos de c´alculo alculo utilizando solo los nodos esclavos

Figura 18: Tiempos de c´ calculo a´ lculo utilizando todo el cluster

Figura 19: Tiempos de c´ calculo a´ lculo utilizando solo los nodos esclavos

tmax  = 45 45..155s tmin  = 0.146s

(3 Proces Proceso o / 10000 10000 Datos) Datos) (8 Proces Procesos os / 1000 1000 Datos) Datos)

tmax  = 1.038s tmin  = 0.02s

(2 Proces Proceso o / 10000 10000 Datos) Datos) (6 Proces Procesos os / 1000 1000 Datos) Datos)

Trusted by over 1 million members

Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.

Trusted by over 1 million members

Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.

Trusted by over 1 million members

Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.

Trusted by over 1 million members

Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.

VI.

CONCLUSIONES

 Se comprob´ comprobo´ que el benchmarck del cluster es la suma algebraica de los benchmark de cada uno de los nodos que constituyen el cluster. cluster. •   Se obtuvo un incremento muy grande en el tiempo de calculo a´ lculo en los program programas as con los que se realiz realizo o esta esta investigaci on. o´ n. • Se debe debe tene tenerr cuid cuidad ado o al defin definir ir si el nodo nodo maes maestr tro o trabajar´ trabajara´ en conjunto con el cluster, ya que de ser as´ as ´ı se producen dos tipos de resultados. ◦  Cuando el nodo maestro tambi en e´ n trabaja se producen cola colass en la red red y esto esto hace que el tiem tiempo po de tota totall se incr increm emen ente te ya que que el nodo nodo maes maestr tro o reci recibe be los los resultado resultadoss de los nodos nodos esclavo esclavoss solamente solamente despu es e´ s de acabar con su propio trabajo. Pero dado que los calculos a´ lculos se han realizado en una cantidad mayor de procesos se obtiene un error menor. ◦  Cuando el nodo maestro no trabaja con el cluster, solo se encar encarga ga de envia enviarr trabaj trabajos os y recibi recibirr result resultado ados, s, con lo que la red no se encuentra congestionada ya que cada nodo env´ env´ıa ıa sus resultados al maestro y este comienza a procesar procesarlos los inmediatame inmediatamente, nte, y se encuentra encuentra en la capacidad de enviar nuevamente trabajos a los nodos que hayan finalizado para que cada nodo del cluster se encuentre activo en todo momento. Dado que los calculos a´ lculos se realizan realizan en menor cantidad cantidad de procesos procesos se obtiene un error mayor, pero este error se puede subsanar enviando una mayor cantidad de paquetes a •

optimizado para correr en un ambiente paralelo termina en mucho menor tiempo que en un ambiente serial.

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF