GPU-Parallel SubTree Interpreter for Genetic Programming

被引:15
作者
Cano, Alberto [1 ]
Ventura, Sebastian [1 ]
机构
[1] Univ Cordoba, Dept Comp Sci & Numer Anal, E-14071 Cordoba, Spain
来源
GECCO'14: PROCEEDINGS OF THE 2014 GENETIC AND EVOLUTIONARY COMPUTATION CONFERENCE | 2014年
关键词
Algorithms; Performance; Experimentation; Genetic Programming; Graphic Processing Units; Parallelism;
D O I
10.1145/2576768.2598272
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
Genetic Programming (GP) is a computationally intensive technique but its nature is embarrassingly parallel. Graphic Processing Units (GPUs) are many-core architectures which have been widely employed to speed up the evaluation of GP. In recent years, many works have shown the high performance and efficiency of GPUs on evaluating both the individuals and the fitness cases in parallel. These approaches are known as population parallel and data parallel. This paper presents a parallel GP interpreter which extends these approaches and adds a new parallelization level based on the concurrent evaluation of the individual's subtrees. A GP individual defined by a tree structure with nodes and branches comprises different depth levels in which there are independent subtrees which can be evaluated concurrently. Threads can cooperate to evaluate different subtrees and share the results via GPU's shared memory. The experimental results show the better performance of the proposal in terms of the GP operations per second (GPops/s) that the GP interpreter is capable of processing, achieving up to 21 billion GPops/s using a NVIDIA 480 GPU. However, some issues raised due to limitations of currently available hardware are to be overcomed by the dynamic parallelization capabilities of the next generation of GPUs.
引用
收藏
页码:887 / 893
页数:7
相关论文
共 26 条
[1]   A parallel implementation of genetic programming that achieves super-linear performance [J].
Andre, D ;
Koza, JR .
INFORMATION SCIENCES, 1998, 106 (3-4) :201-218
[2]  
[Anonymous], NVIDIA CUDA PROGR BE
[3]  
[Anonymous], 2003, Genetic programming IV: routine human-competitive machine intelligence
[4]  
[Anonymous], P 11 ANN C COMP GEN
[5]  
[Anonymous], 2007, UCI Machine Learning Repository
[6]   Accelerated parallel genetic programming tree evaluation with OpenCL [J].
Augusto, Douglas A. ;
Barbosa, Helio J. C. .
JOURNAL OF PARALLEL AND DISTRIBUTED COMPUTING, 2013, 73 (01) :86-100
[7]  
Banzhaf W, 2009, GENET EVOL COMPUT, P229
[8]   Parallel evaluation of Pittsburgh rule-based classifiers on GPUs [J].
Cano, Alberto ;
Zafra, Amelia ;
Ventura, Sebastian .
NEUROCOMPUTING, 2014, 126 :45-57
[9]   Speeding up the evaluation phase of GP classification algorithms on GPUs [J].
Cano, Alberto ;
Zafra, Amelia ;
Ventura, Sebastian .
SOFT COMPUTING, 2012, 16 (02) :187-202
[10]   Fast parallel genetic programming: multi-core CPU versus many-core GPU [J].
Chitty, Darren M. .
SOFT COMPUTING, 2012, 16 (10) :1795-1814