Skip to content
Free planNo credit card requiredStart writing

article · Research Repository (Delft University of Technology) · 2016

GPU Computing for Topology Optimization

M.E. Dondorp

Cited by 0Open access

Abstract

This report has been written to serve as an introduction to the basics of GPU computing for mechanical engineers working in the field of structural optimization. In this work, the ability of GPUs to reduce the computation time of topology optimization problems is investigated. The programming paradigm of data parallel computing is introduced. GPU programming particulars are discussed and architectural differences between CPU and GPU processors are highlighted. It is shown how linear algebra operations can be judged on their suitability towards a massively parallelmode of execution. Algorithms with a high computational intensity and regular memory access patternswill benefit the most from a parallel implementation on a GPU. The flexibility of the Python programming language may alleviate much of the difficulties of GPU programing. It is investigated if a hybrid Python/GPU framework is a feasible way of GPU computing in the context of structural optimization. Several ways to interface the GPU from Python are discussed. It is shown that it is possible to execute linear algebra operations on the GPU from a Python context and good performance is possible. However, it is observed that interprocessor communication deteriorates the overall speedup if just one operation is to be accelerated. As a guidance problem, a topology optimization compliance minimization study is introduced. The theoretical framework is given and broken down into a chain of compute steps. By profiling a conventional implementation of topology optimization, it is shown that the solver dominates the computation time entirely. Iterative solvers for linear systems are discussed in the context of topology optimization. By preconditioning the system of equations, the required amount of iterations to solve the system can be reduced. Some GPU compatible preconditioning techniques are discussed. For a topology optimization problem, a Sparse Approximate Inverse preconditioner is found to perform best. Two available conjugate gradient solver implementations have been put to the test. It is shown that, on commodity hardware, an off the shelf conjugate gradient solver for the GPU can yield a speedup compared to a competitive off the shelf conjugate gradient solver for the CPU. For a topology optimization problem, a speedup of two has been observed.

Cite this paper

APA 7

Dondorp, M. (2016). GPU Computing for Topology Optimization. Research Repository (Delft University of Technology).

MLA 9

Dondorp, M.E. “GPU Computing for Topology Optimization.” Research Repository (Delft University of Technology), 2016.

Chicago

Dondorp, M.E. 2016. “GPU Computing for Topology Optimization.” Research Repository (Delft University of Technology).

Harvard

Dondorp, M. (2016) ‘GPU Computing for Topology Optimization’, Research Repository (Delft University of Technology).

BibTeX
@article{dondorp2016computing,
  title = {{GPU Computing for Topology Optimization}},
  author = {Dondorp, M.E.},
  journal = {Research Repository (Delft University of Technology)},
  year = {2016}
}

Made from the index record. Check names, capitalisation and page numbers against the paper. Need another style? AI for Research has over 10,000.