1 / 13

Porting a 3D image registration application to multi-core environment

Porting a 3D image registration application to multi-core environment. K. S á ndor, M. Kozlovszky, V. Kamar á s, L. Fics ó r, S. V. Varga, B. Moln á r. HPCS 2008 April 14, 2008, Ottawa, Canada. Budapest Tech John von Neumann Faculty of Informatics (NIK).

Download Presentation

Porting a 3D image registration application to multi-core environment

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. Porting a 3D image registration application to multi-core environment K. Sándor, M. Kozlovszky, V. Kamarás, L. Ficsór, S. V. Varga, B. Molnár HPCS 2008 April 14, 2008, Ottawa, Canada

  2. Budapest TechJohn von Neumann Faculty of Informatics(NIK) • 1970 Kandó Polytechnic of Electrical Engineering • 1970 Department of Computing • Budapest Tech(established 2000) • Integration of 3 Polytechnics • John von Neumann Faculty of Informatics (NIK) (2000) • Total number of students in the faculty ~1.000 Budapest Tech

  3. Introduction • The goal is to speed up a linear image registration code by using the Cell architecture. • Histological, cytological and fluorescent slides 100-150 MB for each slide. • 1 object consists of 100-300 slides. • “Registration” - process of transforming input images into one coordinate system. • 2D  3D image reconstruction • Input slides (tissue slices): situated in the picture at different positions, different angles, significantly strained at random parts and might be disordered during the digital acquisition • Already implemented algorithm: Coarse Mutual Adjustment • Windows platform, sequential task Budapest Tech

  4. Coarse Mutual Adjustment • Input: bitmap images • Calculation of center-of-mass • Image pre-processing (mask creation) • First search – approximate slew • Second search – slew • Output: center-of-mass coordinates slew Threshold Open Median filter Rotation Comparison Budapest Tech

  5. Porting strategy • Code adaptation to the Cell SDK 2.1 (following the original source code as much as possible) • Code parallelization to the dual-threaded PPE (identifying concurrent tasks) • Offloading concurrent tasks to SPEs (utilizing parallelization Budapest Tech

  6. Porting phase 1  • Code adaptation to the Cell SDK 2.1 • 40% of total time to adapt the code to the Cell SDK 2.1 • analysis of original software code • analysis and search for appropriate substantial libraries • ( IPL -> OpenCV ) • implementation of missing functions • ( image I/O, 1bpp image operations) • re-design of class structures Budapest Tech

  7. Porting phase 2  • Code parallelization to the dual-threaded PPE • 10% of total time to parallelize the code to the dual threaded PPE • strongly modular source code • standard C++ functions supported • almost no additional data transfer related implementation Budapest Tech

  8. Porting phase 3  • Offloading concurrent tasks to SPEs • 50% of total time to offload concurrent tasks to the SPEs • offload strategy, design • SPE-specific instructions • (‘intrinsics’ ) • further substantial function development • implementation of data transfer mechanism • debugging Budapest Tech

  9. The implemented algorithm Operation Cell Block Diagram Budapest Tech

  10. Performance Results • Overall runtime results per mask pair ORIG – original code using IPL (~3.35s)(sequential procedures, utilizing SIMD instructions) LIN – sequential code ported to the SDK2.1, Linux (~6.85s) DT – dual-threaded parallelized code (~4.1s) FT – fully threaded code on the Cell Broadband Engine (~1s) ~2x >2x ~3x Budapest Tech

  11. Project Websites • CELL Blade QS20 hosts the projects’ website (http://cell.nik.bmf.hu/) • Off-line Demo illustrating the outputs of the ported application • On-line Demo that gives results on the fly • Animated Demo illustrating the infrastructure of the application being developed Budapest Tech

  12. Credits IBM US‘Development of a microscopy application for fast 3D image modeling and reconstruction’ Faculty Award Dr. Dezső Sima DSc John von Neumann Faculty of Informatics László Kiss Kollár IBM Global Engineering Solutions Balázs Molnár John von Neumann Faculty of Informatics, Biotech Group Budapest Tech

  13. Thank you!

More Related