Skip to main content

A SIMD Interpreter for Genetic Programming on GPU Graphics Cards

  • Conference paper

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 4971))

Abstract

Mackey-Glass chaotic time series prediction and nuclear protein classification show the feasibility of evaluating genetic programming populations directly on parallel consumer gaming graphics processing units. Using a Linux KDE computer equipped with an nVidia GeForce 8800 GTX graphics processing unit card the C++ SPMD interpretter evolves programs at Giga GP operations per second (895 million GPops). We use the RapidMind general processing on GPU (GPGPU) framework to evaluate an entire population of a quarter of a million individual programs on a non-trivial problem in 4 seconds. An efficient reverse polish notation (RPN) tree based GP is given.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Andre, Koza: A parallel implementation of genetic programming that achieves super-linear performance. In: Arabnia, H.R. (ed.) Proc. of Int. Conf. on Parallel and Distributed Processing Techniques and Apps. CSREA, pp. 1163–1174 (1996)

    Google Scholar 

  2. Bennett III, et al.: Building a parallel computer system for $18,000 that performs a half peta-flop per day. In: Banzhaf, et al. (eds.) GECCO 1999, pp. 1484–1490 (1999)

    Google Scholar 

  3. Chitty: A data parallel approach to genetic programming using programmable graphics hardware. In: Thierens, D., et al. (eds.) GECCO 2007, pp. 1566–1573. ACM, New York (2007)

    Chapter  Google Scholar 

  4. Chong, Langdon: Java based distributed genetic programming on the internet. In: Banzhaf, et al. (eds.) GECCO 1999, Full text in CSRP-99-7, p. 1229 (1999)

    Google Scholar 

  5. Ebner, M., Albert, J., Reinhardt, M.: Evolution of Vertex and Pixel Shaders. In: Keijzer, M., Tettamanzi, A.G.B., Collet, P., van Hemert, J.I., Tomassini, M. (eds.) EuroGP 2005. LNCS, vol. 3447, pp. 261–270. Springer, Heidelberg (2005)

    Google Scholar 

  6. Eklund: Time series forecasting using massively parallel genetic programming. In: Proc. of Parallel and Distributed Processing Int. Symposium, pp. 143–147 (2003)

    Google Scholar 

  7. Ernst, et al.: Stack implementation on programmable graphics hardware. In: Girod, B., et al. (eds.) Proc. Vision, Modeling, and Visualization Conference, pp. 255–262 (2003)

    Google Scholar 

  8. Fernando, Kilgard: The Cg Tutorial. Addison-Wesley, Reading (2003)

    Google Scholar 

  9. Fok, et al.: Evolutionary computing on consumer graphics hardware. IEEE Intelligent Systems 22(2), 69–78 (2007)

    Article  Google Scholar 

  10. Gross, et al.: Evolving chess playing programs. In: Langdon, W.B., et al. (eds.) GECCO 2002, pp. 740–747 (2002)

    Google Scholar 

  11. Banzhaf, W., Harding, S.: 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)

    Google Scholar 

  12. Juille, Pollack: Massively parallel genetic programming. In: Angeline, P.J., Kinnear, J.K.E. (eds.) Advances in GP, vol. 2, pp. 339–358. MIT Press, Cambridge (1996)

    Google Scholar 

  13. Koza, J.R.: Genetic Programming: On the Programming of Computers by Means of Natural Selection. MIT Press, Cambridge (1992)

    MATH  Google Scholar 

  14. Banzhaf, W., Langdon, W.B.: Repeated Patterns in Tree Genetic Programming. In: Keijzer, M., Tettamanzi, A.G.B., Collet, P., van Hemert, J.I., Tomassini, M. (eds.) EuroGP 2005. LNCS, vol. 3447, pp. 190–202. Springer, Heidelberg (2005)

    Google Scholar 

  15. Langdon, Banzhaf: Repeated sequences in linear genetic programming genomes. Complex Systems 15(4), 285–306 (2005)

    MathSciNet  Google Scholar 

  16. Langdon, Banzhaf: Repeated patterns in genetic programming. Natural Computation (2005), doi:10.1007/s11047-007-9038-8

    Google Scholar 

  17. Langdon, Barrett: Genetic programming in data mining for drug discovery. In: Ghosh, A., Jain, L.C. (eds.) Evolutionary Computing in Data Mining, pp. 211–235 (2004)

    Google Scholar 

  18. Langdon: Genetic Programming and Data Structures. Kluwer, Dordrecht (1998)

    MATH  Google Scholar 

  19. Langdon, W.B.: Global Distributed Evolution of L-Systems Fractals. In: Keijzer, M., O’Reilly, U.-M., Lucas, S.M., Costa, E., Soule, T. (eds.) EuroGP 2004. LNCS, vol. 3003, pp. 349–358. Springer, Heidelberg (2004)

    Google Scholar 

  20. Lefohn, et al.: Glift: Generic, efficient, random-access GPU data structures. ACM Transactions on Graphics 25(1), 60–99 (2006)

    Article  Google Scholar 

  21. McCool, Du Toit: Metaprogramming GPUs with Sh. AK Peters (2004)

    Google Scholar 

  22. Owens, et al.: A survey of general-purpose computation on graphics hardware. Computer Graphics Forum 26(1), 80–113 (2007)

    Article  Google Scholar 

  23. Poli, R., Langdon, W.B., Page, J.: Smooth Uniform Crossover with Smooth Point Mutation in Genetic Programming: A Preliminary Study. In: Langdon, W.B., Fogarty, T.C., Nordin, P., Poli, R. (eds.) EuroGP 1999. LNCS, vol. 1598, Springer, Heidelberg (1999)

    Google Scholar 

  24. Poli, R., Langdon, W.B., Dignum, S.: On the Limiting Distribution of Program Sizes in Tree-Based Genetic Programming. In: Ebner, M., O’Neill, M., Ekárt, A., Vanneschi, L., Esparcia-Alcázar, A.I. (eds.) EuroGP 2007. LNCS, vol. 4445, pp. 193–204. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  25. Turton, et al.: Some geographic applications of genetic programming on the Cray T3D supercomputer. In: Jesshope, C., Shafarenko, A. (eds.) UK Parallel 1996, Springer, Heidelberg (1996)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Michael O’Neill Leonardo Vanneschi Steven Gustafson Anna Isabel Esparcia Alcázar Ivanoe De Falco Antonio Della Cioppa Ernesto Tarantino

Rights and permissions

Reprints and permissions

Copyright information

© 2008 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Langdon, W.B., Banzhaf, W. (2008). A SIMD Interpreter for Genetic Programming on GPU Graphics Cards. In: O’Neill, M., et al. Genetic Programming. EuroGP 2008. Lecture Notes in Computer Science, vol 4971. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-78671-9_7

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-78671-9_7

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-78670-2

  • Online ISBN: 978-3-540-78671-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics