Skip to main content
Log in

GPU parallel strategy for parameterized LSM-based topology optimization using isogeometric analysis

  • RESEARCH PAPER
  • Published:
Structural and Multidisciplinary Optimization Aims and scope Submit manuscript

Abstract

This paper proposes a new level set-based topology optimization (TO) method using a parallel strategy of Graphics Processing Units (GPUs) and the isogeometric analysis (IGA). The strategy consists of parallel implementations for initial design domain, IGA, sensitivity analysis and design variable update, and the key issues in the parallel implementation, e.g., the parallel assembly race condition, are discussed in detail. The computational complexity and parallelization of the different steps in the TO are also analyzed in this paper. To better demonstrate the advantages of the proposed strategy, we compare efficiency of serial CPU, multi-thread parallel CPU and GPU by benchmark examples, and the speedups achieve two orders of magnitude.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17
Fig. 18
Fig. 19
Fig. 20
Fig. 21
Fig. 22
Fig. 23
Fig. 24
Fig. 25
Fig. 26
Fig. 27
Fig. 28
Fig. 29

Similar content being viewed by others

References

  • Aage N, Lazarov BS (2013) Parallel framework for topology optimization using the method of moving asymptotes. Struct Multidiscip Optim 47:493–505

    Article  MathSciNet  MATH  Google Scholar 

  • Allaire G, Jouve F, Toader A-M (2004) Structural optimization using sensitivity analysis and a level-set method. J Comput Phys 194:363–393

    Article  MathSciNet  MATH  Google Scholar 

  • Allaire G, Dapogny C, Frey P (2013) A mesh evolution algorithm based on the level set method for geometry and topology optimization. Struct Multidiscip Optim 48:711–715

    Article  MathSciNet  Google Scholar 

  • Allaire G, Dapogny C, Frey P (2014) Shape optimization with a level set based mesh evolution method. Comput Methods Appl Mech Eng 282:22–53

    Article  MathSciNet  Google Scholar 

  • Andrews T (2012) Computation time comparison between matlab and C++ using launch windows

  • Bazilevs Y, Beirao da Veiga L, Cottrell JA, Hughes TJR, Sangalli G (2006) Isogeometric analysis: approximation, stability and error estimates for h-refined meshes. Math Models Methods Appl Sci 16:1031–1090

    Article  MathSciNet  MATH  Google Scholar 

  • Bendsøe MP, Sigmund O (2003) Topology optimization: theory, methods, and applications. Springer Science & Business Media

  • Challis VJ, Roberts AP, Grotowski JF (2014) High resolution topology optimization using graphics processing units (GPUs). Struct Multidiscip Optim 49:315–325

    Article  Google Scholar 

  • Chen J, Shapiro V, Suresh K, Tsukanov I (2007) Shape optimization with topological changes and parametric control. Int J Numer Methods Eng 71:313–346

    Article  MathSciNet  MATH  Google Scholar 

  • Chen J, Freytag M, Shapiro V (2008) Shape sensitivity of constructively represented geometric models. Comput Aided Geometric Des 25:470–488

    Article  MathSciNet  MATH  Google Scholar 

  • Cottrell JA, Hughes TJ, Bazilevs Y (2009) Isogeometric analysis: toward integration of CAD and FEA. Wiley

  • Davis T (2007) Creating sparse finite-element matrices in MATLAB. Guest blog in: Loren Shure: Loren on the Art of MATLAB

  • De Boor C (1972) On calculating with B-splines. J Approximation Theory 6:50–62

    Article  MathSciNet  MATH  Google Scholar 

  • Dede L, Borden M, Hughes T (2012) Topology optimization with Isogeometric analysis in a phase field approach. Archives Comput Methods Eng 19:427–465

    Article  MathSciNet  MATH  Google Scholar 

  • Duarte LS, Celes W, Pereira A, Menezes IF, Paulino GH (2015) PolyTop++: an efficient alternative for serial and parallel topology optimization on CPUs & GPUs. Struct Multidiscip Optim 52:845–859

    Article  MathSciNet  Google Scholar 

  • Georgescu S, Chow P, Okuda H (2013) GPU acceleration for FEM-based structural analysis. Archives Comput Methods Eng 20:111–121

    Article  MathSciNet  MATH  Google Scholar 

  • Guo X, Zhang W, Zhong W (2014) Explicit feature control in structural topology optimization via level set method. Comput Methods Appl Mech Eng 272:354–378

    Article  MathSciNet  MATH  Google Scholar 

  • Hassani B, Hinton E (1998) A review of homogenization and topology optimization III—topology optimization using optimality criteria. Comput Struct 69:739–756

    Article  MATH  Google Scholar 

  • Herrero D, Martinez J, Marti P (2013) An implementation of level set based topology optimization using GPU 10th World Congress on Structural and Multidisciplinary Optimization

  • Hsu M-C, Akkerman I, Bazilevs Y (2011) High-performance computing of wind turbine aerodynamics using isogeometric analysis. Comput Fluids 49:93–100

    Article  MathSciNet  MATH  Google Scholar 

  • Huang X, Xie Y-M (2010) A further review of ESO type methods for topology optimization. Struct Multidiscip Optim 41:671–683

    Article  Google Scholar 

  • Hughes TJR (2012) The finite element method: linear static and dynamic finite element analysis. Courier Corporation

  • Hughes TJR, Cottrell JA, Bazilevs Y (2005) Isogeometric analysis: CAD, finite elements, NURBS, exact geometry and mesh refinement. Comput Methods Appl Mech Eng 194:4135–4195

    Article  MathSciNet  MATH  Google Scholar 

  • Johnson RW (2005) Higher order B-spline collocation at the Greville abscissae. Appl Numer Math 52:63–75

    Article  MathSciNet  MATH  Google Scholar 

  • Karatarakis A, Karakitsios P, Papadrakakis M (2014) GPU accelerated computation of the isogeometric analysis stiffness matrix. Comput Methods Appl Mech Eng 269:334–355

    Article  MathSciNet  MATH  Google Scholar 

  • Kirk D (2007) NVIDIA CUDA software and GPU parallel computing architecture ISMM 103–104

  • Kirk DB, Wen-mei WH (2012) Programming massively parallel processors: a hands-on approach. Newnes

  • Kuźnik K, Paszyński M, Calo V (2012) Graph grammar-based multi-frontal parallel direct solver for two-dimensional isogeometric analysis. Proc Comput Sci 9:1454–1463

    Article  Google Scholar 

  • Li K, Qian X (2011) Isogeometric analysis and shape optimization via boundary integral. Comput Aided Des 43:1427–1437

    Article  Google Scholar 

  • Luo Z, Tong L, Wang MY, Wang S (2007) Shape and topology optimization of compliant mechanisms using a parameterization level set method. J Comput Phys 227:680–705

    Article  MathSciNet  MATH  Google Scholar 

  • Luo Z, Wang MY, Wang S, Wei P (2008) A level set-based parameterization method for structural shape and topology optimization. Int J Numer Methods Eng 76:1–26

    Article  MathSciNet  MATH  Google Scholar 

  • Luo Z, Tong L, Kang Z (2009) A level set method for structural shape and topology optimization using radial basis functions. Comput Struct 87:425–434

    Article  Google Scholar 

  • MATLAB (2014) version 8.4.0. The MathWorks Inc. Natick, Massachusetts

  • Microsoft Visual Studio (2010) Microsoft Corp. Redmond, Washington

  • Mukherjee S, Moore N, Brock J, Leeser M (2012) CUDA and OpenCL implementations of 3D CT reconstruction for biomedical imaging High Performance Extreme Computing (HPEC), 2012 I.E. Conference on. IEEE 1–6

  • Nvidia C (2007) Compute unified device architecture programming guide

  • Osher S, Fedkiw RP (2001) Level set methods: an overview and some recent results. J Comput Phys 169:463–502

    Article  MathSciNet  MATH  Google Scholar 

  • Osher S, Sethian JA (1988) Fronts propagating with curvature-dependent speed: algorithms based on Hamilton-Jacobi formulations. J Comput Phys 79:12–49

    Article  MathSciNet  MATH  Google Scholar 

  • Otomori M, Yamada T, Izui K, Nishiwaki S, Andkjær J (2012) A topology optimization method based on the level set method for the design of negative permeability dielectric metamaterials. Comput Methods Appl Mech Eng 237:192–211

    Article  MathSciNet  MATH  Google Scholar 

  • Piegl L, Tiller W (2012) The NURBS book. Springer Science & Business Media

  • Ploskas N, Samaras N (2014) GPU accelerated pivoting rules for the simplex algorithm. J Syst Softw 96:1–9

    Article  MATH  Google Scholar 

  • Rozvany G (2001) Aims, scope, methods, history and unified terminology of computer-aided topology optimization in structural mechanics. Struct Multidiscip Optim 21:90–108

    Article  Google Scholar 

  • Schmidt S, Schulz V (2011) A 2589 line topology optimization code written for the graphics card. Comput Vis Sci 14:249–256

    Article  MathSciNet  Google Scholar 

  • Seo Y-D, Kim H-J, Youn S-K (2010) Isogeometric topology optimization using trimmed spline surfaces. Comput Methods Appl Mech Eng 199:3270–3296

    Article  MathSciNet  MATH  Google Scholar 

  • Sigmund O, Maute K (2013) Topology optimization approaches. Struct Multidiscip Optim 48:1031–1055

    Article  MathSciNet  Google Scholar 

  • Suresh K (2013) Efficient generation of large-scale pareto-optimal topologies. Struct Multidiscip Optim 47:49–61

    Article  MathSciNet  MATH  Google Scholar 

  • Tavakkoli S, Hassani B, Ghasemnejad H (2013) Isogeometric topology optimization of structures by using MMA. Int J Optim Civil Eng 3:313–326

    MATH  Google Scholar 

  • van Dijk NP, Maute K, Langelaar M, Van Keulen F (2013) Level-set methods for structural topology optimization: a review. Struct Multidiscip Optim 48:437–472

    Article  MathSciNet  Google Scholar 

  • Wadbro E, Berggren M (2009) Megapixel topology optimization on a graphics processing unit. SIAM Rev 51:707–721

    Article  MathSciNet  MATH  Google Scholar 

  • Wang Y, Benson DJ (2015a) Multi-patch nonsingular isogeometric boundary element analysis in 3D. Comput Methods Appl Mech Eng 293:71–91

  • Wang Y, Benson DJ (2015b) Isogeometric analysis for parameterized LSM-based structural topology optimization. Computat Mech 1–17

  • Wang Y, Benson DJ (2016) Geometrically constrained isogeometric parameterized level-set based topology optimization via trimmed elements. Front Mech Eng. doi:10.1007/s11465-016-0403-0

    Google Scholar 

  • Wang MY, Wang X (2004) PDE-driven level sets, shape sensitivity and curvature flow for structural topology optimization. Comput Model Eng Sci 6:373–396

    MATH  Google Scholar 

  • Wang S, Wang MY (2006a) Structural shape and topology optimization using an implicit free boundary parametrization method. Comput Model Eng Sci 13:119

  • Wang S, Wang MY (2006b) Radial basis functions and level set method for structural topology optimization. Int J Numer Methods Eng 65:2060–2090

    Article  MathSciNet  MATH  Google Scholar 

  • Wang MY, Wang X, Guo D (2003) A level set method for structural topology optimization. Comput Methods Appl Mech Eng 192:227–246

    Article  MathSciNet  MATH  Google Scholar 

  • Wang Y, Benson DJ, Nagy AP (2015a) A multi-patch nonsingular isogeometric boundary element method using trimmed elements. Computat Mech 1–19

  • Wang Y, Wang Q, Deng X, Xia Z, Yan J, Xu H (2015b) Graphics processing unit (GPU) accelerated fast multipole BEM with level-skip M2L for 3D elasticity problems. Adv Eng Softw 82:105–118

    Article  Google Scholar 

  • Wang Y, Xu H, Pasini D (2016) Multiscale isogeometric topology optimization for lattice materials. Comput Methods Appl Mech Eng

  • Wei P, Wang MY, Xing X (2010) A study on X-FEM in continuum structural optimization using a level set model. Comput Aided Des 42:708–719

    Article  Google Scholar 

  • Wei Y, Wang Q, Huang Y, Wang Y, Xia Z (2015) Acceleration of free-vibrations analysis with the Dual Reciprocity BEM based on ℋ-matrices and CUDA. Eng Comput 32:211–233

    Article  Google Scholar 

  • Wong J, Kuhl E, Darve E (2015) A new sparse matrix vector multiplication graphics processing unit algorithm designed for finite element problems. Int J Numer Methods Eng 102:1784–1814

    Article  MathSciNet  MATH  Google Scholar 

  • Woźniak M (2015) Fast GPU integration algorithm for isogeometric finite element method solvers using task dependency graphs. J Comput Sci

  • Woźniak M, Kuźnik K, Paszyński M, Calo V, Pardo D (2014) Computational cost estimates for parallel shared memory isogeometric multi-frontal solvers. Comput Math Appl 67:1864–1883

    Article  MathSciNet  Google Scholar 

  • Wu J, Dick C, Westermann R (2016) A system for high-resolution topology optimization. IEEE Trans Vis Comput Graph 22:1195–1208

    Article  Google Scholar 

  • Xia Q, Wang MY, Shi T (2014a) A level set method for shape and topology optimization of both structure and support of continuum structures. Comput Methods Appl Mech Eng 272:340–353

    Article  MathSciNet  MATH  Google Scholar 

  • Xia Z, Wang Q, Huang Y, Yixiong W, Yingjun W (2014b) Parallel Strategy of FMBEM for 3D Elastostatics and its GPU Implementation Using CUDA ASME 2014 International Design Engineering Technical Conferences and Computers and Information in Engineering Conference. Am Soc Mech Eng V01AT02A060-V001AT002A060

  • Xia Z, Wang Q, Liu Y, Wang Y, Wei Y (2014c) M2L optimization in FMBEM and its GPU implementation. WIT Trans Model Simulat 56:307–319. doi:10.2495/BEM360261

    MathSciNet  MATH  Google Scholar 

  • Xia Z, Wang Q, Wang Y, Yu C (2015) A CAD/CAE incorporate software framework using a unified representation architecture. Adv Eng Softw 87:68–85

    Article  Google Scholar 

  • Xia Z, Wang Q, Liu Q, Wang Y, Liu J, Chen G (2016) A novel approach for automatic reconstruction of boundary condition in structure analysis. Adv Eng Softw 96:38–57

    Article  Google Scholar 

  • Yamada T, Izui K, Nishiwaki S, Takezawa A (2010) A topology optimization method based on the level set method incorporating a fictitious interface energy. Comput Methods Appl Mech Eng 199:2876–2891

    Article  MathSciNet  MATH  Google Scholar 

  • Zegard T, Paulino GH (2013) Toward GPU accelerated topology optimization on unstructured meshes. Struct Multidiscip Optim 48:473–485

    Article  Google Scholar 

  • Zuo K-T, Chen L-P, Zhang Y-Q, Yang J (2007) Study of key algorithms in topology optimization. Int J Adv Manuf Technol 32:787–796

    Article  Google Scholar 

Download references

Acknowledgements

This research was supported by the National Natural Science Foundation of China (51475180).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Yingjun Wang.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Xia, Z., Wang, Y., Wang, Q. et al. GPU parallel strategy for parameterized LSM-based topology optimization using isogeometric analysis. Struct Multidisc Optim 56, 413–434 (2017). https://doi.org/10.1007/s00158-017-1672-x

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00158-017-1672-x

Keywords

Navigation