Structural and Multidisciplinary Optimization

, Volume 56, Issue 2, pp 413–434 | Cite as

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



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.


Isogeometric analysis Topology optimization Level set method CUDA GPU parallel computing 



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


  1. Aage N, Lazarov BS (2013) Parallel framework for topology optimization using the method of moving asymptotes. Struct Multidiscip Optim 47:493–505MathSciNetCrossRefMATHGoogle Scholar
  2. Allaire G, Jouve F, Toader A-M (2004) Structural optimization using sensitivity analysis and a level-set method. J Comput Phys 194:363–393MathSciNetCrossRefMATHGoogle Scholar
  3. 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–715MathSciNetCrossRefGoogle Scholar
  4. Allaire G, Dapogny C, Frey P (2014) Shape optimization with a level set based mesh evolution method. Comput Methods Appl Mech Eng 282:22–53MathSciNetCrossRefGoogle Scholar
  5. Andrews T (2012) Computation time comparison between matlab and C++ using launch windowsGoogle Scholar
  6. 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–1090MathSciNetCrossRefMATHGoogle Scholar
  7. Bendsøe MP, Sigmund O (2003) Topology optimization: theory, methods, and applications. Springer Science & Business MediaGoogle Scholar
  8. Challis VJ, Roberts AP, Grotowski JF (2014) High resolution topology optimization using graphics processing units (GPUs). Struct Multidiscip Optim 49:315–325CrossRefGoogle Scholar
  9. Chen J, Shapiro V, Suresh K, Tsukanov I (2007) Shape optimization with topological changes and parametric control. Int J Numer Methods Eng 71:313–346MathSciNetCrossRefMATHGoogle Scholar
  10. Chen J, Freytag M, Shapiro V (2008) Shape sensitivity of constructively represented geometric models. Comput Aided Geometric Des 25:470–488MathSciNetCrossRefMATHGoogle Scholar
  11. Cottrell JA, Hughes TJ, Bazilevs Y (2009) Isogeometric analysis: toward integration of CAD and FEA. WileyGoogle Scholar
  12. Davis T (2007) Creating sparse finite-element matrices in MATLAB. Guest blog in: Loren Shure: Loren on the Art of MATLABGoogle Scholar
  13. De Boor C (1972) On calculating with B-splines. J Approximation Theory 6:50–62MathSciNetCrossRefMATHGoogle Scholar
  14. Dede L, Borden M, Hughes T (2012) Topology optimization with Isogeometric analysis in a phase field approach. Archives Comput Methods Eng 19:427–465MathSciNetCrossRefMATHGoogle Scholar
  15. 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–859MathSciNetCrossRefGoogle Scholar
  16. Georgescu S, Chow P, Okuda H (2013) GPU acceleration for FEM-based structural analysis. Archives Comput Methods Eng 20:111–121MathSciNetCrossRefMATHGoogle Scholar
  17. 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–378MathSciNetCrossRefMATHGoogle Scholar
  18. Hassani B, Hinton E (1998) A review of homogenization and topology optimization III—topology optimization using optimality criteria. Comput Struct 69:739–756CrossRefMATHGoogle Scholar
  19. Herrero D, Martinez J, Marti P (2013) An implementation of level set based topology optimization using GPU 10th World Congress on Structural and Multidisciplinary OptimizationGoogle Scholar
  20. Hsu M-C, Akkerman I, Bazilevs Y (2011) High-performance computing of wind turbine aerodynamics using isogeometric analysis. Comput Fluids 49:93–100MathSciNetCrossRefMATHGoogle Scholar
  21. Huang X, Xie Y-M (2010) A further review of ESO type methods for topology optimization. Struct Multidiscip Optim 41:671–683CrossRefGoogle Scholar
  22. Hughes TJR (2012) The finite element method: linear static and dynamic finite element analysis. Courier CorporationGoogle Scholar
  23. 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–4195MathSciNetCrossRefMATHGoogle Scholar
  24. Johnson RW (2005) Higher order B-spline collocation at the Greville abscissae. Appl Numer Math 52:63–75MathSciNetCrossRefMATHGoogle Scholar
  25. Karatarakis A, Karakitsios P, Papadrakakis M (2014) GPU accelerated computation of the isogeometric analysis stiffness matrix. Comput Methods Appl Mech Eng 269:334–355MathSciNetCrossRefMATHGoogle Scholar
  26. Kirk D (2007) NVIDIA CUDA software and GPU parallel computing architecture ISMM 103–104Google Scholar
  27. Kirk DB, Wen-mei WH (2012) Programming massively parallel processors: a hands-on approach. NewnesGoogle Scholar
  28. 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–1463CrossRefGoogle Scholar
  29. Li K, Qian X (2011) Isogeometric analysis and shape optimization via boundary integral. Comput Aided Des 43:1427–1437CrossRefGoogle Scholar
  30. 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–705MathSciNetCrossRefMATHGoogle Scholar
  31. 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–26MathSciNetCrossRefMATHGoogle Scholar
  32. 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–434CrossRefGoogle Scholar
  33. MATLAB (2014) version 8.4.0. The MathWorks Inc. Natick, MassachusettsGoogle Scholar
  34. Microsoft Visual Studio (2010) Microsoft Corp. Redmond, WashingtonGoogle Scholar
  35. 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–6Google Scholar
  36. Nvidia C (2007) Compute unified device architecture programming guideGoogle Scholar
  37. Osher S, Fedkiw RP (2001) Level set methods: an overview and some recent results. J Comput Phys 169:463–502MathSciNetCrossRefMATHGoogle Scholar
  38. Osher S, Sethian JA (1988) Fronts propagating with curvature-dependent speed: algorithms based on Hamilton-Jacobi formulations. J Comput Phys 79:12–49MathSciNetCrossRefMATHGoogle Scholar
  39. 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–211MathSciNetCrossRefMATHGoogle Scholar
  40. Piegl L, Tiller W (2012) The NURBS book. Springer Science & Business MediaGoogle Scholar
  41. Ploskas N, Samaras N (2014) GPU accelerated pivoting rules for the simplex algorithm. J Syst Softw 96:1–9CrossRefMATHGoogle Scholar
  42. Rozvany G (2001) Aims, scope, methods, history and unified terminology of computer-aided topology optimization in structural mechanics. Struct Multidiscip Optim 21:90–108CrossRefGoogle Scholar
  43. Schmidt S, Schulz V (2011) A 2589 line topology optimization code written for the graphics card. Comput Vis Sci 14:249–256MathSciNetCrossRefGoogle Scholar
  44. Seo Y-D, Kim H-J, Youn S-K (2010) Isogeometric topology optimization using trimmed spline surfaces. Comput Methods Appl Mech Eng 199:3270–3296MathSciNetCrossRefMATHGoogle Scholar
  45. Sigmund O, Maute K (2013) Topology optimization approaches. Struct Multidiscip Optim 48:1031–1055MathSciNetCrossRefGoogle Scholar
  46. Suresh K (2013) Efficient generation of large-scale pareto-optimal topologies. Struct Multidiscip Optim 47:49–61MathSciNetCrossRefMATHGoogle Scholar
  47. Tavakkoli S, Hassani B, Ghasemnejad H (2013) Isogeometric topology optimization of structures by using MMA. Int J Optim Civil Eng 3:313–326MATHGoogle Scholar
  48. 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–472MathSciNetCrossRefGoogle Scholar
  49. Wadbro E, Berggren M (2009) Megapixel topology optimization on a graphics processing unit. SIAM Rev 51:707–721MathSciNetCrossRefMATHGoogle Scholar
  50. Wang Y, Benson DJ (2015a) Multi-patch nonsingular isogeometric boundary element analysis in 3D. Comput Methods Appl Mech Eng 293:71–91Google Scholar
  51. Wang Y, Benson DJ (2015b) Isogeometric analysis for parameterized LSM-based structural topology optimization. Computat Mech 1–17Google Scholar
  52. 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
  53. Wang MY, Wang X (2004) PDE-driven level sets, shape sensitivity and curvature flow for structural topology optimization. Comput Model Eng Sci 6:373–396MATHGoogle Scholar
  54. Wang S, Wang MY (2006a) Structural shape and topology optimization using an implicit free boundary parametrization method. Comput Model Eng Sci 13:119Google Scholar
  55. Wang S, Wang MY (2006b) Radial basis functions and level set method for structural topology optimization. Int J Numer Methods Eng 65:2060–2090MathSciNetCrossRefMATHGoogle Scholar
  56. Wang MY, Wang X, Guo D (2003) A level set method for structural topology optimization. Comput Methods Appl Mech Eng 192:227–246MathSciNetCrossRefMATHGoogle Scholar
  57. Wang Y, Benson DJ, Nagy AP (2015a) A multi-patch nonsingular isogeometric boundary element method using trimmed elements. Computat Mech 1–19Google Scholar
  58. 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–118CrossRefGoogle Scholar
  59. Wang Y, Xu H, Pasini D (2016) Multiscale isogeometric topology optimization for lattice materials. Comput Methods Appl Mech EngGoogle Scholar
  60. 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–719CrossRefGoogle Scholar
  61. 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–233CrossRefGoogle Scholar
  62. 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–1814MathSciNetCrossRefMATHGoogle Scholar
  63. Woźniak M (2015) Fast GPU integration algorithm for isogeometric finite element method solvers using task dependency graphs. J Comput SciGoogle Scholar
  64. 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–1883MathSciNetCrossRefGoogle Scholar
  65. Wu J, Dick C, Westermann R (2016) A system for high-resolution topology optimization. IEEE Trans Vis Comput Graph 22:1195–1208CrossRefGoogle Scholar
  66. 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–353MathSciNetCrossRefMATHGoogle Scholar
  67. 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-V001AT002A060Google Scholar
  68. 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 MathSciNetMATHGoogle Scholar
  69. 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–85CrossRefGoogle Scholar
  70. 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–57CrossRefGoogle Scholar
  71. 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–2891MathSciNetCrossRefMATHGoogle Scholar
  72. Zegard T, Paulino GH (2013) Toward GPU accelerated topology optimization on unstructured meshes. Struct Multidiscip Optim 48:473–485CrossRefGoogle Scholar
  73. 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–796CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2017

Authors and Affiliations

  • Zhaohui Xia
    • 1
  • Yingjun Wang
    • 2
  • Qifu Wang
    • 3
  • Chao Mei
    • 3
  1. 1.Center for Modeling, Simulation and Imaging in Medicine (CeMSIM)Rensselaer Polytechnic InstituteTroyUSA
  2. 2.School of Mechanical and Automotive EngineeringSouth China University of TechnologyGuangzhouChina
  3. 3.National CAD Support Software Engineering Research CenterHuazhong University of Science and TechnologyWuhanChina

Personalised recommendations