Parallel evaluation of nonseparable functions by evolutionary algorithms on GPU
Miguel Cárdenas‐Montes, Miguel Angel Vega-Rodríguez, Juan José Rodríguez‐Vázquez, Antonio Gómez‐Iglesias · Concurrency and Computation Practice and Experience · 2016
Summary Soft computing takes advantage of the computational capabilities provided by graphics processing units (GPUs), as it is reflected in the numerous works published every year. However, comparisons among these works are challenging because of their peculiarities. When evaluating evolutionary algorithms on GPUs, the data layout is a commonality for all the cases. In the current work the most promising data layout for a parallel evaluation of evolutionary algorithms on GPU is evaluated. The general scope of this work makes it broadly applicable, being useful for accelerating the fitness calculation of large instances of any population‐based evolutionary algorithm. For optimal performance to be achieved in this evaluation, it should be done through a hardware‐software co‐design approach. The co‐design process might imply a risk of overfitting. Because of this, a trade‐off in the co‐design approach is necessary for long‐term sustainability of the performance of such code. As a consequence of this study, a statement about the most promising data layout for evaluating large instances of population‐based evolutionary algorithms on GPU is presented. From the different approaches studied, the strategy with allocation of 1 individual per thread on registers with coalesced access to global memory on both Fermi and Kepler architectures outperforms all the other strategies.