30.07.2015 Views

Actas JP2011 - Universidad de La Laguna

Actas JP2011 - Universidad de La Laguna

Actas JP2011 - Universidad de La Laguna

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Actas</strong> XXII Jornadas <strong>de</strong> Paralelismo (<strong>JP2011</strong>) , <strong>La</strong> <strong>La</strong>guna, Tenerife, 7-9 septiembre 2011TABLA III: Cargas <strong>de</strong> trabajo multiaplicación constituidaspor aplicaciones secuencialesCT Categorías BenchmarksSR1 2H-2L calculix, gamess, gobmk,milcSR2 2H-2L hmmer, calculix, soplex,astarSR3 1H-1M-2L hmmer, perlbench, soplex,mcfSR4 1H-1M-2L gamess, namd, astar, gobmkSR5 3H-1L hmmer, calculix, gamess,gobmkSR6 1H-3L gamess, sjeng, GemsFDTD,leslie3dSR7 4H hmmer, hmmer, calculix,gamessSR8 4H calculix, calculix, gamess,gamessSR9 2M-2L povray, gromacs, milc, mcfSR10 4L gobmk, gobmk, astar, astarTABLA IV: Cargas <strong>de</strong> trabajo multiaplicación constituidaspor aplicaciones paralelas y secuencialesCT Categorías BenchmarksMR1 2STH-2STL-1HPH hmmer, calculix,gobmk, astar,wupwise m(8)MR2 2STH-2STL-1HPL hmmer, gamess,soplex, bzip2,EP(8)MR3 2STH-1PSL-1HPH calculix,gamess, BLAST(5),wupwise m(5)MR4 1STH-1STL-1PSM-1HPM hmmer,gobmk, semphy(5),fma3d m(5)MR5 1STH-1STL-1PSM-1PSL calculix, bzip2,semphy(5),BLAST(5)MR6 1STH-1STL-1PSL-1HPH hmmer, astar,bodytrack(5),wupwise m(5)MR7 2STH-1PSM-1PSL calculix,gamess,bodytrack(5),FFTW(5)MR8 2STM-1PSL-1HPH wrf, namd, FFTW(5),wupwise m(5)MR9 3STH-3STL-1PSL hmmer, hmmer,gamess, gobmk,astar, BLAST(6)en Intel <strong>La</strong>bs [6]. Esencialmente, este prototipo esuna plataforma tipo NUMA con dos procesadoresIntel Xeon E5645 hex-core (Westmere) –doce coresen total–. Cada procesador tiene una cache L3 <strong>de</strong>6MB compartida por los seis cores <strong>de</strong> cada chip. Elprimer y segundo nivel <strong>de</strong> cache son privados a cadacore. <strong>La</strong> asimetría ha sido introducida en este sistemareduciendo el número máximo <strong>de</strong> microinstruccionesque pue<strong>de</strong>n retirarse por ciclo en algunos cores. Másconcretamente, los cores “lentos” son capaces <strong>de</strong> retiraruna microinstrucción por ciclo, mientras que loscores “rápidos” utilizan la configuración <strong>de</strong> fábrica –pudiendo retirar hasta cuatro microoperaciones porciclo–.En nuestra evaluación hemos empleado dos configuracionesAMP, (1) 2FC-2SC – dos cores rápidos ydos lentos distribuidos en dos chips <strong>de</strong> tal forma quecada chip incluye un core rápido y uno lento compartiendoun último nivel <strong>de</strong> cache – y (2) 2FC-10SC –dos cores rápidos y diez lentos en dos chips, don<strong>de</strong>cada chip contiene un core rápido y cinco lentos –.En esta sección comparamos el rendimiento <strong>de</strong>CAMP con el <strong>de</strong> otros tres algoritmos <strong>de</strong> planificaciónpropuestos previamente. Se trata <strong>de</strong> los algoritmosPA (Parallelism-Aware) [5] –que explota únicamenteespecialización <strong>de</strong> TLP–, SFD (SF-Driven)) 3 –que explota especialización <strong>de</strong> ILP– y RR (roundrobin)[8] –que realiza un reparto equitativo <strong>de</strong> loscores rápidos <strong>de</strong>l sistema entre todos los hilos–. Todoslos algoritmos evaluados en este trabajo se hanimplementado en el sistema operativo OpenSolaris.Para llevar a cabo un estudio exhaustivo <strong>de</strong> lasdistintas propuestas, construimos diversas cargas <strong>de</strong>trabajo multiprogramadas constituidas por aplicacionessecuenciales y paralelas <strong>de</strong> distintas suites <strong>de</strong>benchmarks – SPEC CPU2006, SPEC OMP2011,NAS Parallel, Minebench y PARSEC– así comoBLAST –aplicación utilizada en bioinformática– yFFTW –un benchmark científico que realiza la transformadarápida <strong>de</strong> Fourier–. <strong>La</strong>s cargas <strong>de</strong> trabajoestudiadas se divi<strong>de</strong>n en dos grupos. El primero incluyeúnicamente conjuntos <strong>de</strong> aplicaciones secuenciales(tabla III). El segundo grupo está constituidopor cargas <strong>de</strong> trabajo con aplicaciones paralelas ysecuenciales (tabla IV).En el proceso <strong>de</strong> construcción <strong>de</strong> cargas <strong>de</strong> trabajorepresentativas, clasificamos las distintas aplicacionesteniendo en cuenta su grado <strong>de</strong> paralelismo -ST (single-threa<strong>de</strong>d), PS (partially sequential 4 ) o HP(highly parallel) – así como en función <strong>de</strong> sus factores<strong>de</strong> ganancia – H (high), M (medium) o L (low)-. <strong>La</strong>columna central <strong>de</strong> las tablas III y IV especifica lacomposición <strong>de</strong> la carga <strong>de</strong> trabajo, indicando la clase<strong>de</strong> cada aplicación en el mismo or<strong>de</strong>n en el que seenumera en la tabla. Por ejemplo, la carga <strong>de</strong> trabajoSR1 (2H-2L) en la tabla III está compuesta por dosaplicaciones secuenciales con SF alto (calculix ygamess) y dos con SF bajo (gobmk, milc). Del mismomodo, la carga <strong>de</strong> trabajo MR4 (1STH-1STL-1PSM-1HPM) en la tabla IV incluye dos aplicacionessecuenciales, una con SF alto (STH) y la otracon SF bajo (STL), y dos aplicaciones paralelas <strong>de</strong>SF medio, siendo la primera <strong>de</strong> ellas parcialmente secuencial(PSM) y la segunda muy paralela (HPM).<strong>La</strong> figura 3 muestra la media geométrica <strong>de</strong> losspeedups obtenidos para las aplicaciones <strong>de</strong> las cargas<strong>de</strong> trabajo por cada planificador SFD, PA yCAMP, normalizados con respecto a los tiempos <strong>de</strong>ejecución obtenidos por el algoritmo RR. En un trabajoprevio mostramos que usar RR como baselineproporciona resultados más fiables a la hora <strong>de</strong> cuantificarel beneficio <strong>de</strong> los distintas propuestas que utilizarel planificador por <strong>de</strong>fecto <strong>de</strong> OpenSolaris, queno es consciente <strong>de</strong> la asimetría en la plataforma [10].A simple vista, po<strong>de</strong>mos apreciar que CAMP consiguemayores beneficios que los otros algoritmos pa-3 Este algoritmo es una variación <strong>de</strong>l algoritmo HASS-D [10].4 Esta clase <strong>de</strong> aplicaciones abarca aquellas aplicaciones paralelascon fases <strong>de</strong> ejecución secuencial que constituyen almenos un 20 % <strong>de</strong> su tiempo <strong>de</strong> ejecución total.<strong>JP2011</strong>-249

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!