Abstract
Multi-Objective Evolutionary Algorithms (MOEAs) have been widely used to address regression test optimization problems, including test case selection and test suite minimization. GPU-based parallel MOEAs are proposed to increase execution efficiency to fulfill the industrial demands. When using binary representation in MOEAs, the fitness evaluation can be transformed a parallel matrix multiplication that is implemented on GPU easily and more efficiently. Such GPU-based parallel MOEAs may achieve higher level of speed-up for test case prioritization because the computation load of fitness evaluation in test case prioritization is more than that in test case selection or test suite minimization. However, the non-applicability of binary representation in the test case prioritization results in the challenge of parallel fitness evaluation on GPU. In this paper, we present a GPU-based parallel fitness evaluation and three novel parallel crossover computation schemes based on ordinal and sequential representations, which form a fine-grained parallel framework for multi-objective test case prioritization. The empirical studies based on eight benchmarks and one open source program show a maximum of 120x speed-up achieved.
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
Yoo, S., Harman, M.: Regression testing minimization, selection and prioritization: a survey. Software Testing, Verification and Reliability 22(2), 67–120 (2012)
Rothermel, G., Untch, R.H., Chu, C., Harrold, M.J.: Test case prioritization: An empirical study. In: Proceedings of the IEEE International Conference on Software Maintenance, Los Alamitos, California, USA, pp. 179–188. IEEE Computer Society Press (1999)
Rothermel, G., Untch, R., Chu, C., Harrold, M.J.: Prioritizing test cases for regression testing. IEEE Transactions on Software Engineering 27(10), 929–948 (2001)
Elbaum, S., Malishevsky, A., Rothermel, G.: Test case prioritization: a family of empirical studies. IEEE Transactions on Software Engineering 28(2), 159–182 (2002)
Wong, W.E., Horgan, J.R., London, S., Bellcore, H.A.: A study of effective regression testing in practice. In: Proceedings of the Eighth International Symposium on Software Reliability Engineering (ISSRE 1997), vol. 264. IEEE Computer Society (1997)
Kim, J.M., Porter, A.: A history-based test prioritization technique for regression testing in resource constrained environments. In: Proceedings of the 24th International Conference on Software Engineering, ICSE 2002, pp. 119–129 (2002)
Li, Z., Harman, M., Hierons, R.: Meta-heuristic search algorithms for regression test case prioritization. IEEE Transactions on Software Engineering 33(4), 225–237 (2007)
Zitzler, E.: Evolutionary algorithms for multiobjective optimization: Methods and applications, vol. 63. Shaker, Ithaca (1999)
Knowles, J., Corne, D.: The pareto archived evolution strategy: a new baseline algorithm for pareto multiobjective optimisation. In: Proceedings of the 1999 Congress on Evolutionary Computation, CEC 1999, vol. 1, p. 105 (1999)
Rudolph, G.: Evolutionary search under partially ordered fitness sets. HT014601767 (2001)
Deb, K., Pratap, A., Agarwal, S., Meyarivan, T.: A fast and elitist multiobjective genetic algorithm: NSGA-II. IEEE Transactions on Evolutionary Computation 6(2), 182–197 (2002)
Yoo, S., Harman, M.: Pareto efficient multi-objective test case selection. In: International Symposium on Software Testing and Analysis (ISSTA 2007), London, United Kingdom, pp. 140–150. Association for Computer Machinery (July 2007)
Zhang, Y., Harman, M., Lim, S.L.: Empirical evaluation of search based requirements interaction management. Information and Software Technology 55(1), 126–152 (2013)
Yoo, S., Harman, M., Ur, S.: Highly scalable multi objective test suite minimisation using graphics cards. In: Cohen, M.B., Ó Cinnéide, M. (eds.) SSBSE 2011. LNCS, vol. 6956, pp. 219–236. Springer, Heidelberg (2011)
Luong, T.V., Melab, N., Talbi, E.G.: GPU-based island model for evolutionary algorithms. In: Proceedings of the 12th Annual Conference on Genetic and Evolutionary Computation, GECCO 2010. ACM, New York (2010)
Tsutsui, S., Fujimoto, N.: Solving quadratic assignment problems by genetic algorithms with GPU computation: a case study. In: GECCO, vol. 9, pp. 2523–2530 (2009)
Munawar, A., Wahib, M., Munetomo, M., Akama, K.: Hybrid of genetic algorithm and local search to solve MAX-SAT problem using nVidia CUDA framework. Genetic Programming and Evolvable Machines 10(4), 391–415 (2009)
Veldhuizen, D.A.V., Lamont, G.B.: Multiobjective evolutionary algorithms: Analyzing the state-of-the-art. Evolutionary Computation 8(2), 125–147 (2000)
Cantu-Paz, E.: Designing efficient master-slave parallel genetic algorithms (1997)
Makinen, R., Neittaanmaki, P., Periaux, J., Sefrioui, M., Toivanen, J.: Parallel genetic solution for multiobjective mdo. In: Parallel Computational Fluid Dynamics: Algorithms and Results Using Advanced Computers, pp. 352–359 (1997)
Horii, H., Miki, M., Koizumi, T., Tsujiuchi, N.: Asynchronous migration of island parallel ga for multi-objective optimization problem. In: Asia-Pacific Conference on Simulated Evolution and Learning, vol. 1, pp. 86–90 (2002)
Owens, J.D., Luebke, D., Govindaraju, N., Harris, M., Krger, J., Lefohn, A.E., Purcell, T.J.: A survey of general-purpose computation on graphics hardware. Computer Graphics Forum 26(1), 80–113 (2007)
Antoniol, G., Penta, M.D., Harman, M.: Search-based techniques applied to optimization of project planning for a massive maintenance project. In: 21st IEEE International Conference on Software Maintenance, Los Alamitos, California, USA, pp. 240–249. IEEE Computer Society Press (2005)
Larraaga, P., Kuijpers, C., Murga, R., Inza, I., Dizdarevic, S.: Genetic algorithms for the travelling salesman problem: A review of representations and operators. Artificial Intelligence Review 13(2), 129–170 (1999)
Harris, M., Sengupta, S., Owens, J.D.: Parallel prefix sum (scan) with CUDA. GPU Gems 3(39), 851–876 (2007)
Harman, M.: Making the case for morto: Multi objective regression test optimization. In: 2011 IEEE Fourth International Conference on Software Testing, Verification and Validation Workshops (ICSTW), pp. 111–114 (2011)
Antoniol, G., Di Penta, M., Harman, M.: A robust search-based approach to project management in the presence of abandonment, rework, error and uncertainty. In: Proceedings of the 10th International Symposium on Software Metrics, pp. 172–183 (2004)
Islam, M.M., Marchetto, A., Susi, A., Scanniello, G.: A multi-objective technique to prioritize test cases based on latent semantic indexing. In: Proceedings of the 2012 16th European Conference on Software Maintenance and Reengineering, CSMR 2012, Washington, DC, pp. 21–30. IEEE Computer Society (2012)
Kromer, P., Platos, J., Snasel, V.: Genetic algorithm for clustering accelerated by the CUDA platform. In: 2012 IEEE International Conference on Systems, Man, and Cybernetics (SMC), pp. 1005–1010 (2012)
Zhou, Y., Tan, Y.: GPU-based parallel particle swarm optimization. In: IEEE Congress on Evolutionary Computation, CEC 2009, pp. 1493–1500 (2009)
Qin, A.K., Raimondo, F., Forbes, F., Ong, Y.S.: An improved CUDA-based implementation of differential evolution on GPU. In: Proceedings of the Fourteenth International Conference on Genetic and Evolutionary Computation Conference, GECCO 2012, pp. 991–998. ACM, New York (2012)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2013 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Li, Z., Bian, Y., Zhao, R., Cheng, J. (2013). A Fine-Grained Parallel Multi-objective Test Case Prioritization on GPU. In: Ruhe, G., Zhang, Y. (eds) Search Based Software Engineering. SSBSE 2013. Lecture Notes in Computer Science, vol 8084. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-39742-4_10
Download citation
DOI: https://doi.org/10.1007/978-3-642-39742-4_10
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-39741-7
Online ISBN: 978-3-642-39742-4
eBook Packages: Computer ScienceComputer Science (R0)