A hybrid CPU-Graphics Processing Unit (GPU) approach for computationally efficient simulation-optimization

Abstract Simulation-optimization (Sim-Opt) is a widely used optimization technique that enables the use of simulation model so as naturally describe system complexity and stochastics. A key barrier to its broader adoption is the high computational cost associated with simulation that often limits its practicability. In this paper, we propose the use of GPU parallel computing, to enhance the computational efficiency of Sim-Opt. The main objective of this work is to develop a systematic framework that can be used to construct an efficient hybrid CPU-GPU program. The optimization of a process monitoring model using a Genetic Algorithm is used as a case study to illustrate the proposed approach. Our results show an over 100× acceleration of computation time by the developed hybrid program in comparison to a traditional CPU-based approach.

[1]  Alexander K. Hartmann,et al.  Random number generators for massively parallel simulations on GPU , 2012, The European Physical Journal Special Topics.

[2]  D. G. Maritsas,et al.  Parallel discrete event simulation with SIMULA , 1989, Parallel Comput..

[3]  William B. Langdon,et al.  GP on SPMD parallel graphics hardware for mega Bioinformatics data mining , 2008, Soft Comput..

[4]  P. Glaskowsky NVIDIA ’ s Fermi : The First Complete GPU Computing Architecture , 2009 .

[5]  Zhijiang Shao,et al.  GPU-Based Parallel Calculation Method for 1Molecular Weight Distribution of Batch Free Radical Polymerization , 2011 .

[6]  Chao Ma,et al.  GPU Accelerated Chemical Similarity Calculation for Compound Library Comparison , 2011, J. Chem. Inf. Model..

[7]  Joshua A. Anderson,et al.  General purpose molecular dynamics simulations fully implemented on graphics processing units , 2008, J. Comput. Phys..

[8]  Kaushik Ghosh,et al.  Optimal variable selection for effective statistical process monitoring , 2014, Comput. Chem. Eng..

[9]  Baifeng Wu,et al.  GPU accelerate parallel Odd-Even merge sort: An OpenCL method , 2011, Proceedings of the 2011 15th International Conference on Computer Supported Cooperative Work in Design (CSCWD).

[10]  Gintaras V. Reklaitis,et al.  Simulation-optimization approach to clinical trial supply chain management with demand scenario forecast , 2012, Comput. Chem. Eng..

[11]  Wei Ge,et al.  Discrete particle simulation of gas–solid two-phase flows with multi-scale CPU–GPU hybrid computation , 2012 .

[12]  Michel Barlaud,et al.  Fast k nearest neighbor search using GPU , 2008, 2008 IEEE Computer Society Conference on Computer Vision and Pattern Recognition Workshops.

[13]  Demetrio Laganà,et al.  Solving simulation optimization problems on grid computing systems , 2006, Parallel Comput..

[14]  Lixu Gu,et al.  GPU-based Volume Rendering for Medical Image Visualization , 2005, 2005 IEEE Engineering in Medicine and Biology 27th Annual Conference.

[15]  Rajagopalan Srinivasan,et al.  A knowledge-based simulation-optimization framework and system for sustainable process operations , 2011, Comput. Chem. Eng..

[16]  Cyril Fonlupt,et al.  High performance genetic programming on GPU , 2009, BADS '09.

[17]  William H. Press,et al.  The Art of Scientific Computing Second Edition , 1998 .

[18]  J. Krüger,et al.  Linear algebra operators for GPU implementation of numerical algorithms , 2003, ACM Trans. Graph..

[19]  Jayadev Misra,et al.  Distributed discrete-event simulation , 1986, CSUR.

[20]  Wei Ge,et al.  Direct numerical simulation of sub-grid structures in gas―solid flow: GPU implementation of macro-scale pseudo-particle modeling , 2010 .

[21]  Benjamin J. Glasser,et al.  Large-scale powder mixer simulations using massively parallel GPUarchitectures , 2010 .

[22]  Gonzalo Guillén-Gosálbez,et al.  Combined simulation-optimization methodology for the design of environmental conscious absorption systems , 2012, Comput. Chem. Eng..

[23]  Richard M. Fujimoto,et al.  Parallel discrete event simulation , 1990, CACM.

[24]  Fred Glover,et al.  Practical introduction to simulation optimization , 2003, Proceedings of the 2003 Winter Simulation Conference, 2003..

[25]  Parisa A. Bahri,et al.  Application of Graphic Processing Unit in Model Predictive Control , 2011 .

[26]  Klaus Schulten,et al.  GPU-accelerated molecular modeling coming of age. , 2010, Journal of molecular graphics & modelling.

[27]  E. F. Vogel,et al.  A plant-wide industrial process control problem , 1993 .

[28]  S. Adams,et al.  Finite Difference Time Domain (FDTD) Simulations Using Graphics Processors , 2007, 2007 DoD High Performance Computing Modernization Program Users Group Conference.

[29]  Rajagopalan Srinivasan,et al.  Simulation-Optimization for Business Decision Support in a Global Specialty Chemicals Enterprise , 2010 .

[30]  Weiguo Liu,et al.  Streaming Algorithms for Biological Sequence Alignment on GPUs , 2007, IEEE Transactions on Parallel and Distributed Systems.

[31]  Yao Zhang,et al.  Scan primitives for GPU computing , 2007, GH '07.

[32]  Wen-mei W. Hwu,et al.  Optimization principles and application performance evaluation of a multithreaded GPU using CUDA , 2008, PPoPP.

[33]  Jirí Jaros,et al.  Parallel Genetic Algorithm on the CUDA Architecture , 2010, EvoApplications.

[34]  Gonzalo Guillén-Gosálbez,et al.  Hybrid simulation-optimization based approach for the optimal design of single-product biotechnological processes , 2012, Comput. Chem. Eng..

[35]  Marianthi G. Ierapetritou,et al.  Hybrid simulation based optimization approach for supply chain management , 2012, Comput. Chem. Eng..

[36]  Sébastien Ourselin,et al.  High-Speed Nonlinear Finite Element Analysis for Surgical Simulation Using Graphics Processing Units , 2008, IEEE Transactions on Medical Imaging.

[37]  David A. Bennett,et al.  Parallel agent-based modeling of spatial opinion diffusion accelerated using graphics processing units , 2011 .

[38]  Tien-Tsin Wong,et al.  Evolutionary Computing on Consumer Graphics Hardware , 2007, IEEE Intelligent Systems.

[39]  Kalyanmoy Deb,et al.  A fast and elitist multiobjective genetic algorithm: NSGA-II , 2002, IEEE Trans. Evol. Comput..

[40]  Wen-mei W. Hwu,et al.  Direct Numerical Simulation of Turbulent Flow in a Square Duct using a Graphics Processing Unit (GPU) , 2010 .

[41]  Xi Chen,et al.  Parallel calculation methods for molecular weight distribution of batch free radical polymerization , 2013, Comput. Chem. Eng..

[42]  Fred W. Glover,et al.  Simulation optimization: a review, new developments, and applications , 2005, Proceedings of the Winter Simulation Conference, 2005..

[43]  F. Azadivar Simulation optimization methodologies , 1999, WSC'99. 1999 Winter Simulation Conference Proceedings. 'Simulation - A Bridge to the Future' (Cat. No.99CH37038).

[44]  Fumihiko Ino,et al.  Design and implementation of the Smith-Waterman algorithm on the CUDA-compatible GPU , 2008, 2008 8th IEEE International Conference on BioInformatics and BioEngineering.

[45]  Wenkai Li,et al.  Decision support for integrated refinery supply chains: Part 1. Dynamic simulation , 2008, Comput. Chem. Eng..

[46]  Vitaly Osipov,et al.  GPU sample sort , 2010, 2010 IEEE International Symposium on Parallel & Distributed Processing (IPDPS).

[47]  Antonio Marcilla,et al.  A novel hybrid simulation-optimization approach for the optimal design of multicomponent distillation columns , 2012 .

[48]  James F. Blinn,et al.  Real-time GPU rendering of piecewise algebraic surfaces , 2006, SIGGRAPH 2006.

[49]  Fabio Daolio,et al.  Evaluation of parallel particle swarm optimization algorithms within the CUDA™ architecture , 2011, Inf. Sci..

[50]  Jörg Peters,et al.  A realtime GPU subdivision kernel , 2005, SIGGRAPH 2005.

[51]  Lee W. Schruben,et al.  A survey of simulation optimization techniques and procedures , 2000, 2000 Winter Simulation Conference Proceedings (Cat. No.00CH37165).

[52]  Ying Tan,et al.  GPU-based parallel particle swarm optimization , 2009, 2009 IEEE Congress on Evolutionary Computation.

[53]  Rodney A. Kennedy,et al.  A Survey of Medical Image Registration on Multicore and the GPU , 2010, IEEE Signal Processing Magazine.

[54]  David Tarditi,et al.  Accelerator: using data parallelism to program GPUs for general-purpose uses , 2006, ASPLOS XII.

[55]  Luis Puigjaner,et al.  A simulation-based optimization framework for parameter optimization of supply-chain networks , 2006 .

[56]  Inmaculada García,et al.  Parallel evolutionary algorithms based on shared memory programming approaches , 2011, The Journal of Supercomputing.

[57]  Vijay S. Pande,et al.  SIML: A Fast SIMD Algorithm for Calculating LINGO Chemical Similarities on GPUs and CPUs , 2010, J. Chem. Inf. Model..

[58]  Ji-Bo Wang,et al.  GPU Accelerated Support Vector Machines for Mining High-Throughput Screening Data , 2009, J. Chem. Inf. Model..

[59]  Zhong-Xian Chi,et al.  An Efficient Fine-grained Parallel Genetic Algorithm Based on GPU-Accelerated , 2007, 2007 IFIP International Conference on Network and Parallel Computing Workshops (NPC 2007).

[60]  Fei Xie,et al.  Fast simulation of annual optical efficiency of solar tower power plant , 2012 .

[61]  Insup Lee,et al.  Distributed Web-based simulation optimization , 2000, 2000 Winter Simulation Conference Proceedings (Cat. No.00CH37165).

[62]  A. Maria,et al.  Simulation Optimization: Methods And Applications , 1997, Winter Simulation Conference Proceedings,.

[63]  Amitabh Varshney,et al.  High-throughput sequence alignment using Graphics Processing Units , 2007, BMC Bioinformatics.

[64]  Pu Liu,et al.  Accelerating Chemical Database Searching Using Graphics Processing Units , 2011, J. Chem. Inf. Model..

[65]  Sigrún Andradóttir,et al.  A review of simulation optimization techniques , 1998, 1998 Winter Simulation Conference. Proceedings (Cat. No.98CH36274).

[66]  Weihang Zhu,et al.  SIMD tabu search for the quadratic assignment problem with graphics hardware acceleration , 2010 .

[67]  Ihsan Sabuncuoglu,et al.  Simulation optimization: A comprehensive review on theory and applications , 2004 .