Abstract
A Single Instruction Multiple Thread CUDA interpreter provides SIMD like parallel evaluation of the whole GP population of \(\frac{1}{4}\) million reverse polish notation (RPN) expressions on graphics cards and nVidia Tesla. Using sub-machine code tree GP a sustain peak performance of 665 billion GP operations per second (10,000 speed up) and an average of 22 peta GP ops per day is reported for a single GPU card on a Boolean induction benchmark never attempted before, let alone solved.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Banzhaf, W., Nordin, P., Keller, R.E., Francone, F.D.: Genetic Programming – An Introduction. Morgan Kaufmann, San Francisco (1998)
Bennett III, F.H., Koza, J.R., Shipman, J., Stiffelman, O.: Building a parallel computer system for $18,000 that performs a half peta-flop per day. In: Banzhaf, W., et al. (eds.) GECCO 1999, pp. 1484–1490. Morgan Kaufmann, San Francisco (1999)
Chitty, D.M.: A data parallel approach to genetic programming using programmable graphics hardware. In: GECCO 2007, pp. 1566–1573 (2007)
Comte, P.: Design & implementation of parallel linear GP for the IBM cell processor. In: Raidl, G., et al. (eds.) GECCO 2009, ACM, New York (2009)
Ebner, M., Reinhardt, M., Albert, J.: Evolution of vertex and pixel shaders. In: Keijzer, M., Tettamanzi, A.G.B., Collet, P., van Hemert, J., Tomassini, M. (eds.) EuroGP 2005. LNCS, vol. 3447, pp. 261–270. Springer, Heidelberg (2005)
Fok, K.-L., Wong, T.-T., Wong, M.-L.: Evolutionary computing on consumer graphics hardware. IEEE Intelligent Systems 22(2), 69–78 (2007)
Harding, S., Banzhaf, W.: Fast genetic programming on GPUs. In: Ebner, M., O’Neill, M., Ekárt, A., Vanneschi, L., Esparcia-Alcázar, A.I. (eds.) EuroGP 2007. LNCS, vol. 4445, pp. 90–101. Springer, Heidelberg (2007)
Harding, S.L., Banzhaf, W.: Distributed genetic programming on GPUs using CUDA. In: Hidalgo, I., et al. (eds.) Wks. Paral. Arch. and Bioinspired Algs. (2009)
Juille, H., Pollack, J.B.: Massively parallel genetic programming. In: Angeline, P.J., Kinnear Jr., K.E. (eds.) Advances in GP 2, ch.17. MIT Press, Cambridge
Koza, J.R.: Genetic Programming. MIT press, Cambridge (1992)
Langdon, W.B.: Large scale bioinformatics data mining with parallel genetic programming on graphics processing units. Par. & Dist. Comp. Intelligence
Langdon, W.B.: Genetic Programming and Data Structures. Kluwer, Dordrecht (1998)
Langdon, W.B.: A SIMD interpreter for genetic programming on GPU graphics cards. Tech. Rep. CSM-470, Computer Science, University of Essex, UK (2007)
Langdon, W.B.: A fast high quality pseudo random number generator for nVidia CUDA. In: Wilson, G. (ed.) CIGPU workshop at GECCO, Montreal, July 8, pp. 2511–2513. ACM, New York (2009)
Langdon, W.B., Banzhaf, W.: A SIMD interpreter for genetic programming on GPU graphics cards. In: O’Neill, M., Vanneschi, L., Gustafson, S., Esparcia Alcázar, A.I., De Falco, I., Della Cioppa, A., Tarantino, E. (eds.) EuroGP 2008. LNCS, vol. 4971, pp. 73–85. Springer, Heidelberg (2008)
Langdon, W.B., Harrison, A.P.: GP on SPMD parallel graphics hardware for mega bioinformatics data mining. Soft Computing 12 12, 1169–1183 (2008)
Langdon, W.B., Poli, R.: Foundations of Genetic Programming (2002)
Lewis, T.E., Magoulas, G.D.: Strategies to minimise the total run time of cyclic graph based genetic programming with GPUs. In: GECCO 2009, pp. 1379–1386 (2009)
Poli, R., Langdon, W.B.: Sub-machine-code genetic programming. In: Spector, L., et al. (eds.) Advances in GP 3, ch. 13, pp. 301–323. MIT Press, Cambridge (1999)
Poli, R., Langdon, W.B., McPhee, N.F.: A field guide to genetic programming (With contributions by J. R. Koza) (2008), http://www.gp-field-guide.org.uk
Robilliard, D., Marion-Poty, V., Fonlupt, C.: Genetic programming on graphics processing units. Genetic Programming and Evolvable Machines 10(4), 447–471 (2009)
Teller, A., Andre, D.: Automatically choosing the number of fitness cases: The rational allocation of trials. In: Koza, J.R. (ed.) GP 1997, July 13-16, pp. 321–328 (1997)
Wilson, G., Banzhaf, W.: Linear genetic programming GPGPU on Microsoft’s Xbox 360. In: WCCI 2008. IEEE, Los Alamitos (2008)
Yanagiya, M.: Efficient genetic programming based on binary decision diagrams. In: 1995 IEEE Conf. Evolutionary Computation, Perth, pp. 234–239 (1995)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2010 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Langdon, W.B. (2010). A Many Threaded CUDA Interpreter for Genetic Programming. In: Esparcia-Alcázar, A.I., Ekárt, A., Silva, S., Dignum, S., Uyar, A.Ş. (eds) Genetic Programming. EuroGP 2010. Lecture Notes in Computer Science, vol 6021. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-12148-7_13
Download citation
DOI: https://doi.org/10.1007/978-3-642-12148-7_13
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-12147-0
Online ISBN: 978-3-642-12148-7
eBook Packages: Computer ScienceComputer Science (R0)