Data Structures and Transformations for Physically Based Simulation on a GPU

  • Perhaad Mistry
  • Dana Schaa
  • Byunghyun Jang
  • David Kaeli
  • Albert Dvornik
  • Dwight Meglan
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6449)

Abstract

As general purpose computing on Graphics Processing Units (GPGPU) matures, more complicated scientific applications are being targeted to utilize the data-level parallelism available on a GPU. Implementing physically-based simulation on data-parallel hardware requires preprocessing overhead which affects application performance. We discuss our implementation of physics-based data structures that provide significant performance improvements when used on data-parallel hardware. These data structures allow us to maintain a physics-based abstraction of the underlying data, reduce programmer effort and obtain 6x-8x speedup over previously implemented GPU kernels.

Keywords

Physic Simulation Single Instruction Multiple Data Surgical Simulation Data Layout Object Array 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    NVIDIA: NVIDIA CUDA Programming Guide 2.0 (2008), http://www.nvidia.com/cuda
  2. 2.
    NVIDIA: NVIDIA Physx (2008), http://www.nvidia.com/physx
  3. 3.
    Nguyen, H.: Gpu gems 3. Addison-Wesley Professional, Reading (2007)Google Scholar
  4. 4.
    Harris, M.: Optimizing parallel reduction in cuda, NVIDIA Developer Technology (2007)Google Scholar
  5. 5.
    Luebke, D., Harris, M., Govindaraju, N., Lefohn, A., Houston, M., Owens, J., Segal, M., Papakipos, M., Buck, I.: GPGPU: general-purpose computation on graphics hardware. In: Proceedings of the 2006 ACM/IEEE Conference on Supercomputing (2006)Google Scholar
  6. 6.
    Allard, J., Cotin, S., Faure, F., Bensoussan, P.J., Poyer, F., Duriez, C., Delingette, H., Grisoni, L.: Sofa-an open source framework for medical simulation. Studies in Health Technology and Informatics 125, 13Google Scholar
  7. 7.
    Lawlor, O., Chakravorty, S., Wilmarth, T., Choudhury, N., Dooley, I., Zheng, G., Kale, L.: ParFUM: A Parallel Framework for Unstructured Meshes for Scalable Dynamic Physics Applications. Engineering with Computers 22, 215–235 (2006)CrossRefGoogle Scholar
  8. 8.
    Becker, C., Kilian, S., Turek, S., Group, F.E.A.S.T.: Some concepts of the software package FEAST. In: Hernández, V., Palma, J.M.L.M., Dongarra, J. (eds.) VECPAR 1998. LNCS, vol. 1573, pp. 271–284. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  9. 9.
    van Dyk, D., Geveler, M., Mallach, S., Ribbrock, D., Gddeke, D., Gutwenger, C.: HONEI: A collection of libraries for numerical computations targeting multiple processor architectures. Computer Physics Communications 180(12), 2534–2543 (2009)CrossRefMATHGoogle Scholar
  10. 10.
    Anderson, J.A., Lorenz, C.D., Travesset, A.: General purpose molecular dynamics simulations fully implemented on graphics processing units. Journal of Computational Physics 227, 5342–5359 (2008)CrossRefMATHGoogle Scholar
  11. 11.
    Kirby, R.C., Logg, A.: A compiler for variational forms. ACM Trans. Math. Softw. 32, 417–444Google Scholar
  12. 12.
    Bro-Nielsen, M.: Finite element modeling in surgery simulation. Proceedings of the IEEE 86, 283–291 (1998)CrossRefGoogle Scholar
  13. 13.
    Garcia, E.: Information Retrieval Tutorial (2005), http://www.miislita.com
  14. 14.
    Teran, J., Sifakis, E., Irving, G., Fedkiw, R.: Robust quasistatic finite elements and flesh simulation. In: SCA 2005: Proceedings of the 2005 ACM SIGGRAPH/Eurographics Symposium on Computer Animation (2005)Google Scholar
  15. 15.
    Kerdok, A.E., Cotin, S.M., Ottensmeyer, M.P., Galea, A.M., Howe, R.D., Dawson, S.L.: Truth cube: Establishing physical standards for soft tissue simulation. Medical Image Analysis 7, 283–291 (2003)CrossRefGoogle Scholar
  16. 16.
    de Farias, T.S.M., Almeida, M.W.S., Teixeira, J.M.X., Teichrieb, V., Kelner, J.: A High Performance Massively Parallel Approach for Real Time Deformable Body Physics Simulation. In: 20th International Symposium on Computer Architecture and High Performance Computing 2008. SBAC-PAD 2008, pp. 45–52 (2008)Google Scholar
  17. 17.
    Joselli, M., Clua, E., Montenegro, A.C., Aura Pagliosa, P.: A new physics engine with automatic process distribution between CPU-GPU. In: Sandbox 2008: Proceedings of the 2008 ACM SIGGRAPH Symposium on Video Games, pp. 149–156 (2008)Google Scholar
  18. 18.
    Coumans, E.: Bullet physics library (2009), http://www.bulletphysics.com
  19. 19.
    The OpenCL Specification Munshi, A, Khronos OpenCL Working Group (2009)Google Scholar
  20. 20.
    Fedkiw, R., Stam, J., Jensen, H.W.: PhysBAM, http://physbam.stanford.edu
  21. 21.
    Melek, Z., Keyser, J.: Multi-representation interaction for physically based modeling. In: SPM 2005: Proceedings of the 2005 ACM Symposium on Solid and Physical Modeling, pp. 187–196. ACM, New York (2005)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Perhaad Mistry
    • 1
  • Dana Schaa
    • 1
  • Byunghyun Jang
    • 1
  • David Kaeli
    • 1
  • Albert Dvornik
    • 2
  • Dwight Meglan
    • 2
  1. 1.Department of Electrical and Computer EngineeringNortheastern UniversityBostonUSA
  2. 2.Simquest LLCBostonUSA

Personalised recommendations