Advisor: Prof. Hod Lipson hod.lipson@cornell.edu

Goal: Existing physics simulators (ODE, PhysX, Vortex, Bullet) typically rely on one or a few CPUs for the simulator's calculations, and employ simulation engines that are optimized for rigid bodies. These simulators either perform poorly (in terms of simulation wall clock time and fidelity) or fail entirely when applied to assemblies composed of very soft and very stiff components. The goal of this project is to implement a parallel simulator (targeting CPUs and GPUs) capable of simulating large (over one million) assemblies of objects with widely varying stiffness.

Skills learned: Heterogeneous and parallel computation, including and especially general purpose GPU processing is currently a very active topic. The two major graphics card vendors, ATI/AMD and NVIDIA are aggressively pursuing new applications for GPUs. By participating in this project you will become familiar with the following: (a) GPU programming (b) Physics simulation (c) C/C++ programming

Suitability/Requirements: This project is probably most suitable for a Junior/Senior/MEng student in Electrical Engineering or Computer Science, since it is programming-intensive, and requires some knowledge of the GPU compute architecture. However, any skilled C/C++ programmer is encouraged to apply.

Time commitment: 1-2 semesters, 6-8 hours/week (3-4 credits/semester)

More information: This project is suitable for a single student or a small team. For more information contact rbm7@cornell.edu or hod.lipson@cornell.edu

  • No labels