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

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>Actas</strong> XXII Jornadas <strong>de</strong> Paralelismo (<strong>JP2011</strong>) , <strong>La</strong> <strong>La</strong>guna, Tenerife, 7-9 septiembre 2011TABLA ICaracterísticas <strong>de</strong> las matrices <strong>de</strong> testeo.Matriz real N nz Avwbp 16384 3933097 240cant 62451 4007384 64pdb1HYS 36417 4344766 119consph 83334 6010481 72shipsec1 140874 7813404 55pwtk 217918 11634425 53wbp256 65536 31413934 479Matriz compleja N nz Avkim1 38415 933195 24femfilter 74062 1731206 23NN70 729000 5086618 7NN80 1000000 6979798 7NN90 1331000 9292578 7kim2 456976 11330020 24femhifreqcircuit 491100 20239237 41Los resultados <strong>de</strong> la Figura 1 muestran que losmejores rendimientos para todas las matrices consi<strong>de</strong>radasson alcanzados por ELLR-T. Esto es <strong>de</strong>bidoa que dicho kernel es capaz <strong>de</strong> adaptarse al patrón<strong>de</strong> las matrices dispersas involucradas en el sistema,utilizando para ello el parámetro T . El kernel CUS-PARSE, sin embargo, presenta una pobre flexibilidadya que dicho parámetro no pue<strong>de</strong> ser modificado.Es importante resaltar que el rendimiento <strong>de</strong>ambos formatos normalmente incrementa al aumentarel número <strong>de</strong> elementos no nulos <strong>de</strong> la matriz.<strong>La</strong>s mejoras <strong>de</strong> rendimiento <strong>de</strong> la operación SpMValcanzadas por los kernels ELLR-T y CUSPARSE<strong>de</strong>notan que las implementaciones <strong>de</strong>l método BCGbasado en SpMV ELLR-T y SpMV CUSPARSEpue<strong>de</strong>n obtener buenos rendimientos. Por lotanto, hemos realizado un análisis comparativo <strong>de</strong>lrendimiento <strong>de</strong> las dos aproximaciones para resolverel método BCG: el método CuBCG CS (basado en elkernel CUSPARSE) y el método CuBCG ET (basadoen el kernel ELLR-T).<strong>La</strong> Figura 2 muestra el rendimiento (GFLOPs) alcanzadopor los métodos CuBCG CS y CuBCG ETpara la resolución <strong>de</strong> sistemas <strong>de</strong> ecuaciones lineales,reales y complejos, respectivamente. Para el objetivo<strong>de</strong> estimar el rendimiento proporcionado por GPUSpara estos métodos, hemos consi<strong>de</strong>rado los mismosvalores <strong>de</strong> los parámetros <strong>de</strong> la mejor configuraciónpara las operaciones SpMV, cuyo rendimiento se ilustraen la Figura 1.Los resultados mostrados en la Figura 2 ilustranlas siguientes consi<strong>de</strong>raciones: (1) el rendimientoobtenido por ambos métodos aumenta al incrementarseel número <strong>de</strong> entradas no nulas en la matriz.Este comportamiento sugiere que, en general,conforme la dimensión <strong>de</strong> las matrices aumente, elrendimiento será mejor (sobre todo para el conjunto<strong>de</strong> matrices complejas). (2) Para ambos conjuntos<strong>de</strong> matrices consi<strong>de</strong>radas, los mejores rendimientosson alcanzados por el método CuBCG ET .Fig. 1Rendimiento <strong>de</strong> la operación SpMV basada en loskernels CUSPARSE y ELLR-T sobre GPU GeForceGTX 480 con dos conjuntos <strong>de</strong> matrices <strong>de</strong> testeo(reales y complejas).Para estimar las mejoras proporcionadas por laGPU en las dos implementaciones <strong>de</strong>l método BCG,hemos consi<strong>de</strong>rado la versión optimizada <strong>de</strong>l SpMVpara un procesador mo<strong>de</strong>rno. Esta implementación<strong>de</strong>l método BCG está basada en la librería MKL [21]para el cómputo <strong>de</strong> las operaciones SpMV sobre unprocesador superescalar actual (Intel Xeon Westmerecon 8 procesadores). <strong>La</strong> Tabla II muestra los factores<strong>de</strong> ganancia obtenidos por los métodos CuBCG CS yCuBCG ET sobre la GPU GTX 480 frente a la ejecución<strong>de</strong>l método BCG sobre un procesador <strong>de</strong> ochonúcleos, consi<strong>de</strong>rando los dos conjuntos <strong>de</strong> matrices<strong>de</strong> testeo. Los resultados muestran que los factores<strong>de</strong> ganancia en ambos <strong>de</strong>sarrollos GPU son mejoresque la implementación multicore. Así, CuBCG CSCuBCG ET toman ventaja <strong>de</strong>l paradigma <strong>de</strong> programación<strong>de</strong> las GPUs.Para las matrices <strong>de</strong> testeo consi<strong>de</strong>radas, los speedup alcanzan valores entre 1,95× y 11,60× para elmétodo CuBCG ET y entre 1,03× y 5,07× para elmétodo CuBCG CS . <strong>La</strong> Tabla II ilustra que el speedup alcanzado por CuBCG ET es siempre mayor queel <strong>de</strong> CuBCG CS para todas las matrices. Merece lapena <strong>de</strong>stacar que este hecho es más relevante cuandolas matrices son <strong>de</strong> tipo complejo.<strong>JP2011</strong>-138

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

Saved successfully!

Ooh no, something went wrong!