Advertisement

High-Performance Algorithm Engineering for Large-Scale Graph Problems and Computational Biology

  • David A. Bader
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3503)

Abstract

Many large-scale optimization problems rely on graph theoretic solutions; yet high-performance computing has traditionally focused on regular applications with high degrees of locality. We describe our novel methodology for designing and implementing irregular parallel algorithms that attain significant performance on high-end computer systems. Our results for several fundamental graph theory problems are the first ever to achieve parallel speedups. Specifically, we have demonstrated for the first time that significant parallel speedups are attainable for arbitrary instances of a variety of graph problems and are developing a library of fundamental routines for discrete optimization (especially in computational biology) on shared-memory systems.

Phylogenies derived from gene order data may prove crucial in answering some fundamental questions in biomolecular evolution. High-performance algorithm engineering offers a battery of tools that can reduce, sometimes spectacularly, the running time of existing approaches. We discuss one such such application, GRAPPA, that demonstrated over a billion-fold speedup in running time (on a variety of real and simulated datasets), by combining low-level algorithmic improvements, cache-aware programming, careful performance tuning, and massive parallelism. We show how these techniques are directly applicable to a large variety of problems in computational biology.

Keywords

Computational Biology High Performance Computing Computer Engineer Department Parallel Speedup Biconnected Component 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Bader, D., Illendula, A., Moret, B.M., Weisse-Bernstein, N.: Using PRAM algorithms on a uniform-memory-access shared-memory architecture. In: Brodal, G.S., Frigioni, D., Marchetti-Spaccamela, A. (eds.) WAE 2001. LNCS, vol. 2141, pp. 129–144. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  2. 2.
    Bader, D., Moret, B., Sanders, P.: Algorithm engineering for parallel computation. In: Fleischer, R., Meineche-Schmidt, E., Moret, B. (eds.) Experimental Algorithmics. LNCS, vol. 2547, pp. 1–23. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  3. 3.
    Bader, D., Sreshta, S., Weisse-Bernstein, N.: Evaluating arithmetic expressions using tree contraction: A fast and scalable parallel implementation for symmetric multiprocessors (SMPs). In: Sahni, S.K., Prasanna, V.K., Shukla, U. (eds.) HiPC 2002. LNCS, vol. 2552, pp. 63–75. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  4. 4.
    Bader, D.A., Cong, G.: A fast, parallel spanning tree algorithm for symmetric multiprocessors (SMPs). In: Proc. Int’l Parallel and Distributed Processing Symp. (IPDPS 2004), Santa Fe, NM (2004)Google Scholar
  5. 5.
    Bader, D.A., Cong, G.: A fast, parallel spanning tree algorithm for symmetric multiprocessors (SMPs). Journal of Parallel and Distributed Computing (2004) (to appear)Google Scholar
  6. 6.
    Bader, D.A., Cong, G.: Fast shared-memory algorithms for computing the minimum spanning forest of sparse graphs. In: Proc. Int’l Parallel and Distributed Processing Symp. (IPDPS 2004), Santa Fe, NM (2004)Google Scholar
  7. 7.
    Cong, G., Bader, D.A.: The Euler tour technique and parallel rooted spanning tree. In: Proc. Int’l Conf. on Parallel Processing (ICPP), Montreal, Canada, pp. 448–457 (2004)Google Scholar
  8. 8.
    Su, M.F., El-Kady, I., Bader, D.A., Lin, S.Y.: A novel FDTD application featuring OpenMP-MPI hybrid parallelization. In: Proc. Int’l Conf. on Parallel Processing (ICPP), Montreal, Canada, pp. 373–379 (2004)Google Scholar
  9. 9.
    Bader, D., Madduri, K.: A parallel state assignment algorithm for finite state machines. In: Bougé, L., Prasanna, V.K. (eds.) HiPC 2004. LNCS, vol. 3296, pp. 297–308. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  10. 10.
    Cong, G., Bader, D.: Lock-free parallel algorithms: An experimental study. In: Bougé, L., Prasanna, V.K. (eds.) HiPC 2004. LNCS, vol. 3296, pp. 516–527. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  11. 11.
    Cong, G., Bader, D.: An experimental study of parallel biconnected components algorithms on symmetric multiprocessors (SMPs). Technical report, Electrical and Computer Engineering Department, The University of New Mexico, Albuquerque, NM (2004) (Submitted for publication)Google Scholar
  12. 12.
    Bader, D., Cong, G., Feo, J.: A comparison of the performance of list ranking and connected components algorithms on SMP and MTA shared-memory systems. Technical report, Electrical and Computer Engineering Department, The University of New Mexico, Albuquerque, NM (2004) (Submitted for publication)Google Scholar
  13. 13.
    Saitou, N., Nei, M.: The neighbor-joining method: A new method for reconstruction of phylogenetic trees. Molecular Biological and Evolution 4, 406–425 (1987)Google Scholar
  14. 14.
    Farris, J.: The logical basis of phylogenetic analysis. In: Platnick, N., Funk, V. (eds.) Advances in Cladistics, pp. 1–36. Columbia Univ. Press, New York (1983)Google Scholar
  15. 15.
    Felsenstein, J.: Evolutionary trees from DNA sequences: a maximum likelihood approach. J. Mol. Evol. 17, 368–376 (1981)CrossRefGoogle Scholar
  16. 16.
    Sankoff, D., Blanchette, M.: Multiple genome rearrangement and breakpoint phylogeny. Journal of Computational Biology 5, 555–570 (1998)CrossRefGoogle Scholar
  17. 17.
    Bader, D., Moret, B., Vawter, L.: Industrial applications of high-performance computing for phylogeny reconstruction. In: Siegel, H. (ed.) Proc. SPIE Commercial Applications for High-Performance Computing, Denver, CO, SPIE, vol. 4528, pp. 159–168 (2001)Google Scholar
  18. 18.
    Bader, D., Moret, B.M., Warnow, T., Wyman, S., Yan, M.: High-performance algorithm engineering for gene-order phylogenies. In: DIMACS Workshop on Whole Genome Comparison, Piscataway, NJ. Rutgers University (2001)Google Scholar
  19. 19.
    Moret, B., Bader, D., Warnow, T.: High-performance algorithm engineering for computational phylogenetics. J. Supercomputing 22, 99–111 (2002) (Special issue on the best papers from ICCS 2001)Google Scholar
  20. 20.
    Moret, B., Wyman, S., Bader, D., Warnow, T., Yan, M.: A new implementation and detailed study of breakpoint analysis. In: Proc. 6th Pacific Symp. Biocomputing (PSB 2001), Hawaii, pp. 583–594 (2001)Google Scholar
  21. 21.
    Moret, B.M., Bader, D., Warnow, T., Wyman, S., Yan, M.: GRAPPA: a high-performance computational tool for phylogeny reconstruction from gene-order data. In: Proc. Botany, Albuquerque, NM (2001)Google Scholar
  22. 22.
    Yan, M.: High Performance Algorithms for Phylogeny Reconstruction with Maximum Parsimony. PhD thesis, Electrical and Computer Engineering Department, University of New Mexico, Albuquerque, NM (2004)Google Scholar
  23. 23.
    Bader, D., Moret, B., Yan, M.: A linear-time algorithm for computing inversion distance between signed permutations with an experimental study. Journal of Computational Biology 8, 483–491 (2001)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • David A. Bader
    • 1
  1. 1.Electrical and Computer Engineering DepartmentUniversity of New MexicoAlbuquerqueUSA

Personalised recommendations