3 research outputs found
Scalable partitioning for parallel position based dynamics
We introduce a practical partitioning technique designed for parallelizing Position Based Dynamics, and exploiting
the ubiquitous multi-core processors present in current commodity GPUs. The input is a set of particles whose
dynamics is influenced by spatial constraints. In the initialization phase, we build a graph in which each node
corresponds to a constraint and two constraints are connected by an edge if they influence at least one common
particle. We introduce a novel greedy algorithm for inserting additional constraints (phantoms) in the graph
such that the resulting topology is q-colourable, where ˆ qˆ ≥ 2 is an arbitrary number. We color the graph, and
the constraints with the same color are assigned to the same partition. Then, the set of constraints belonging to
each partition is solved in parallel during the animation phase. We demonstrate this by using our partitioning
technique; the performance hit caused by the GPU kernel calls is significantly decreased, leaving unaffected the
visual quality, robustness and speed of serial position based dynamics
Architecture--Performance Interrelationship Analysis In Single/Multiple Cpu/Gpu Computing Systems: Application To Composite Process Flow Modeling
Current developments in computing have shown the advantage of using one or more Graphic Processing Units (GPU) to boost the performance of many computationally intensive applications but there are still limits to these GPU-enhanced systems. The major factors that contribute to the limitations of GPU(s) for High Performance Computing (HPC) can be categorized as hardware and software oriented in nature. Understanding how these factors affect performance is essential to develop efficient and robust applications codes that employ one or more GPU devices as powerful co-processors for HPC computational modeling. The present work analyzes and understands the intrinsic interrelationship of both hardware and software categories on computational performance for single and multiple GPU-enhanced systems using a computationally intensive application that is representative of a large portion of challenges confronting modern HPC. The representative application uses unstructured finite element computations for transient composite resin infusion process flow modeling as the computational core, characteristics and results of which reflect many other HPC applications via the sparse matrix system used for the solution of linear system of equations. This work describes these various software and hardware factors and how they interact to affect performance of computationally intensive applications enabling more efficient development and porting of High Performance Computing applications that includes current, legacy, and future large scale computational modeling applications in various engineering and scientific disciplines