A hybrid parallel solver for systems of multivariate polynomials using CPUs and GPUs

  • Authors:
  • Cheon-Hyeon Park;Gershon Elber;Ku-Jin Kim;Gye-Young Kim;Joon-Kyung Seong

  • Affiliations:
  • Nexon Corporation, Republic of Korea;Department of Computer Science,Technion-Israel Institute of Technology, Israel;School of Computer Science and Engineering, Kyungpook National University, Republic of Korea;School of Computer Science and Engineering, Soongsil University, Republic of Korea;School of Computer Science and Engineering, Soongsil University, Republic of Korea

  • Venue:
  • Computer-Aided Design
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper deals with a problem of finding valid solutions to systems of polynomial constraints. Although there have been several quite successful algorithms based on domain subdivision to resolve this problem, some major issues are still demanding further research. Prime obstacles in developing an efficient subdivision-based polynomial constraint solver are the exhaustive, although hierarchical, search of the zero-set in the parameter domain, which is computationally demanding, and their scalability in terms of the number of variables. In this paper, we present a hybrid parallel algorithm for solving systems of multivariate constraints by exploiting both the CPU and the GPU multicore architectures. We dedicate the CPU for the traversal of the subdivision tree and the GPU for the multivariate polynomial subdivision. By decomposing the constraint solving technique into two different components, hierarchy traversal and polynomial subdivision, each of which is more suitable to CPUs and GPUs, respectively, our solver can fully exploit the availability of hybrid, multicore architectures of CPUs and GPUs. Furthermore, our GPU-based subdivision method takes advantage of the inherent parallelism in the multivariate polynomial subdivision. We demonstrate the efficacy and scalability of the proposed parallel solver through several examples in geometric applications, including Hausdorff distance queries, contact point computations, surface-surface intersections, ray trap constructions, and bisector surface computations. In our experiments, the proposed parallel method achieves up to two orders of magnitude improvement in performance compared to the state-of-the-art subdivision-based CPU solver.