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 2011Create TemplateExisting TemplateCreate WarpedInput Images (Atlas)Input ImagesWhite and grey mattersegmentationWhite and grey mattersegmentationDARTELWarpedSegmented Images (Atlas)Segmented ImagesCreate Initial TemplateDARTELDARTELFlow FieldsFlow FieldsTemplateSmoothTemplateFig. 1. Etapas para generar una plantilla y una imagen <strong>de</strong>formada utilizando el algoritmo DARTEL.Debido a los requisitos <strong>de</strong> DARTEL y al tamaño <strong>de</strong>los datos utilizados (imágenes médicas cerebrales entres dimensiones), no es posible computar todas lasimágenes o un conjunto <strong>de</strong> ellas al mismo tiempo.Por lo tanto, sólo se explota el paralelismo a nivel<strong>de</strong> datos <strong>de</strong> los puntos <strong>de</strong> cada imagen. A<strong>de</strong>más, esnecesario un alto número <strong>de</strong> transferencias entre lasmemorias <strong>de</strong> CPU y GPU.<strong>La</strong>s llamadas a las funciones paralelas son similaresa la implementación secuencial pero es necesario indicarel número <strong>de</strong> hilos que ejecutan el código <strong>de</strong> lafunción. El número <strong>de</strong> hilos está dado por el número<strong>de</strong> puntos <strong>de</strong> la imagen (Algoritmo 2).Se han llevado a cabo ciertas optimizaciones centradasen maximizar la utilización <strong>de</strong> los núcleos,minimizar la sobrecarga <strong>de</strong> las trasferencias entre lasmemorias <strong>de</strong> la GPU y CPU, y utilizar los registrosen la mayor medida posible.IV. Evaluación <strong>de</strong> RendimientoEn esta sección se presenta la evaluación <strong>de</strong>rendimiento <strong>de</strong> la implementación <strong>de</strong> DARTE parala plataforma basada en GPU.Se han utilizado imágenes en tres dimensiones, cadauna consistente en un conjunto <strong>de</strong> imágenes endos dimensiones (capas), correspondientes a las vistasaxial, sagital y coronal. Para los casos <strong>de</strong> prueba,DARTEL ha generado imágenes en tres dimensiones(plantilla e imagen <strong>de</strong>formada) con los sigu-Algorithm 2 Pseudocódigo <strong>de</strong> la versión basada enGPU <strong>de</strong> DARTELTemplate, FlowField[n] :DARTEL Template Creation (Atlas[n], Flow-Field[n], Template)FlowFields[n] : DARTEL Warped Creation (Images[n],Template )1: while do (i < n)2: CPU-GPU Data transferences ⊲ Input data3: Small Deformations kernel< m >()4: GPU-CPU Data transferences ⊲ Outputdata5: CPU-GPU Data transferences6: Jacobian Composition kernel< m >()7: GPU-CPU Data transferences8: CPU-GPU Data transferences9: FMG kernel< m >() ⊲ Full MultigridMethod10: GPU-CPU Data transferences11: i++12: end whileientes tamaños, 60 imágenes en la vista axial, 60imágenes en la vista sagital, y 72 imágenes en la vistacoronal. Por tanto, las imágenes <strong>de</strong> la vista axial son<strong>de</strong> 60×72 píxeles, las imágenes <strong>de</strong> la vista sagital son<strong>de</strong> 60 × 72 píxeles, y las imágenes <strong>de</strong> la vista coronalson <strong>de</strong> 60×60 píxeles. Finalmente, cada imagen tiene(60 × 72) 2 × 60 × 60 = 67, 184, 640, 000 píxeles<strong>JP2011</strong>-707

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

Saved successfully!

Ooh no, something went wrong!