GPU computing in discrete optimization. Part I: Introduction to the GPU

被引:19
作者
Brodtkorb, Andre R. [1 ]
Hagen, Trond R. [1 ]
Schulz, Christian [1 ]
Hasle, Geir [1 ]
机构
[1] SINTEF, ICT, Dept Appl Math, POB 124, N-0314 Oslo, Norway
关键词
Discrete optimization; Parallel computing; Heterogeneous computing; GPU; Survey; Introduction; Tutorial; Transportation; Travelling salesman problem; Vehicle routing problem;
D O I
10.1007/s13676-013-0025-1
中图分类号
C93 [管理学]; O22 [运筹学];
学科分类号
070105 ; 12 ; 1201 ; 1202 ; 120202 ;
摘要
In many cases there is still a large gap between the performance of current optimization technology and the requirements of real world applications. As in the past, performance will improve through a combination of more powerful solution methods and a general performance increase of computers. These factors are not independent. Due to physical limits, hardware development no longer results in higher speed for sequential algorithms, but rather in increased parallelism. Modern commodity PCs include a multi-core CPU and at least one GPU, providing a low cost, easily accessible heterogeneous environment for high performance computing. New solution methods that combine task parallelization and stream processing are needed to fully exploit modern computer architectures and profit from future hardware developments. This paper is the first part of a series of two, where the goal of this first part is to give a tutorial style introduction to modern PC architectures and GPU programming. We start with a short historical account of modern mainstream computer architectures, and a brief description of parallel computing. This is followed by the evolution of modern GPUs, before a GPU programming example is given. Strategies and guidelines for program development are also discussed. Part II gives a broad survey of the existing literature on parallel computing targeted at modern PCs in discrete optimization, with special focus on papers on routing problems. We conclude with lessons learnt, directions for future research, and prospects.
引用
收藏
页码:129 / 157
页数:29
相关论文
共 21 条
  • [1] Barker K. J., 2008, SUPERCOMPUTING
  • [2] Solving real-world linear programs: A decade and more of progress
    Bixby, RE
    [J]. OPERATIONS RESEARCH, 2002, 50 (01) : 3 - 15
  • [3] Efficient shallow water simulations on GPUs: Implementation, visualization, verification, and validation
    Brodtkorb, Andre R.
    Saetra, Martin L.
    Altinakar, Mustafa
    [J]. COMPUTERS & FLUIDS, 2012, 55 : 1 - 12
  • [4] State-of-the-art in heterogeneous computing
    Brodtkorb, Andre R.
    Dyken, Christopher
    Hagen, Trond R.
    Hjelmervik, Jon M.
    Storaasli, Olaf O.
    [J]. SCIENTIFIC PROGRAMMING, 2010, 18 (01) : 1 - 33
  • [5] Brodtkorb AR, 2012, J PARALLEL DISTRIB C
  • [6] Cell broadband engine architecture and its first implementation - A performance view
    Chen, T.
    Raghavan, R.
    Dale, J. N.
    Iwata, E.
    [J]. IBM JOURNAL OF RESEARCH AND DEVELOPMENT, 2007, 51 (05) : 559 - 572
  • [7] FERNANDO R, 2003, CG TUTORIAL DEFINITI
  • [8] Goldberg D, 1991, NUMERICAL COMPUTATIO, P171
  • [9] Harris M, 2011, NVIDIA GPU COMPUTING
  • [10] Intel, 2012, INT MICR EXP COMPL M