Análisis de endimien o de un clus e he e ogéneo
o mado po placas Raspbe y Pi
Pe o mance analysis o a he e ogeneous clus e
consis ing o Raspbe y Pi boa ds
T abajo de Fin de G ado
G ado en Ingenie ía de Compu ado es
Facul ad de In o má ica
Uni e sidad Complu ense de Mad id
2019/2020
F ancisco Ja ie Aba ca Calde ín
Di igido po :
Albe o Núñez Co a ubias
Pablo Ce o Cañiza es
2
3
Ag adecimien os
A mi amilia po su con ianza.
A mi pa eja po su ayuda y su apoyo incondicional.
A mis amigos po aguan a me en los momen os de más p esión.
A Albe o y a Pablo po su paciencia y su buen hace , ayudándome y aconsejándome en
cada momen o.
Muchas g acias a odos.
4
5
Resumen
En el año 1965 Go don E. Moo e o muló la conocida ley de Moo e, la cual expone que
cada dos años - ap oximadamen e - se duplica ía el núme o de ansis o es po unidad
de supe icie de un ci cui o in eg ado, p esagiando, de es a mane a, la e olución que
lle a ía la ecnología desde en onces. Es a p edicción, se ha es ado cumpliendo
p ác icamen e has a nues os días, donde pa ece que se ha llegado a un pun o de
sa u ación en el que no se puede a anza an ápido como se ha es ado haciendo
an e io men e. Pa a consegui mejo es endimien os se es á op ando po la
pa alelización de p ocesos, lo cual, siemp e ha es ado p esen e en los clus e s o
supe o denado es u ilizados po cen os de in es igación, emp esas y uni e sidades.
En 2011, con la inalidad de es imula el ap endizaje de in o má ica en las escuelas,
su ge Raspbe y Pi, una placa compu ado a de bajo cos e y de amaño educido. A pa i
de en onces ha su gido una comunidad muy ac i a in oluc ada en un amplio ango de
p oyec os. En e o as posibilidades, es as placas pueden ejecu a Linux, pe mi en su
in e conexión pa a pa alelización de p ocesos, pe mi iendo así, el despliegue de un
clus e pe sonal con un p esupues o limi ado y que ocupe muy poco espacio, algo
impensable hace unos años.
Con el a ance de la ecnología, es p obable que al ex ende un clus e ya exis en e, se
puedan añadi placas más po en es a las ac uales. De es a o ma, consegui emos
aumen a signi ica i amen e el endimien o del clus e . En es e p oyec o se ealiza un
es udio de endimien o de un clus e de bajo p esupues o o mado po placas Raspbe y
Pi 3 y Raspbe y Pi 4. Es e clus e es á o mado po las dos úl imas e siones de la placa,
las cuales, ienen di e en e po encia. De es a o ma, es posible ealiza expe imen os
con di e en es con igu aciones del clus e , ealizando ejecuciones sob e placas iguales
o mezclando dis in os ipos de placas. El obje i o consis e en compa a dis in as
con igu aciones que u ilicen un único ipo de placa (homogéneas) con uno que u ilice
dis in os ipos de placa (he e ogéneo), analizando las di e encias de endimien o de
dis in os expe imen os y compa ando es os endimien os con el de un o denado
pe sonal. Pa a la elabo ación de es e análisis, se ejecu a án a ias aplicaciones, en e
ellas, p ác icas de la asigna u a PSD y benchma ks conocidos y adop ados po la
comunidad cien í ica.
Palab as cla e: clus e , MPI, Raspbe y Pi, p uebas, endimien o y dis ibuido
6
Abs ac
In 1965 Go don E. Moo e o mula ed Moo e's amous law, which s a es ha -
app oxima ely - e e y wo yea s he numbe o ansis o s pe uni a ea o an in eg a ed
ci cui would double, hus o eshadowing he e olu ion ha he echnology would b ing
since hen. This p edic ion has been p ac ically ul illed un il ou days, whe e i seems
ha a sa u a ion poin has been eached and, he e o e, i is no possible o ad ance as
as as i has been done be o e. In o de o achie e be e pe o mance, he
pa alleliza ion o p ocesses is being chosen, which has always been p esen in he
clus e s o supe compu e s used by esea ch cen e s, companies and uni e si ies.
In 2011, wi h he aim o s imula ing compu e lea ning in schools, Raspbe y Pi, a low-
cos and small-sized compu e boa d, was c ea ed. Since hen, a e y ac i e communi y
has eme ged in ol ing a wide ange o p ojec s. Among o he possibili ies, hese boa ds
can un Linux, allowing hei in e connec ion o pa alleliza ion o p ocesses, hus
allowing he deploymen o a pe sonal clus e wi h a limi ed budge occupying e y li le
space, some hing un hinkable a ew yea s ago.
Wi h he ad ance o echnology, i is likely he clus e migh be ex ended by adding mo e
powe ul boa ds. In his way, we will be able o signi ican ly inc ease he pe o mance
o he clus e . In his p ojec , a pe o mance s udy is being ca ied ou on a low-budge
clus e made up o Raspbe y Pi 3 and Raspbe y Pi 4 boa ds. This clus e consis s o he
wo la es e sions o he boa d, which ha e di e en powe le els. Thus, i is possible
o pe o m expe imen s wi h di e en con igu a ions o he clus e , pe o ming
execu ions on he same boa ds o mixing di e en ypes o boa ds. The objec i e is o
compa e di e en con igu a ions ha use a single ype o boa d (homogeneous) wi h
one ha uses di e en ypes o boa d (he e ogeneous), analyzing he di e ences in
pe o mance o di e en expe imen s and compa ing hese pe o mances wi h a
pe sonal compu e . Fo he elabo a ion o his analysis, se e al applica ions a e
execu ed, among hem, p ac ices o he subjec PSD and benchma ks known and
adop ed by he scien i ic communi y.
Keywo ds: clus e , MPI, Raspbe y Pi, es s, pe o mance y dis ibu ed compu ing
7
Índice
Índice de igu as ............................................................................................................. 10
1. In oducción ........................................................................................................... 11
1.1 Obje i o ................................................................................................................ 11
1.2 Alcance y mo i ación ............................................................................................ 12
1.3 Plan de abajo ...................................................................................................... 12
1.4 Es uc u a del documen o .................................................................................... 14
1. In oduc ion ................................................................................................................ 15
1.1 Goals ..................................................................................................................... 15
1.2 Scope and mo i a ion ........................................................................................... 16
1.3 Wo kplan .............................................................................................................. 17
1.4 Documen s uc u e ............................................................................................. 18
2. Elemen os del clus e ............................................................................................. 19
2.1 Placas Raspbe y Pi ............................................................................................... 19
2.2 Placas u ilizadas en el mon aje del clus e ........................................................... 20
2.2.1 Mon aje de las placas en el clus e ................................................................... 21
2.3 Swi ches ................................................................................................................ 22
2.4 Almacenamien o .................................................................................................. 22
2.5 Alimen ación ......................................................................................................... 23
3. Con igu ación del clus e ........................................................................................ 25
3.1 Con igu ación del on -end ................................................................................. 25
3.1.1 Ins alación de MPI ............................................................................................. 25
3.1.2 Con igu ación de ed ......................................................................................... 27
3.1.3 Con igu ación de NFS ........................................................................................ 27
3.2 Con igu ación de los nodos .................................................................................. 28
3.2.1 Con igu ación clien e NFS .................................................................................. 28
3.3 Comunicación en e on -end y los nodos .......................................................... 29
3.4 A anque sin HDMI ............................................................................................... 29
4. Con igu ación del p oceso de e aluación .............................................................. 31
4.1 Con igu ación del PC ............................................................................................. 31
8
4.1.1 Con igu ación de di ec o ios compa idos ........................................................ 31
4.2 Con igu aciones del clus e .................................................................................. 32
4.3 Aplicaciones .......................................................................................................... 35
4.3.1 Mul iplicación de ma ices ................................................................................ 35
4.3.2 Comp esión dis ibuida ..................................................................................... 36
4.3.3 Fil ado de imágenes ......................................................................................... 36
4.3.4 NAS Pa allel Benchma ks (NPB) ........................................................................ 36
5. Análisis de endimien o .......................................................................................... 37
5.1 Mul iplicación de ma ices ................................................................................... 37
5.2 Comp esión dis ibuida ........................................................................................ 38
5.3 Fil ado de imágenes ............................................................................................ 40
5.3.1 Fil ado es á ico ................................................................................................. 40
5.3.2 Fil ado dinámico ............................................................................................... 41
5.3.3 Compa a i a ejecución es á ica-dinámica ........................................................ 42
5.4 NAS Pa allel Benchma ks ...................................................................................... 43
5.4.1 Tiempo de ejecución y MOPS....................................................................... 43
6. Conclusiones y T abajo u u o ................................................................................ 47
6.1 Conclusiones ......................................................................................................... 47
6.2 T abajo u u o ....................................................................................................... 48
6. Conclusions and u u e wo k ...................................................................................... 49
6.1 Conclusions ........................................................................................................... 49
6.2 Fu u e wo k .......................................................................................................... 50
9
16
• Selec ion o he di e en con igu a ions o he clus e whe e he pe o mance
will be analyzed and he MPI applica ions will be execu ed, as well as he choice
o MPI applica ions ha will be used o ca y ou he pe o mance s udy.
• Execu ion o MPI applica ions. This objec i e consis s in he execu ion o he
di e en es s in bo h he he e ogeneous con igu a ion o he clus e and in he
wo homogeneous con igu a ions o he clus e . The use o di e en cha ac e
in as uc u es allows a mo e exhaus i e s udy o he p oposed clus e .
• Finally, a compa a i e analysis o pe o mance be ween he p oposed clus e
and a gene ic compu e is ca ied ou . Fo his pu pose, he esul s o he
esea ch ca ied ou in he p e ious objec i es a e compa ed wi h he execu ion
o he selec ed applica ions on a con en ional pu pose PC.
1.2 Scope and mo i a ion
The scope o his p ojec is academic. This p ojec allows us o obse e he pe o mance
o a low budge clus e using di e en con igu a ions. The esul s o he di e en
execu ions allow us o obse e he scalabili y o a sys em o hese cha ac e is ics and
show he pe o mance o hese clus e s compa ed o a con en ional PC. The clus e can
be used in i s di e en a ian s by s uden s o he acul y, so hey can easily un
applica ions on i o pe o mance analysis.
Cu en ly - gene ally due o secu i y easons - i is no allowed o un MPI applica ions
on di e en compu e s wi hin he compu e science acul y o he Complu ense
uni e si y o Mad id. This limi a ion makes he p oposed clus e pa icula ly use ul o
s uden s, allowing he execu ion o hei p ac ices in a eal en i onmen ins ead o a
simula ed one. A he same ime, hey will be able o s udy i s unc ionali y and
pe o mance acco ding o he amoun and e sion o he boa ds used.
The use o Raspbe y Pi boa ds has led o di e en p ojec s, bo h by indi iduals and
companies. The well-known company O acle, in Sep embe 2019 a O acle's OpenWo ld
con e ence in he ci y o San F ancisco, showed clus e o med by 1,060 Raspbe y Pi 3
boa ds connec ed by 22 swi ches and capable o execu ing 4,240 p ocesses
simul aneously.
17
1.3 Wo kplan
The planning o his p ojec is di ided in o h ee dis inc pa s, as shown in Figu e 1 and
Figu e 2.
The i s pa (weeks 1-2), consis s o a gene al o ganiza ion o he wo k o be done.
Du ing he i s week he p ojec is s udied in a gene al way, analyzing he echnologies
o be used, how he assembly was going o be done, and wha con igu a ions needed o
be modi ied o he ope a ion o he clus e . In he second week he di e en asks
de ec ed in he p e ious week a e o ganized and in o ma ion is ga he ed o ca y hem
ou co ec ly.
The second pa , om week 3 o week 5 and adding week 8 la e , consis s o he
assembly, con igu a ion and deploymen o he clus e . Du ing weeks 3 and 5 he
assembly and con igu a ion o he Raspbe y 3 clus e is ca ied ou , while in week 8 he
assembly and con igu a ion o he Raspbe y Pi 4 clus e is ca ied ou , which is delayed
wi h espec o he es due o logis ical easons un ela ed o he p ojec .
In he hi d pa (week 6 and weeks 9 o 12), he de ini ion and execu ion o he di e en
es s is ca ied ou . The de ini ion is done du ing week 6. Howe e , i is no un il week 9
- when all he boa ds a e p ope ly con igu ed - whe e he execu ion o he expe imen s
can begin.
The ou h pa (weeks 7-8 and 10-14), consis s o p ojec documen a ion. In week 7 and
week 8, he documen s uc u e is de ined and, a he same ime, he documen a ion o
he clus e con igu a ion is s a ed. Be ween weeks 10 and 14 du ing he execu ion o
he es s, he p ojec memo y is w i en in de ail, whe e he esul s o he di e en es s
execu ed a e added and analyzed.
18
1.4 Documen s uc u e
This documen is di ided in o six chap e s wi h he ollowing con en :
• Chap e 1: In his chap e he e is a p ologue o he wo k ca ied ou explaining
in an in oduc o y way he wo k plan ollowed, he scope, mo i a ion and a
summa y o he objec i e o he p ojec .
• Chap e 2: This chap e de ails he ma e ial used o he elabo a ion o he
p ojec , as well as he echnologies used.
• Chap e 3: This chap e p esen s he opology and con igu a ion used o he
p ope unc ioning o he clus e .
• Chap e 4: This chap e explains he di e en combina ions o boa ds ha will
be used in he p ojec and he p og ams ha will be execu ed o pe o m he
analysis.
• Chap e 5: This chap e compa es he esul s ob ained om he di e en
execu ions o he selec ed applica ions in di e en en i onmen s.
• Chap e 6: This chap e includes he gene al conclusions o he p ojec .
19
2. Elemen os del clus e
En es e capí ulo se de allan los elemen os u ilizados en el clus e , así como el so wa e
u ilizado pa a la ealización y con igu ación del mismo. La Figu a 3 mues a un esquema
de la a qui ec u a gene al del clus e , donde se ap ecian los dis in os ipos de placa -
Raspbe y Pi3 y Raspbe y Pi4 - además de los swi ches pa a pode conec a las mismas
a la ed de comunicaciones.
Figu a 3 Esquema de la a qui ec u a del clus e
2.1 Placas Raspbe y Pi
El clus e es á o mado po di e en es placas Raspbe y Pi que son las enca gadas de
ealiza el abajo dis ibuido desde el on -end y ealiza los di e en es cómpu os
es ablecidos po las aplicaciones MPI. Ac ualmen e exis en a ios modelos de placas
Raspbe y Pi, los cuales son desc i os a con inuación:
Raspbe y Pi 1: Model A+ y Model B+. Es a es la p ime a e sión de Raspbe y que sale
al me cado, incluye 26 pue os GPIO, HDMI y RCA y una memo ia RAM de 256 Mb en su
p ime modelo, el A. Es e modelo cuen a con un p ocesado Single-Co e de 700 MHz,
una g á ica B oadcom Videoco e IV y slo pa a a je as SD. En el modelo B + cuen a con
4 pue os USB, se le añade pue o E he ne y se p oduce un aumen o de su memo ia
RAM a 512Mb. Es e modelo sus i uye el slo pa a a je as SD, po sopo e pa a a je as
mic oSD.
Raspbe y Pi 2: Model B. Es a e sión de la placa Raspbe y Pi cuen a con di e sos
cambios con espec o a la Raspbe y Pi 1. En e ellos, encon amos 40 pines GPIO, la
20
sup esión del pue o RCA, el uso de 1Gb de memo ia RAM compa ida con la g á ica y
la sus i ución del p ocesado Single-Co e de 700 MHz po un Quad Co e de 900 MHz de
ecuencia.
Raspbe y Pi 3: Model A+, Model B y Model B+. Es a gene ación, supe a po p ime a
ez la ecuencia de 1GHz incluyendo un p ocesado QuadCo e 1.2GHz. En es a
gene ación se comienza a inclui Wi-Fi y blue oo h. En el caso de la Model B+, se
aumen a la ecuencia del p ocesado a 1,4Ghz y se añade un pue o Gigabi .
Raspbe y Pi 4: Model B. Es a placa iene a ias e siones, a iando su memo ia RAM
en e 2Gb, 4Gb y 8Gb. Como el an e io modelo, cuen a con pue o Gigabi E he ne y
se sus i uyen los pue os USB po USB 3.0. Con espec o al p ocesado es a e sión iene
equipada con un Quad-Co e que unciona a una ecuencia de 1,5 GHz.
Raspbe y Pi Ze o: Ze o y Ze oW. La Raspbe y Pi Ze o es una placa de un amaño aún
más educido. Cuen a con unas medidas de 65mm x 31mm. Es a placa dispone de un
p ocesado Single-Co e de 1GHz, 512MB de memo ia RAM, dos mic oUSB pa a
alimen ación y da os, y en adas mini HDMI y mini RCA. De es e ipo de placas exis e
una segunda e sión Raspbe y Pi Ze oW que incluye Wi-Fi.
Las placas seleccionadas pa a el clus e son dos e siones di e en es de Raspbe y Pi:
Raspbe y Pi 3 modelo B y Raspbe y Pi 4 modelo B
2.2 Placas u ilizadas en el mon aje del clus e
La mayo ía de las placas que con o man el clus e son placas Raspbe y Pi 3 modelo B
( e Figu a 4). En conc e o con amos con 9 de es as placas. Es e modelo de Raspbe y Pi
se lanzó al me cado en eb e o de 2016 siendo el modelo menos po en e que a a es a
p esen e en el clus e , ac ualmen e es e ipo de placas ienen un p ecio de 40€.
Figu a 4 Raspbe y Pi 3 Modelo B.
Las especi icaciones de es e modelo son las siguien es:
21
• SoC: B oadcom BCM2837
• CPU: 1,2GHz 64-bi quad-co e ARM 8
• RAM: 1GB LPDDR2
• E he ne socke E he ne 10/100 BaseT
• 802.11 b / g / n LAN inalámb ica y Blue oo h 4.1
• USB 4 x Conec o USB 2.0
Al se un clus e he e ogéneo, ambién se u ilizan 4 placas Raspbe y Pi 4 modelo B ( e
Figu a 5). Exis en a ios modelos con a iaciones en la capacidad de la memo ia RAM,
con una capacidad de 2GB, 4GB y 8GB y con un p ecio ap oximado de 40€, 60€ y 80€
espec i amen e. Es e p oyec o es á lle ado a cabo con placas de 4GB de RAM.
Figu a 5 Raspbe y Pi 4 Modelo B.
Las especi icaciones de es a placa son las siguien es:
• SoC: B oadcom BCM2711
• CPU: 1.5GHz 64-bi quad-co e Co ex-A72
• RAM: 4 GB LPDDR4 SDRAM
• E he ne Gigabi E he ne
• 802.11ac LAN inalámb ica y Blue oo h 5.0
• USB 2 x Conec o USB 2.0
• USB 2 x Conec o USB 3.0
2.2.1 Mon aje de las placas en el clus e
Las placas es án colocadas en una ca casa e ical minimizando así el espacio ocupado.
El modelo de ca casa seleccionado es ”Joy-I Towe -Case pa a Raspbe y Pi” con
capacidad pa a 7 placas Raspbe y Pi ( e Figu a 6). Es a ca casa iene un p ecio
ap oximado de 9€
22
Figu a 6 Ca casa “Joy-i Towe Case”
2.3 Swi ches
Los swi ches se enca gan de la conexión en e las di e en es placas. En es e caso
enemos dos swi ches de ocho pue os cada uno. Los modelos seleccionados han sido
Swi ch TP-Link TL-SG108E ( e Figu a 7) y D-LINK DGS-1008D ( e Figu a 8) y ienen un
p ecio de 30€ y 20€ espec i amen e.
2.4 Almacenamien o
Las placas Raspbe y Pi no cuen an con almacenamien o in eg ado. Po ello, es
necesa io con a con a je as mic oSD donde almacena el sis ema ope a i o. En es e
caso se han u ilizado a je as mic oSD de 16Gb pa a cada una de las placas en el clus e .
Es as a je as ienen un máximo de elocidad de lec u a de 45 MB/s y ienen un p ecio
ap oximado de 9€.
Figu a 7 TP-Link TL-SG108E
Figu a 8 D-LINK DGS-1008D
23
2.5 Alimen ación
Pa a la alimen ación del módulo o mado po Raspbe y Pi 3 an o del clus e como del
swi ch se ha u ilizado un ca gado USB de 10 pue os que unciona a 5V y 2,4A ( e Figu a
9). El modelo seleccionado ha sido el de AmazonBasics, ya que p opo ciona el ol aje y
la in ensidad necesa ios pa a alimen a el clus e , ocupa poco espacio y cuen a con un
in e up o de segu idad in e no que pe mi i á p o ege y apaga el clus e de una o ma
sencilla. Es a alimen ación iene un cos e de 25€
Figu a 9 Alimen ación USB 10 pue os
Pa a las Raspbe y Pi 4 se han u ilizado los ca gado es o iciales USB ipo C de 5,1V, 3A y
con un cos e de 11€ ( e Figu a 10).
Figu a 10 Alimen ación Raspbe y Pi 4
24
25
3. Con igu ación del clus e
En es e capí ulo se desc iben en de alle las dis in as con igu aciones del clus e
u ilizadas pa a la ejecución de las p uebas. Po un lado, se p opo cionan las
especi icaciones de las di e en es placas Raspbe y Pi que se u ilizan como on -end y
como nodos de cómpu o. Po o o lado, se de alla la in e acción del clus e con el on -
end pa a lle a a cabo la ejecución de aplicaciones MPI.
3.1 Con igu ación del on -end
Al necesi a una ins ancia de los di e en es p og amas y una o ma independien e de
accede al clus e , se ha decidido u iliza una placa que ealiza a el ol de on -end,
desde la cual se ejecu an los expe imen os y que si e pa a ac ua de in e media io
en e el usua io y el clus e . Desde es a placa es desde la que se lanzan las p uebas y la
que compa en los di e en es ecu sos con el es o del clus e . El on -end al igual que
el es o de placas Raspbe y Pi, necesi a pa a unciona la ins alación de un sis ema
ope a i o. En es e caso se ha u ilizado Raspbian Bus e Li e
1
, un sis ema ope a i o de
Raspbe y Pi basado en Debian Bus e . Cabe des aca que se u iliza es a e sión li e ya
que no a a se necesa ia la u ilización de una in e az g á ica.
En es e caso es impo an e an o la u a de ins alación de MPI como la di ección IP que
se le asigne, ya que pa a e i a la necesidad de ins ala MPI en cada uno de los nodos de
cómpu o, es e on -end compa e median e NFS con el es o del clus e , al y como se
de alla en los siguien es pun os, la ins alación de MPI, haciendo de es a o ma el clus e
más ex ensible.
3.1.1 Ins alación de MPI
El p ime paso pa a la con igu ación de nues o equipo es la ins alación de MPI (Message
Passing In e ace). MPI es una biblio eca de código abie o que se u iliza pa a la
pa alelización de a eas, la cual nos pe mi i á u iliza los nodos de nues o clus e de
mane a simul ánea en la ejecución las p uebas seleccionadas. Pa a ello, se ha
seleccionado la dis ibución MPICH
2
, que se a a de una implemen ación es ánda de
MPI de al o endimien o. En es e caso la ins alación que se ha ealizado es de la e sión
3.1.
1
h ps://www. aspbe ypi.o g/downloads/ aspbe y-pi-os/
2
h ps://www.mpich.o g/
32
Pa a que se pueda ene acceso a es os ecu sos compa idos desde el on -end se
deben segui las ins ucciones es ablecidas en el pun o 3.2.1 se debe c ea una nue a
ca pe a en el on -end /home/sha ed dónde ealiza el mon aje del di ec o io
compa ido con el equipo. Una ez hecho es o se ac ualiza el iche o /e c/ s ab
añadiendo la di ección IP del equipo seguido de dos pun os y su di ec o io a compa ido,
y sepa ado po un espacio se añade el di ec o io del on -end en el que se quie e
ealiza el mon aje del di ec o io:
169.254.12.15:/home/sha ed /home/sha ed n s
Pa a comp oba su co ec o uncionamien o bas a ía con accede a la ca pe a c eada
desde el on -end y comp oba que los a chi os mos ados co esponden a los del
equipo.
4.2 Con igu aciones del clus e
Pa a ealiza el análisis de endimien o, se han seleccionado es aplicaciones MPI. Po
un lado, es as aplicaciones se ejecu an en con igu aciones homogéneas, es deci , la
aplicación se ejecu a en un mismo ipo de placa. Po o o lado, se p opone u iliza una
con igu ación he e ogénea, o mada po los dos ipos de placa. Así, con amos con es
con igu aciones de inidas.
Figu a 11 Clus e homogéneo de Raspbe y Pi 4 sin on -end
33
La p ime a con igu ación - homogénea - es á o mada po 4 placas Raspbe y Pi 4 ( e
Figu a 12). Al con a con p ocesado es Quad-co e al igual que las placas Raspbe y Pi 3,
es a con igu ación puede ejecu a 16 p ocesos simul áneamen e.
La segunda con igu ación, al igual que la an e io , es una con igu ación homogénea. En
pa icula , es a con igu ación cuen a con 8 placas Raspbe y Pi 3. La Figu a 11 mues a
es a con igu ación, donde se ap ecian las 8 placas con 4 núcleos cada una, po lo que
se pueden p ocesa 32 p ocesos de o ma simul ánea.
Figu a 12 Clus e homogéneo de Raspbe y Pi 3 sin on -end
Po úl imo, la e ce a con igu ación (Figu a 13) es he e ogénea, es deci , es á o mada
po placas de di e en es ipos, conc e amen e, es a con igu ación cuen a con 12 placas
en o al, 8 aspbe y Pi 3 y 4 Raspbe y Pi 4 como puede e se en la Figu a 13, en es a
Figu a se puede obse a an o la pa e del clus e de Raspbe y Pi 3, de la Figu a 11,
como el clus e o mado po placas Raspbe y Pi 4, los swi ches de ambos clus e s es án
conec ados con un cable de ed, y en medio, con una ca casa anspa en e se obse a
el on -end, que es el enca gado de la dis ibución del abajo. Con es a con igu ación
pueden ejecu a se 48 p ocesos de o ma simul ánea.
34
Figu a 13 Clus e He e ogéneo de Raspbe y Pi 3 y Raspbe y Pi 4 con on -end
Pa a la ejecución de las p uebas en las di e en es con igu aciones, se han gene ado es
a chi os en el on -end denominados machine ile, machine ileRP3 y
machine ileRP4, los cuales con ienen las di ecciones IP de odos los nodos, los
nodos Raspbe y Pi 3 y los nodos Raspbe y Pi 4, espec i amen e. El iche o
machine ile es el u ilizado pa a la con igu ación he e ogénea, a la cual se le ha á
e e encia a pa i de aho a en el p esen e documen o como con ig he Pis. Es e iche o
iene el siguien e o ma o:
169.245.12.2:4
169.245.12.3:4
169.245.12.4:4
169.245.12.5:4
169.245.12.6:4
169.245.12.7:4
169.245.12.8:4
169.245.12.9:4
169.245.12.10:4
169.245.12.11:4
169.245.12.12:4
169.245.12.13:4
35
Como se puede obse a , el iche o incluye las di ecciones IPs en los que se a a ealiza
la ejecución seguida de dos pun os y el núme o de co es que an a ejecu a en cada uno
de ellos. Las con igu aciones homogéneas con end án únicamen e las di ecciones de las
placas Raspbe y Pi del mismo ipo: En el caso del de la con igu ación homogénea de
placas Raspbe y Pi 3, que se e e encia más adelan e como con ig homRP3, su iche o
machine ileRP3 con end á las di ecciones comp endidas en e 169.254.12.2 y
169.254.12.9; y la con igu ación homogénea o mada po placas Raspbe y Pi 4, a la cual
se le ha á e e encia como con ig homRP4, su iche o machine ileRP4 con end á las
di ecciones comp endidas en e 169.254.12.10 y 169.254.12.13
Los esul ados ob enidos de las di e en es ejecuciones se con as an en el siguien e
capí ulo con el iempo de ejecución de las mismas p uebas en el PC especi icado en el
pun o 3.1.
4.3 Aplicaciones
Pa a ealiza un análisis comple o, es necesa io ejecu a di e en es expe imen os con
di e en es obje i os pa a obse a las a iaciones de endimien o en di e sos en o nos,
como puede se cómpu o, comunicación o lec u a/esc i u a.
4.3.1 Mul iplicación de ma ices
La p ime a aplicación elegida consis e en la mul iplicación de ma ices de núme os
en e os. La mul iplicación de ma ices es un p oblema con una complejidad exponencial,
po lo que es un buen medido pa a es ablece un benchma k ijándonos en la po encia
de cómpu o de las dis in as placas.
Pa a es a p ueba se ha u ilizado un código alojado en Gi Hub
3
con pequeñas a iaciones
pa a aumen a el amaño de las ma ices a mul iplica y pa a e i a un e o de su ge al
ese a en memo ia una ma iz de más de 600x600.
El p opio p og ama al acaba indica el iempo de cómpu o únicamen e de las
ins ucciones MPI, sin con a con la gene ación alea o ia de la ma iz. Pa a es a p ueba
se ha u ilizado una ma iz de 3000x3000 núme os en e os
3
h ps://gis .gi hub.com/kmku n/39ca673bb37946055b38
36
4.3.2 Comp esión dis ibuida
La segunda aplicación que se ha seleccionado es la comp esión dis ibuida de un iche o.
Es a p ueba consis e en ealiza una comp esión en pa alelo con los di e en es nodos
u ilizando MPI. Pa a ello hemos u ilizado el comp eso pa alelo llamado MPIBZIP2, que
con iene una implemen ación MPI del algo i mo BZIP2
4
de comp esión. Pa a la
ealización de es a p ueba, se ha u ilizado un a chi o de audio .wa de 1.9GB, que es
comp imido po el clus e en pa alelo.
4.3.3 Fil ado de imágenes
Es a aplicación o ma pa e de las p ác icas de la asigna u a PSD de la acul ad de
in o má ica y consis e en la aplicación de un il o de escala de g ises a blanco y neg o
en iche os con o ma o BMP.
Con es a aplicación se ealizan dos ipos de ejecuciones, una ejecución es á ica y una
dinámica. En la ejecución es á ica se selecciona el núme o de nodos deseado y las ilas
de la imagen se di iden en los nodos disponibles, es deci , se ealiza el epa o de ca ga
en e los nodos an es de comenza con la dis ibución del abajo, es ableciendo, de
es a mane a, la misma ca ga de abajo a odos los nodos sin impo a su po encia. En
la ejecución dinámica, se de e mina el amaño de los da os que se en ían en cada
ocasión, haciendo así que los nodos con mayo capacidad de cómpu o engan más ca ga
de abajo y se pueda ob ene un mayo endimien o. Con es as dos ejecuciones se
espe a ob ene esul ados que con as en el compo amien o del clus e he e ogéneo
cuando se ca ga de mayo abajo a las placas Raspbe y Pi 4, po su mayo capacidad
de cómpu o, que a las Raspbe y Pi 3.
4.3.4 NAS Pa allel Benchma ks (NPB)
La úl ima aplicación es el NAS Pa allel Benchma k
5
. Se a a de un pequeño g upo de
p og amas diseñados po la NASA, en el cual se ejecu an di e en es algo i mos pa a
analiza el endimien o de los sis emas dis ibuidos, en es e caso se u iliza á el
benchma k dedicado a compu ación pa alela.
Con es a ejecución, se puede obse a cómo a ían los MOPS (millones de ope aciones
po segundo) de las dis in as con igu aciones y asignándoles di e en es nodos.
4
h ps:// c.byu.edu/wiki/index.php?page=Pa allel+BZIP2+Comp ession
5
h ps://www.nas.nasa.go /publica ions/npb.h ml
37
5. Análisis de endimien o
En es e apa ado se mues an los esul ados de las p uebas mencionadas en las
di e en es con igu aciones del clus e . En cada una de ellas se mues a una abla de
esul ados con el iempo en minu os que a dó cada sis ema en cada ejecución y un
g á ico pa a pode hace un mejo con as e de los da os de la abla.
5.1 Mul iplicación de ma ices
Pa a la p ueba de mul iplicación de ma ices se ha gene ado una ma iz alea o ia de
3000 ilas y 3000 columnas, la cual se di ide a pa es iguales en e el núme o de p ocesos
seleccionados. La medición del iempo no con empla la gene ación de la ma iz
alea o ia. Especí icamen e, el p og ama únicamen e mues a el iempo de ejecución
desde el comienzo de la ope ación de mul iplicación has a que se ob iene el esul ado.
2
4
8
12
16
20
24
32
48
homPi3
60,66
52,42
26,9
18,99
14,72
12,49
9,98
8,48
homPi4
17,61
14,89
9,37
5,98
4,48
5,66
5,49
4,43
he Pi
56,97
51,59
28,19
18,56
14,43
11,76
10,44
8,4
6,6
PC
3,83
1,23
1,12
1,23
1,7
1,73
1,83
2,9
Figu a 14 Mul iplicación de ma ices
38
Como se puede obse a en el g á ico de la Figu a 14, la mejo a del endimien o a
medida que aumen an los p ocesos es no able. Se puede e en el g á ico que con la
con igu ación con ig homPi3 se consigue educi el iempo de ejecución en más de 50
minu os, lo que signi ica una mejo a del endimien o en un 86,66%. Respec o a la CPU,
se puede obse a que el nue o modelo de Raspbe y Pi 4 iene una mayo po encia de
cómpu o que el an e io modelo. Es o es debido a que la ejecución únicamen e se lle a
a cabo con dos p ocesos, uno ealiza la dis ibución y o o el cómpu o. A su ez, se puede
obse a que el iempo de ejecución de la aplicación cuando se u iliza la con ig homRP4
(17,61 minu os) es meno a un e cio del iempo necesa io pa a ejecu a la misma
aplicación en la con ig homRP3 (60,66 minu os).
En la con igu ación con ig homRP4, podemos obse a que en e la ejecución de 16
p ocesos y la de 24 p ocesos el iempo de ejecución c ece en más de un minu o. Es o es
debido a que al con a únicamen e con 4 Raspbe y Pi 4, con 4 núcleos cada placa, se
pueden ejecu a únicamen e 16 p ocesos de o ma simul ánea, es o da luga a la
ealización de una nue a dis ibución de abajo al acaba la p ime a ejecución de 16
p ocesos penalizando el endimien o. De hecho, en es a con igu ación, se puede
obse a que con 32 p ocesos el iempo de ejecución de la p ueba es bas an e simila al
de 16. Es o puede da se debido a que al con a con 16 co es de ejecución y ejecu a 32
p ocesos, aunque el on -end enga que dis ibui en dos ocasiones, al se múl iplo de
16 se ap o echan odos los co es du an e la mayo pa e del iempo de ejecución de la
p ueba.
En cuan o al clus e he e ogéneo o mado po placas an o Raspbe y Pi 3 como
Raspbe y Pi 4, se mues a una cu a en el g á ico muy simila a la con igu ación
homogénea de Raspbe y Pi 3. Es o se debe a que la ca ga de abajo se dis ibuye po
igual - de o ma es á ica - en odas las placas, independien emen e de si es una
Raspbe y Pi 3 o una Raspbe y Pi 4. Es a aplicación no concluye has a que odas las
placas hayan ealizado su pa e del cómpu o, po lo que, aunque con emos con placas
más po en es y es as hayan comple ado su pa e del cómpu o, pa a la conclusión de la
aplicación se hace necesa ia la espe a a la inalización del cómpu o de las placas menos
po en es. Así, las placas menos po en es penalizan el endimien o global del sis ema.
5.2 Comp esión dis ibuida
Pa a es a p ueba de endimien o se ha u ilizado MPIBZIP2, que es una he amien a de
comp esión pa alela pa a se u ilizada po múl iples p ocesado es.
Se ha u ilizado un a chi o .wa , ya que es e ipo de a chi os ienen un amplio ma gen
de comp esión El a chi o o iginal e a de 1,9 GB y as la comp esión se gene ó un a chi o
comp imido con el iche o de audio de 1,3GB.
39
2
4
8
12
16
20
24
32
48
homPi3
28,53
11,01
8,35
7,88
8,01
8,03
8,01
8,03
homPi4
12,01
4,66
3,36
3,21
3,16
3,2
3,28
3,33
he Pi
29,88
11,08
8,43
8,38
8,08
8,03
8,01
8,11
8,2
PC
2,88
1,1
Figu a 15 Comp esión dis ibuida
En es e expe imen o ( e Figu a 15) se puede obse a en odos los casos elacionado
con el clus e , que la endencia en p ime a es ancia es descendien e y a pa i de 8
p ocesos se man iene, en luga de segui descendiendo. Es o es debido a que se puede
es a p oduciendo un cuello de bo ella al dis ibui el a chi o en e los nodos del clus e
causado po las ca ac e ís icas del on -end. Cabe eco da que el on end u ilizado es
una placa Raspbe y Pi 3, es a placa, al como se indica en el capí ulo 2 de es e
documen o, iene una in e az e he ne 10/100 BaseT, lo que puede conside a se
insu icien e pa a la dis ibución de a chi os de es e ango de amaño.,
Tan o la con igu ación o mada únicamen e po Raspbe y Pi 3 como la o mada
con igu ación he e ogénea ienen unos iempos muy simila es. En las p ime as
ejecuciones en el clus e he e ogéneo se han p oducido en las placas Raspbe y Pi 3, y
más a de no se ha podido ap o echa la mayo po encia de la ed debido al cuello de
bo ella de la ed mencionado an e io men e.
40
La con igu ación homogénea de Raspbe y Pi 4, ealiza la comp esión bas an e más
ápido que las o as dos con igu aciones y aunque se sigue p oduciendo el mismo cuello
de bo ella de ed, la ejecución con 16 p ocesos a da únicamen e un 9% más que la
ejecución con dos p ocesos del PC. Del PC únicamen e se mues an los iempos con dos
y cua o p ocesos ya que al ene únicamen e cua o núcleos no se an a ob ene
mejo as de endimien o a pa i de cua o p ocesos.
5.3 Fil ado de imágenes
Es a p ueba se a a de una p ác ica de la asigna u a P og amación de Sis emas
Dis ibuidos, la cual consis e en el il ado de una imagen BMP en escala de g ises, el
cual a pa i de dicha imagen gene a o a nue a en blanco y neg o con el h eshold
especi icado. Has a aho a, en el es o de p uebas se ha is o un endimien o simila
en e el clus e homogéneo de Raspbe y Pi 3 y el clus e he e ogéneo. Es a p ueba
cons a de dos ejecuciones dis in as po cada con igu ación es ablecida. En es e pun o,
se mos a án es apa ados, uno pa a cada ejecución y o o con la compa ación de las
di e en es ejecuciones.
La imagen u ilizada, ocupa 501 MB y iene unas dimensiones de 17648x9927 pixeles,
con lo cual cada ila que se p ocese end á que p ocesa 17648 del ancho de la imagen.
Po ello y pa a maximiza la explo ación de ecu sos del clus e he e ogéneo en la
ejecución dinámica se ha de e minado que a cada p oceso se le en ia an 10 ilas.
5.3.1 Fil ado es á ico
La ejecución es á ica, como se menciona an e io men e, ealiza el epa o de la ca ga
de abajo an es de la dis ibución del mismo, con es e ipo de il ado en la
con igu ación he e ogénea con ig he Pi, se do a á de la misma ca ga de an o a las
placas Raspbe y Pi 3, como a las Raspbe y Pi4. En es a ejecución es á ica se di iden las
ilas de la imagen en e el núme o de p ocesos seleccionados.
2
4
8
12
16
20
24
32
48
homPi3
18,46
6,4
2,93
2,31
1,83
1,66
1,41
1,33
homPi4
10,76
3,71
1,66
1,13
0,85
0,9
0,95
0,98
he Pi
18,45
6,43
2,93
1,93
1,73
1,38
1,23
1,1
1,06
PC
3,98
1,33
41
Figu a 16 Fil ado es á ico de imágenes
Con es a ejecución es á ica mos ada en la Figu a 16, ya se puede e una mejo ía de
endimien o signi ica i a en los es sis emas. Po p ime a ez, se puede obse a que
las di e en es con igu aciones del clus e supe an o igualan al PC en endimien o, en el
caso de la con igu ación con ig homRP3, se iguala en la ejecución con 32 p ocesos, la
con igu ación con ig homRP4 lo supe a a pa i de la ejecución con 12 p ocesos y la
con igu ación he e ogénea con ig he Pi ob iene ambién un mejo endimien o que el
PC a pa i de la ejecución con 24 p ocesos.
Se puede obse a como en odas las ejecuciones an e io es, que el sis ema
he e ogéneo y el que es á o mado po Raspbe y Pi 3 manejan unos iempos
p ác icamen e iguales.
5.3.2 Fil ado dinámico
La ejecución dinámica ealiza el epa o de abajo a medida que se a ejecu ando la
aplicación, es ableciendo una mayo ca ga de abajo en los nodos más po en es. En
es a ejecución dinámica se de e mina á un núme o de ilas, que son las que se en ia án
a cada nodo cada ez que se haga una dis ibución de abajo. Cada ez que un p oceso
e mine de ejecu a el abajo que le ha sido asignado, ecibi á más ilas pa a p ocesa ,
haciendo así que los nodos más ápidos engan más ca ga de abajo. De es a mane a,
el obje i o es ob ene un endimien o mayo con el clus e he e ogéneo dándole una
mayo p io idad a las placas Raspbe y Pi 4.
48
6.2 T abajo u u o
Du an e la ealización de es e p oyec o han sido de ec adas dis in as si uaciones, las
cuales han gene ado dis in as líneas de abajo u u o.
Una de ellas es á elacionada con la ejecución de las aplicaciones. Ac ualmen e, pa a
lanza una ejecución es necesa io ealiza a eas manualmen e, ales como el en ío de
a chi os al on -end o la con igu ación de la in aes uc u a en la cual se puede ejecu a ,
odo es o sin una in e az g á ica que pe mi a lle a a cabo es as a eas de o ma sencilla
e in ui i a. Es e p oceso pod ía au oma iza se po medio de una GUI con la cual se pueda
accede y maneja el clus e de mane a isual, haciendo más sencilla la ejecución de
p uebas en el mismo.
Además, se con empla amplia el clus e pa a pa a obse a las a iaciones de
endimien o y compa a las con las ejecuciones mos adas en es e documen o. La idea
es ealiza expe imen os c eando nue as con igu aciones de la in aes uc u a,
incluyendo nue as e siones di e en es de placas Raspbe y Pi, como las de bajo
p esupues o Raspbe y pi Ze o o con las siguien es e siones que sean lanzadas en un
u u o.
49
6. Conclusions and u u e wo k
This sec ion p o ides he conclusions o his p ojec and some lines o u u e wo k.
6.1 Conclusions
Gi en ha Moo e's law p edic ing chip size educ ion is p ac ically obsole e, he nex
s ep o mo e o wa d is dis ibu ed compu ing. The pa alleliza ion o asks is inc easingly
p esen oday, whe e he p ocesso s wi h mo e co es a e aking a g ea e ole in he
pa icula ield. In addi ion, i is wo h no ing ha in ecen yea s, he eme gence o low-
budge de ices wi h p ocesso s o up o ou and eigh co es has gene a ed a end ha
p omo es a good ela ionship be ween pe o mance and cos .
This TFG is an example o how echnology ad ances and how wi h a low budge and in
a educed space, nowadays, he acquisi ion o a clus e wi h he p oposed ea u es is
wi hin he each o much people, howe e , some yea s ago i could only ha e been in
la ge companies o uni e si ies, and ne e be ob ained by a p i a e indi idual, bo h o
economic and space issues.
A e he comple ion o his p ojec , i has been obse ed ha no in all cases he
eplacemen o pa o a dis ibu ed sys em wi h be e ha dwa e, in ou case he
he e ogeneous clus e , will gene a e imp o emen s in pe o mance. Fo his o happen,
i is necessa y o make be e use o he ha dwa e, and o do so, i is necessa y o use a
dynamic load dis ibu ion, whe e mo e weigh is gi en o he as es co es o he
a ailable p ocesso s.
I ound his an in e es ing TFG o do because i can help di e en s uden s o he
"Dis ibu ed Sys ems P og amming" cou se o he uni e si y o see hei MPI p ac ices
execu ed in a eal en i onmen . In his way, he scalabili y o he di e en applica ions
how hei pe o mance a ies depending on he con igu a ion selec ed in each
execu ion can be easily analyzed. This p o ides a be e expe ience in lea ning how a
dis ibu ed sys em wo ks, since ins ead o seeing i s beha io in simula ions, i can be
seen in a physical clus e .
50
6.2 Fu u e wo k
Du ing he ealiza ion o his p ojec , di e en si ua ions ha e been de ec ed, which
ha e gene a ed di e en lines o u u e wo k.
One o hem is ela ed o he execu ion o he applica ions. Cu en ly, o launch an
execu ion i is necessa y o pe o m asks manually, such as sending iles o he on -
end o con igu ing he in as uc u e in which i can un, all his wi hou a g aphical
in e ace ha allows o ca y ou hese asks in a simple and in ui i e way. This p ocess
could be au oma ed by means o a GUI wi h which he clus e can be accessed and
managed isually, making i easie o execu e es s on he clus e .
In addi ion, i is con empla ed o expand he clus e o obse e he pe o mance
a ia ions and compa e hem wi h he execu ions shown in his documen . The idea is
o ca y ou expe imen s c ea ing new con igu a ions o he in as uc u e, including
new di e en e sions o Raspbe y Pi boa ds, such as he low-budge Raspbe y pi Ze o
o wi h he nex e sions o be launched in he u u e.
51
Bibliog a ía
• h ps://www. aspbe ypi.o g
• h ps://www. aspbe ypi.o g/downloads/ aspbe y-pi-os
• h ps://www.mpich.o g
• h ps://wiki.a chlinux.o g/index.php/NFS
• h ps://gis .gi hub.com/kmku n/39ca673bb37946055b38
• h ps:// c.byu.edu/wiki/index.php?page=Pa allel+BZIP2+Comp ession
• h ps://www.nas.nasa.go /publica ions/npb.h ml
• h ps://www.zdne .com/a icle/o acle- his-1060- aspbe y-pi-supe compu e -
is-wo lds-la ges -pi-clus e /
• h ps://www.ibm.com/suppo /knowledgecen e /SSWRJV_10.1.0/ls _admin/E
AS_AFS_ins all_con ig_benchma k_p og ams.h ml
• Daniel Quiñones Sánchez y Miguel Rome o Ma ínez - Diseño y despliegue de un
clus e de bajo p esupues o pa a el desa ollo de las p ác icas de P og amación
de Sis emas Dis ibuidos.