Automatic Implementation of Evolutionary Algorithms on GPUs using ESDL

被引:0
|
作者
Dower, Steve [1 ]
机构
[1] Swinburne Univ Technol, Hawthorn, Vic 3122, Australia
来源
2012 IEEE CONGRESS ON EVOLUTIONARY COMPUTATION (CEC) | 2012年
关键词
D O I
暂无
中图分类号
TM [电工技术]; TN [电子技术、通信技术];
学科分类号
0808 ; 0809 ;
摘要
Modern computer processing units tend towards simpler cores in greater numbers, favouring the development of data-parallel applications. Evolutionary algorithms are ideal for taking full advantage of SIMD (Single Instruction, Multiple Data) processing, which is available on both CPUs and GPUs. Creating software that runs on a GPU requires the use of specialised programming languages or styles, forcing practitioners to acquire new skills and limiting the portability of their developments. In this paper, we present an automatic translation from ESDL, a domain-specific language for composing evolutionary algorithms from arbitrary operators, to C++ AMP, a C++ extension for targeting heterogeneous hardware. Generating executable code from a simple platform-independent description allows practitioners with varying levels of programming expertise to take advantage of data-parallel execution, and enables those with strong expertise to further optimise their implementations. The automatic transformation is shown to produce code less optimal than a manual implementation but with significantly less developer effort. A secondary result is that GPU implementations require a large population, large individuals or an expensive evaluation function to achieve performance benefits over the CPU. All code developed for this paper is freely available online from http://stevedower.id.au/esdl/amp.
引用
收藏
页数:8
相关论文
共 50 条
  • [1] A Scalable Parallel Implementation of Evolutionary Algorithms for Multi-Objective Optimization on GPUs
    Gupta, Samarth
    Tan, Gary
    2015 IEEE CONGRESS ON EVOLUTIONARY COMPUTATION (CEC), 2015, : 1567 - 1574
  • [2] Towards an OpenCL Implementation of Genetic Algorithms on GPUs
    Puzniakowski, Tadeusz
    Bednarczyk, Marek A.
    SECURITY AND INTELLIGENT INFORMATION SYSTEMS, 2012, 7053 : 190 - +
  • [3] Automatic Offloading of Mobile Applications Using Evolutionary Algorithms
    Folino, Gianluigi
    Pisani, Francesco Sergio
    ERCIM NEWS, 2013, (93): : 14 - 15
  • [4] LightHouse: An Automatic Code Generator for Graph Algorithms on GPUs
    Shashidhar, G.
    Nasre, Rupesh
    LANGUAGES AND COMPILERS FOR PARALLEL COMPUTING, LCPC 2016, 2017, 10136 : 235 - 249
  • [5] Hybrid Implementation of Evolutionary Algorithms in FPGAs for Automatic Generation of Morphological Image Filters
    Padua, Bruno
    Lima, Denis
    Fernandes, Marcio
    Abuassal, Ali
    Tempesti, Gianluca
    Pedrino, Emerson
    PRZEGLAD ELEKTROTECHNICZNY, 2020, 96 (04): : 12 - 16
  • [6] Automatic Algebraic Evolutionary Algorithms
    Baioletti, Marco
    Milani, Alfredo
    Santucci, Valentino
    ARTIFICIAL LIFE AND EVOLUTIONARY COMPUTATION, WIVACE 2017, 2018, 830 : 271 - 283
  • [7] Implementation of Algorithms with a Fine-Grained Parallelism on GPUs
    Kalgin, K. V.
    NUMERICAL ANALYSIS AND APPLICATIONS, 2011, 4 (01) : 46 - 55
  • [8] Using GPUs to Accelerate CAD Algorithms
    Croix, John F.
    Gulati, Kanupriya
    Khatri, Sunil P.
    IEEE DESIGN & TEST, 2013, 30 (01) : 8 - 16
  • [9] Hardware implementation of evolutionary algorithms using dynamic reconfiguration technology
    Kanasugi, Akinori
    Tsukahara, Akihiko
    Ando, Ki
    NATURAL COMPUTING, 2015, 14 (04) : 593 - 601
  • [10] Hardware implementation of evolutionary algorithms using dynamic reconfiguration technology
    Akinori Kanasugi
    Akihiko Tsukahara
    Ki Ando
    Natural Computing, 2015, 14 : 593 - 601