Evolving Gzip Matches Kernel From an NVidia CUDA Template
Source: Kings College London
Rather than attempting to evolve a complete program from scratch the authors demonstrate genetic interface programming by automatically generating a parallel CUDA kernel with identical functionality to existing highly optimised ancient sequential C code. 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 given by running the original code's test suite.