• DocumentCode
    2323769
  • Title

    Evolving a CUDA kernel from an nVidia template

  • Author

    Langdon, W.B. ; Harman, M.

  • Author_Institution
    Dept. of Comput. Sci., King´´s Coll., London, UK
  • fYear
    2010
  • fDate
    18-23 July 2010
  • Firstpage
    1
  • Lastpage
    8
  • Abstract
    Rather than attempting to evolve a complete program from scratch we demonstrate genetic interface programming (GIP) by automatically generating a parallel CUDA kernel with identical functionality to existing highly optimised ancient sequential C code (gzip). Generic GPGPU nVidia kernel C++ code is converted into a BNF grammar. Strongly typed genetic programming uses the BNF to generate compilable and executable graphics card kernels. Their fitness is given by running the population on a GPU with randomised subsets of training data itself derived from gzip´s SIR test suite. Back-to-back validation uses the original code as a test oracle.
  • Keywords
    C language; computer graphic equipment; genetic algorithms; operating system kernels; parallel processing; software engineering; user interfaces; BNF grammar; CUDA kernel; Generic GPGPU nVidia kernel C++ code; compute unified device architecture; executable graphics card kernels; genetic interface programming; gzip; highly optimised ancient sequential C code; nVidia template; parallel CUDA kernel; Grammar; Graphics processing unit; Humans; Kernel; Testing; Training; Training data;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Evolutionary Computation (CEC), 2010 IEEE Congress on
  • Conference_Location
    Barcelona
  • Print_ISBN
    978-1-4244-6909-3
  • Type

    conf

  • DOI
    10.1109/CEC.2010.5585922
  • Filename
    5585922