A Distributed Divide and Conquer Skeleton

  • Juan R. González
  • Coromoto León
  • Casiano Rodríguez
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3732)


The MaLLBa library provides skeletons to solve combinatorial optimization problems. Its main objective is to simplify the implementation of algorithms based on some commonly used techniques such as Branch and Bound, Dynamic Programming and Divide and Conquer.

This work is focused on the MaLLBa::DnC skeleton, which solves problems that fit in the Divide and Conquer paradigm. The user has to provide functions particularized to the problem he wants to solve. Given that functions the skeleton encapsulates all remaining work and allows the problem to be solved either in a sequential or parallel way.

In this work we will present a new mpi asynchronous peer-processor implementation of the MaLLBa::DnC skeleton where all processors are peers and behave the same way (except during the initialization phase) and where decisions are taken based only on local information. Results on a Linux cluster of PC for matrix and huge integer multiplication are presented.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Alba, E., Almeida, F., Blesa, M., Cabeza, J., Cotta, C., Díaz, M., Dorta, I., Gabarró, J., León, C., Luna, J., Moreno, L., Petit, J., Rojas, A., Xhafa, F.: MaLLBa: A Library of skeletons for combinatorial optimisation. In: Monien, B., Feldmann, R.L. (eds.) Euro-Par 2002. LNCS, vol. 2400, pp. 927–932. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  2. 2.
    Anvik, J., MacDonald, S., Szafron, D., Schaeffer, J., Bromling, S., Tan, K.: Generating Parallel Programs from the Wavefront Design Pattern. In: Proceedings of the 7th International Workshop on High-Level Parallel Programming Models and Supportive Environments (HIPS 2002), Fort Lauderdale, Florida (2002)Google Scholar
  3. 3.
    Dorta, I., León, C., Rodríguez, C., Rojas, A.: Parallel Skeletons for Divide-and-Conquer and Branch-and-Bound Techniques. In: Proceedings of the 11th Euromicro Conference on Parallel, Distributed and Network Based Processing, Geneva, Italy, pp. 292–298 (2003)Google Scholar
  4. 4.
    Kielmann, T., Nieuwpoort, R., Bal, H.: Cilk-5.3 Reference Manual. Supercomputing Technologies Group (2000)Google Scholar
  5. 5.
    Kielmann, T., Nieuwpoort, R., Bal, H.: Satin: Efficient Parallel Divide-and-Conquer in Java. In: Bode, A., Ludwig, T., Karl, W.C., Wismüller, R. (eds.) Euro-Par 2000. LNCS, vol. 1900, pp. 690–699. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  6. 6.
    Kuchen, H.: A Skeleton Library. In: Monien, B., Feldmann, R.L. (eds.) Euro-Par 2002. LNCS, vol. 2400, pp. 620–629. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  7. 7.
    Snir, M., Otto, S.W., Huss-Lederman, S., Walker, D.W., Dongarra, J.J.: MPI: The Complete Reference. The MIT Press, Cambridge (1996)Google Scholar
  8. 8.
    OpenMP Architecture Review Board. OpenMP C and C++ Application Program Interface. Version 1.0 (1998), http://www.openmp.org

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Juan R. González
    • 1
  • Coromoto León
    • 1
  • Casiano Rodríguez
    • 1
  1. 1.Dpto. Estadítica, I.O. y ComputaciónUniversidad de La LagunaLa LagunaSpain

Personalised recommendations