cuda based triangulations of convolution molecular
play

CUDA-based Triangulations of Convolution Molecular Surfaces Srgio - PowerPoint PPT Presentation

Introduction State of the Art GPU Programming Results Conclusions CUDA-based Triangulations of Convolution Molecular Surfaces Srgio Dias Kuldeep Bora Abel Gomes International Symposium on High Performance Distributed Computing Emerging


  1. Introduction State of the Art GPU Programming Results Conclusions CUDA-based Triangulations of Convolution Molecular Surfaces Sérgio Dias Kuldeep Bora Abel Gomes International Symposium on High Performance Distributed Computing Emerging Computational Methods for the Life Sciences Workshop Chicago, Illinois, USA 21 June 2010 Sérgio Dias - Kuldeep Bora - Abel Gomes HPDC 2010 - ECMLS

  2. Introduction State of the Art GPU Programming Results Conclusions Contents Introduction 1 State of the Art 2 GPU Programming 3 Results 4 Conclusions 5 Sérgio Dias - Kuldeep Bora - Abel Gomes HPDC 2010 - ECMLS

  3. Introduction State of the Art GPU Programming Results Conclusions Introduction Introduction Molecular surface -> Triangulation -> Visualization. Real time requirement. Technology:CUDA/GPU Sérgio Dias - Kuldeep Bora - Abel Gomes HPDC 2010 - ECMLS

  4. Introduction State of the Art GPU Programming Results Conclusions State of the Art Types of Molecular Surfaces Van Der Waals Surface. Lee - Richards Surface. Richards - Connolly Surface. Convolution Surface. Sérgio Dias - Kuldeep Bora - Abel Gomes HPDC 2010 - ECMLS

  5. Introduction State of the Art GPU Programming Results Conclusions State of the Art Types of Molecular Surfaces Van Der Waals Surface The boundary of the union of (solid) balls. Each representing an atom. (van der Waals Surface) Sérgio Dias - Kuldeep Bora - Abel Gomes HPDC 2010 - ECMLS

  6. Introduction State of the Art GPU Programming Results Conclusions State of the Art Types of Molecular Surfaces Lee - Richards Surface(Solvent Acessible Surface) Obtained by rolling a ball of a certain radius along the van der Walls surface of a molecule. The solvent acessible surface will be the surface swept out by the center of the solvent ball. (Lee - Richards Surface) Sérgio Dias - Kuldeep Bora - Abel Gomes HPDC 2010 - ECMLS

  7. Introduction State of the Art GPU Programming Results Conclusions State of the Art Types of Molecular Surfaces Richards - Connolly Surface Molecular Surface model. Similar to Lee-Richards. Instead of surface swept by center, the surface swept out by the front is used. (Connolly Surface) Sérgio Dias - Kuldeep Bora - Abel Gomes HPDC 2010 - ECMLS

  8. Introduction State of the Art GPU Programming Results Conclusions State of the Art Types of Molecular Surfaces Convolution Surface Each atom center in space generates a electrical field, which drops off as a function of distance from the atom center. Molecular Surface: N � F ( x , y , z ) = f i ( x , y , z ) (1) i = 0 Sérgio Dias - Kuldeep Bora - Abel Gomes HPDC 2010 - ECMLS

  9. Introduction State of the Art GPU Programming Results Conclusions GPU - Cuda (GPU Programming model) Sérgio Dias - Kuldeep Bora - Abel Gomes HPDC 2010 - ECMLS

  10. Introduction State of the Art GPU Programming Results Conclusions Triangulation of Convolution Surfaces Marching Cubes Algorithm Bounding Box Computation Step to determine the axis-aligned bounding box that encloses a given molecule. Cube Decomposition Calculation of the number of cubes that fit the bounding box. Allocation and Copying of Data Structures to GPU. Sérgio Dias - Kuldeep Bora - Abel Gomes HPDC 2010 - ECMLS

  11. Introduction State of the Art GPU Programming Results Conclusions Triangulation of Convolution Surfaces Marching Cubes Algorithm(Continuation) Computation of Electric Field Intensities at Voxel Vertices(1st kernel). Sérgio Dias - Kuldeep Bora - Abel Gomes HPDC 2010 - ECMLS

  12. Introduction State of the Art GPU Programming Results Conclusions Triangulation of Convolution Surfaces Marching Cubes Algorithm(Continuation) Computation of MC Configurations for Voxels (2nd GPU kernel). Sérgio Dias - Kuldeep Bora - Abel Gomes HPDC 2010 - ECMLS

  13. Introduction State of the Art GPU Programming Results Conclusions Triangulation of Convolution Surfaces Marching Cubes Algorithm:Visualization(stage 1) Allocation of VBO Array for Posterior Rendering of Surface Mesh (3rd GPU kernel). Calculation of the number of vertices in the surface. The VBO array is going to be used later to generate the triangles that belong to the surface. Sérgio Dias - Kuldeep Bora - Abel Gomes HPDC 2010 - ECMLS

  14. Introduction State of the Art GPU Programming Results Conclusions Triangulation of Convolution Surfaces Marching Cubes Algorithm:Visualization(stage 2) Setting up a Mapping Array Between Array of N Cubes and the VBO Array (4th GPU kernel). For each cube a intermediate array stores the index of the VBO where later the surface vertex are stored. Association between the occupied cubes and the correct position in the VBO array. This kernel is only needed because we run a certain number of cubes simultaneously and we must know which position we have to write in the VBO. Sérgio Dias - Kuldeep Bora - Abel Gomes HPDC 2010 - ECMLS

  15. Introduction State of the Art GPU Programming Results Conclusions Triangulation of Convolution Surfaces Marching Cubes Algorithm:Visualization(stage 3) Computation of Surface Vertices by Linear Interpolation(5th GPU kernel). Computation of Surface Normals at the Vertices in VBO Array (6th GPU kernel). Sérgio Dias - Kuldeep Bora - Abel Gomes HPDC 2010 - ECMLS

  16. Introduction State of the Art GPU Programming Results Conclusions Results CPU Times Sérgio Dias - Kuldeep Bora - Abel Gomes HPDC 2010 - ECMLS

  17. Introduction State of the Art GPU Programming Results Conclusions Results GPU Times Sérgio Dias - Kuldeep Bora - Abel Gomes HPDC 2010 - ECMLS

  18. Introduction State of the Art GPU Programming Results Conclusions Results Complexity: N 2 (CPU Running time perfor- mance) Complexity: N (GPU Running time perfor- mance) Sérgio Dias - Kuldeep Bora - Abel Gomes HPDC 2010 - ECMLS

  19. Introduction State of the Art GPU Programming Results Conclusions Results Molecular Surfaces (200d) (1hgv) (1bk2) (2qzf) (1gt0) (1bij) Sérgio Dias - Kuldeep Bora - Abel Gomes HPDC 2010 - ECMLS

  20. Introduction State of the Art GPU Programming Results Conclusions Conclusions Conclusions Development of a CUDA-based method to render smooth molecular surfaces on GPU. The main contribution of this work is a GPU-based implemen- tation of MC algorithm to triangulate and render molecular surfaces, with all the particularities of computing the surface locally in the neighborhood of each atom. Comparison to a CPU-based implementation of the Marching Cubes has been carried out for a number of different molecules. As future work we want to design and implement a scalable parallel algorithm using a cluster of GPUs in order to process and render large molecules. Sérgio Dias - Kuldeep Bora - Abel Gomes HPDC 2010 - ECMLS

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend