A GPU-based Streaming Algorithm for High-Resolution Cloth Simulation

by Min Tang1, Ruofeng Tong1, Rahul Narain3, Chang Meng1, and Dinesh Manocha2.

1 - Zhejiang University, China

2 - University of North Carolina at Chapel Hill, USA

3 - University of California, Berkeley, USA


Different cloth simulations generated by varying the underlying resolution: The figure highlights different simulation results generated using varying resolutions of the cloth mesh on the Buddha model: 20K, 500K, and 2M triangles (from left to right). Our new GPU-based streaming algorithm takes 138 seconds/frame to perform the entire simulation (including time integration, collision detection, and response) on a NVIDIA Tesla K20c GPU. It is about 126X faster than a single-threaded CPU-based algorithm.


We present a GPU-based streaming algorithm to perform high-resolution and accurate cloth simulation. We map all the components of cloth simulation pipeline, including time integration, collision detection, collision response, and velocity updating to GPU-based kernels and data structures. Our algorithm perform intra-object and interobject collisions, handles contacts and friction, and is able to accurately simulate folds and wrinkles. We describe the streaming pipeline and address many issues in terms of obtaining high throughput on many-core GPUs. In practice, our algorithm can perform high-fidelity simulation on a cloth mesh with 2M triangles using 3GB of GPU memory. We highlight the parallel performance of our algorithm on three different generations of GPUs. On a high-end NVIDIA Tesla K20c, we observe up to two orders of magnitude performance improvement as compared to a single-threaded CPU-based algorithm, and about one order of magnitude improvement over a 16-core CPUbased parallel implementation.


Paper  (PDF 3.93 MB)

Min Tang, Roufeng Tong, Rahul Narain, Chang Meng and Dinesh Manocha, A GPU-based Streaming Algorithm for High-Resolution Cloth Simulation, Computer Graphics Forum, 32(7): 21-30, (Proceedings of Pacific Graphics 2013), 2013.

      author = {Tang, Min and Tong, Ruofeng and Narain, Rahul and Meng, Chang and Manocha, Dinesh},
      title = {A GPU-based Streaming Algorithm for High-Resolution Cloth Simulation},
      journal = {Computer Graphics Forum},
      volume = {32},
      number = {7},
      pages = {21--30},
      year = {2013},

Video (14.8 MB)


Related Links

UNC dynamic model benchmark repository

Collision-Streams: Fast GPU-based Collision Detection for Deformable Models

Fast Continuous Collision Detection using Deforming Non-Penetration Filters

Interactive Continuous Collision Detection between Deformable Models using Connectivity-Based Culling

MCCD: Multi-Core Collision Detection between Deformable Models using Front-Based Decomposition

Fast Collision Detection for Deformable Models using Representative-Triangles

DeformCD: Collision Detection between Deforming Objects

Self-CCD: Continuous Collision Detection for Deforming Objects

Interactive Collision Detection between Deformable Models using Chromatic Decomposition

Fast Proximity Computation Among Deformable Models using Discrete Voronoi Diagrams

CULLIDE: Interactive Collision Detection between Complex Models using Graphics Hardware

RCULLIDE: Fast and Reliable Collision Culling using Graphics Processors

Quick-CULLIDE: Efficient Inter- and Intra-Object Collision Culling using Graphics Hardware

Collision Detection



This research is supported in part by NSFC (61170140), the National Basic Research Program of China (2011CB302205), the National Key Technology R&D Program of China (2012BAD35B01), and NVIDIA. Dinesh Manocha is supported in part by ARO Contract W911NF-10-1-0506, NSF awards 0917040, 0904990, 1000579 and 1117127, and Intel. Ruofeng Tong is partly supported by NSFC (61170141). Rahul Narain is supported by NSF Grant IIS-0915462 and funding from Intel Science and Technology Center for Visual Computing.


CB #3175, Department of Computer Science
University of North Carolina
Chapel Hill, NC 27599-3175