Thread-parallel mesh generation and improvement using face-edge swapping and vertex insertion

The purpose of this thesis is three-fold. First, we devise a memory model for unstructured mesh data for efficient use of memory on parallel shared memory architectures with the purpose of lowering the synchronization overhead between threads and also excluding the probability of occurring race cond...

Full description

Bibliographic Details
Main Author: Zangeneh, Reza
Language:English
Published: University of British Columbia 2014
Online Access:http://hdl.handle.net/2429/51007
Description
Summary:The purpose of this thesis is three-fold. First, we devise a memory model for unstructured mesh data for efficient use of memory on parallel shared memory architectures with the purpose of lowering the synchronization overhead between threads and also excluding the probability of occurring race conditions. Second, we present a new thread-parallel edge and face swapping algorithm for two and three dimensional meshes using OpenMP for shared memory architectures. We show how removing the conflicts from the reconfiguration procedure by applying a vertex locking strategy can result in a near linear speed-up with parallel efficiency of close to one on two threads and 70% with sixteen threads on shared-memory processors. Finally, we derive a parallel mesh generation and refinement module for shared memory architectures based on pre-existing serial modules — GRUMMP — by implementing Chernikov and Chrisochoides’ parallel insertion algorithm along with the two above tools. Experiments show a worst case parallel efficiency of 60% for parallel refinement with 16 threads. === Applied Science, Faculty of === Mechanical Engineering, Department of === Graduate