Abstract
Using 512 bit Advanced Vector Extensions, previous development history and Intel documentation, BNF grammar based genetic improvement automatically ports RNAfold to AVX, giving up to a 1.77 fold speed up. The evolved code pull request is an accepted GI software maintenance update to bioinformatics package ViennaRNA.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Lorenz, R., et al.: ViennaRNA Package 2.0. AMB 6(1) (2011). https://doi.org/10.1186/1748-7188-6-26
Langdon, W.B., Harman, M.: Grow and graft a better CUDA pknotsRG for RNA pseudoknot free energy calculation. In: Langdon, W.B., et al. (eds.) Genetic Improvement 2015 Workshop, pp. 805–810. ACM, Madrid, 11–15 July 2015. https://doi.org/10.1145/2739482.2768418
Langdon, W.B., Lorenz, R.: Improving SSE parallel code with grow and graft genetic programming. In: Petke, J., et al. (eds.) GI-2017, pp. 1537–1538. ACM, Berlin, 15–19 July 2017. https://doi.org/10.1145/3067695.3082524
Langdon, W.B., Lorenz, R.: CUDA RNAfold. Technical report RN/18/02, Computer Science, University College, London, Gower Street, London, 27 March 2018. https://doi.org/10.1101/298885
Langdon, W.B., Harman, M.: Optimising existing software with genetic programming. IEEE Trans. EC 19(1), 118–135 (2015). https://doi.org/10.1109/TEVC.2013.2281544
Langdon, W.B., Petke, J., Lorenz, R.: Evolving better RNAfold structure prediction. In: Castelli, M., Sekanina, L., Zhang, M., Cagnoni, S., García-Sánchez, P. (eds.) EuroGP 2018. LNCS, vol. 10781, pp. 220–236. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-77553-1_14
Andronescu, M., Bereg, V., Hoos, H.H., Condon, A.: RNA STRAND: the RNA secondary structure and statistical analysis database. BMC Bioinform. 9(1), 340 (2008). https://doi.org/10.1186/1471-2105-9-340
Langdon, W.B.: Genetic improvement of programs. In: Matousek, R. (ed.) 18th International Conference on Soft Computing, MENDEL 2012. Brno University of Technology, Brno, 27–29 June 2012. Invited Keynote http://www.cs.ucl.ac.uk/staff/W.Langdon/ftp/papers/Langdon_2012_mendel.pdf
Petke, J., Haraldsson, S.O., Harman, M., Langdon, W.B., White, D.R., Woodward, J.R.: Genetic improvement of software: a comprehensive survey. IEEE Trans. EC 22(3), 415–432 (2018). https://doi.org/10.1109/TEVC.2017.2693219
Langdon, W.B.: Genetically improved software. In: Gandomi, A.H., Alavi, A.H., Ryan, C. (eds.) Handbook of Genetic Programming Applications, pp. 181–220. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-20883-1_8
Langdon, W.B., Lam, Brian Y.H., Petke, J., Harman, M.: Improving CUDA DNA analysis software with genetic programming. In: Silva, S., et al. (eds.) GECCO 2015, pp. 1063–1070. ACM, Madrid, 11–15 July 2015. https://doi.org/10.1145/2739480.2754652
Petke, J., Harman, M., Langdon, W.B., Weimer, W.: Specialising software for different downstream applications using genetic improvement and code transplantation. IEEE Trans. SE 44(6), 574–594 (2018). https://doi.org/10.1109/TSE.2017.2702606
Koza, J.R.: Genetic Programming: On the Programming of Computers by Natural Selection. MIT Press, Cambridge (1992)
Banzhaf, W., Nordin, P., Keller, R.E., Francone, F.D.: Genetic Programming - An Introduction. Morgan Kaufmann, San Francisco (1998)
Poli, R., Langdon, W.B., McPhee, N.F.: A field guide to genetic programming (2008), (With Contributions by J.R. Koza). Published via http://lulu.com and freely available at http://www.gp-field-guide.org.uk
Langdon, W.B.: Genetic improvement of software for multiple objectives. In: Barros, M., Labiche, Y. (eds.) SSBSE 2015. LNCS, vol. 9275, pp. 12–28. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-22183-0_2
Langdon, W.B.: Genetic improvement GISMOE blue software tool demo. Technical report RN/18/06, University College, London, 22 September 2018. http://www.cs.ucl.ac.uk/fileadmin/user_upload/blue.pdf
Lopez-Lopez, V.R., Trujillo, L., Legrand, P.: Novelty search for software improvement of a SLAM system. In: Alexander, B., et al. (eds.) 5th Edition of GI @ GECCO 2018, pp. 1598–1605. ACM, Kyoto, 15–19 July 2018. https://doi.org/10.1145/3205651.3208237
Langdon, W.B., Lam, B.Y.H., Modat, M., Petke, J., Harman, M.: Genetic improvement of GPU software. Genet. Program. Evol. Mach. 18(1), 5–44 (2017). https://doi.org/10.1007/s10710-016-9273-9
Langdon, W.B.: Evolving better RNAfold C source code. Technical report RN/17/08, University College, London (2017). https://doi.org/10.1101/201640
Langdon, W.B., Lam, B.Y.H.: Genetically improved BarraCUDA. BioData Min. 20(28) (2017). https://doi.org/10.1186/s13040-017-0149-1
Schaffer, J.D.: Multiple objective optimization with vector evaluated genetic algorithms. In: Grefenstette, J.J. (ed.) Proceedings of an International Conference on Genetic Algorithms and the Applications, pp. 93–100. Carnegie-Mellon University, Pittsburgh, 24–26 July 1985. http://www.cs.ucl.ac.uk/staff/W.Langdon/ftp/papers/icga1985/icga85_schaffer.pdf
Goldberg, D.E.: Genetic Algorithms in Search Optimization and Machine Learning. Addison-Wesley, Boston (1989)
De Jong, K.A.: An analysis of the behavior of a class of genetic adaptive systems. Ph.D. thesis, Computer and Communications Sciences, Michigan, USA (1975)
Deb, K., Pratap, A., Agarwal, S., Meyarivan, T.: A fast and elitist multiobjective genetic algorithm: NSGA-II. IEEE Trans. EC 6(2), 182–197 (2002). https://doi.org/10.1109/4235.996017
Langdon, W.B.: Genetic Programming and Data Structures. Kluwer, Boston (1998). https://doi.org/10.1007/978-1-4615-5731-9
Knieper, T., Defo, B., Kaufmann, P., Platzner, M.: On robust evolution of digital hardware. In: Hinchey, M., Pagnoni, A., Rammig, F.J., Schmeck, H. (eds.) BICC 2008. ITIFIP, vol. 268, pp. 213–222. Springer, Boston (2008). https://doi.org/10.1007/978-0-387-09655-1_19
Acknowledgements
Funded by EPSRC grant EP/M025853/1.
GP code will be available via the author’s home page.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Appendix
Appendix
Rights and permissions
Copyright information
© 2019 Springer Nature Switzerland AG
About this paper
Cite this paper
Langdon, W.B., Lorenz, R. (2019). Evolving AVX512 Parallel C Code Using GP. In: Sekanina, L., Hu, T., Lourenço, N., Richter, H., García-Sánchez, P. (eds) Genetic Programming. EuroGP 2019. Lecture Notes in Computer Science(), vol 11451. Springer, Cham. https://doi.org/10.1007/978-3-030-16670-0_16
Download citation
DOI: https://doi.org/10.1007/978-3-030-16670-0_16
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-16669-4
Online ISBN: 978-3-030-16670-0
eBook Packages: Computer ScienceComputer Science (R0)