1 / 1

GPGPU Volume Classification using SimpleOpenCL

GPGPU Volume Classification using SimpleOpenCL. Oscar Amoros, Sergio Escalera , Anna Puig and Maria Salamó. Computer Vision Center, Universitat Autònoma de Barcelona, 08193 Cerdanyola , Spain Dept . Matemàtica Aplicada i Anàlisi , UB, Gran Via 585, 08007, Barcelona, Spain

cicely
Download Presentation

GPGPU Volume Classification using SimpleOpenCL

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. GPGPU Volume Classification using SimpleOpenCL Oscar Amoros, Sergio Escalera, Anna Puig and Maria Salamó ComputerVision Center, UniversitatAutònoma de Barcelona, 08193 Cerdanyola, Spain Dept. Matemàtica Aplicada i Anàlisi, UB, Gran Via 585, 08007, Barcelona, Spain oamorohu7@alumnes.ub.edu,sescalera@cvc.uab.es, anna@maia.ub.es, maria@maia.ub.es Sub-title Abstract In volumevisualization, thedefinition of theregionsof interestisinherentlyaniterative trial-and-error processfindingoutthebestparameterstoclassify and renderthe final image. In thiswork, wepresent a general frameworkfor training multi-classclassifiersusing Error-CorrectingOut- putCodes. Moreover, wepropose a GPGPU paral·lelizationsystemusingSimpleOpenCL, anOpenSourcelibrarywecreatedtomakeiteasierto use OpenCL. Results show accurateclassificationresultsas well as goodspeed ups. 2. SimpleOpenCL overview 1. Classification framework overview • SimpleOpenCLisanOpenSourcelibrary and Google Codeprojectthatwecreated. Itiswrittenin ANSI C to be usedby C and C++ programs. Themaingoal of SimpleOpenCLhas beenreducingthecodeneededtoruntheexperimentsonthe GPU withOpenCL, butalsosupportsmanaging CPU devices. • OpenCLprovides so much control over the system that it requires a lot of code. So with SimpleOpenCLwe are providing two levels of programming. The first level provides the simplest way to do an OpenCLprogram. • We also provide a second level, where the programmer has more control, but also has to write more code, although less than with plain OpenCL. • Weproposea general frameworkof supervisedstatisticalclassificationmethodstolabelon-demandmultipleregions of interest. • Thelearningstepgets a subset of preclassifiedsamplestotrain a set of • Adaboostclassifiers[1] , which are codified as TFs, and combined in an ECOC design [2]. • Thetestingstagemulti-classifies and labels a subset of volumeclassesbasedonuserinteraction. • Weacceleratedthethestingstepbycreating a new weakclassifierrepresentationthat can be more easillyparalelizable. • WeimplementeditonCPU’s and GPU’susingOpenMP, GCD and OpenCL. • FortheOpenCLversionwehavedeveloped a new librarycalledSimpleOpenCLavailable at Google code. Thislibraryallowedustocodefaster, debugfasterwithmuchlesscomplexityonthe Host codeside, and without performance penalizationsontheDevicecodeside. • SimpleOpenCL (SCL) also offers a way to manage Devices that makes it easier to initialize them, identify them, and select them by performance or Device type criteria. Instead of having a lot of different OpenCL objects related to the hardware spread across your Host code, you only need to use the sclHard data type that SCL provides. You can use it with SCL functions, or access its components to use them with native OpenCL functions. The same is true for .cl source files and kernel objects. You just need the sclSoft data type. 3. SCL Example 4. Performance results Thesame “Helloworld” programwithorwithoutSimpleOpenCL Host codewithoutSimpleOpenCL Host codewithSimpleOpenCL Devicecodeforboth cases [1] J. Friedman, T. Hastie, R. Tibshirani, Additivelogisticregres- sion: a statisticalview of boosting, Annals of Statistics 28. [2] S. Escalera, D. Tax, O. Pujol, P. Radeva, R. Duin, Subclassproblem-dependentdesign of error-correcting output codes, in: IEEE Transactions in PatternAnalysis and Machine Intelligence, Vol. 30, 2008, pp. 1–14. 4. Conclusions and future work • Semi automatic classification is a promising technology for reducin classification costs not only on medical imaging but also other fields that need volumetric dataset classification. • SimpleOpenCL is a promising tool that will be extended adding more advanced first and second level functions.

More Related