Branch-And-Bound with Peer-To-Peer for Large-Scale Grids Alexandre Di Costanzo
Total Page:16
File Type:pdf, Size:1020Kb
Branch-and-Bound with Peer-to-Peer for Large-Scale Grids Alexandre Di Costanzo To cite this version: Alexandre Di Costanzo. Branch-and-Bound with Peer-to-Peer for Large-Scale Grids. Networking and Internet Architecture [cs.NI]. Université Nice Sophia Antipolis, 2007. English. tel-00221450 HAL Id: tel-00221450 https://tel.archives-ouvertes.fr/tel-00221450 Submitted on 28 Jan 2008 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. THÈSE DE DOCTORAT École Doctorale « Sciences et Technologies de l’Information et de la Communication » de Nice - Sophia Antipolis Discipline Informatique UNIVERSITÉ DE NICE - SOPHIA ANTIPOLIS FACULTÉ DES SCIENCES BRANCH-AND-BOUND WITH PEER-TO-PEER FOR LARGE-SCALE GRIDS par Alexandre DI COSTANZO Thèse dirigée par Denis CAROMEL au sein de l’équipe OASIS, équipe commune de l’I.N.R.I.A. Sophia Antipolis, du C.N.R.S. et du laboratoire I3S soutenue le 12 octobre 2007 Jury: Président du Jury Franck CAPPELLO Directeur de recherche, LRI-INRIA Futurs Orsay Rapporteurs Raphaël COUTURIER Professeur, IUT de Belfort Montbéliard Dennis GANNON Professeur, Indiana University El-Ghazali TALBI Professeur, LIFL-INRIA Futurs Lille Examinateur Manuel CLERGUE Maître de Conférences, I3S UNSA-CNRS Invité industriel François LABURTHE Directeur R&D, Amadeus Directeur de thèse Denis CAROMEL Professeur, Université de Nice Sophia Antipolis ii iii To Magali, to my family, – Alexandre iv Acknowledgments A PhD thesis is a great experience for working on very stimulating topics, challeng- ing problems, and for me perhaps the most important to meet and collaborate with extraordinary people. This remarkable research environment wasn’t possible without the determination of Isabelle Attali and Denis Caromel who both created the best con- ditions for my PhD. Unfortunately, Isabelle tragically died with her two young sons in the tsunami, Sri Lanka, December 2004. I thank you for the great opportunities you and Denis gave to me. First and foremost, I thank my advisor, Denis Caromel for accepting me in the OASIS project. I am grateful to him for letting me pursue my research interests with sufficient freedom, while being there to guide me all the same. I thank also Françoise Baude for advices she gave me along my thesis. My greetings also go to Raphaël Couturier, Dennis Gannon, and El-Ghazali Talbi who honored me by accepting to review this thesis. I am also very grateful to the other members of the jury, Franck Cappello, Manuel Clergue, and François Laburthe. I would like again to greatly thank Dennis Gannon for reviewing this thesis and for accepting to be a member of the jury, it is an immense honor for me. Of course, I am very thankful to him for his kindness when he invited me at Indiana University to work with his team. During this visit, I met great people and learned a lot. My sojourn gave me an extraordinary motivation to accomplish my thesis. I am still thinking a lot about this experience. I am grateful, too, to the legions of OASIS people who are not only colleague but friends. In a random order, I thank Laurent Baduel, Arnaud & Virginie Contes, Chris- tian G. Delbé, Matthieu Morel, Ludovic Henrio, Fabrice Huet, Cédric Dalmasso, Clé- ment Mathieu, and others. A special thanks to all OASIS’s Chilean people Tomas Barros, Marcela Rivera, Javier Bustos, and specially Mario Leyton and Antonio Cansado who reviewed some parts of this thesis. Also I am grateful to Ian Stokes-Rees for his incredible review of my thesis. I say good luck to the next: Guillaume, Mario, Antonio, Paul (my ping-pong profes- sor), and Marcela. Without forgetting assistants who during years help me to solve all administrative annoyances. Thanks to Claire Senica, Patricia Lachaume, Christiane Gallerie, and Pa- tricia Maleyran. During my PhD my happiness was to meet many people some of the them are now v vi Chapter 0. Acknowledgments more than friends. A special acknowledgment goes to Guillaume Chazarain – alias the Geek – my office- mate. I learned a lot with your research/technical discussion and thanks for having taking care of my desktop computer. And good luck because you are the next PhD. I keep the hope than one day you leave the Linux side for the Mac side. I would like to thank Vincent Cavé who I have a debt. Thank you Vincent, to have taken care of the n-queens while I was staying in the USA. Many thanks to Igor Rosenberg for his unconditional friendship, his support, and to remember me to focus on finishing my PhD. This thesis could not have been written without Magali’s help and support during these last months. For that I am deeply grateful to her. Last but certainly not the least, I owe a great deal to my family for providing me with emotional support during my PhD. My parents have been very supportive; I must acknowledge them for their help and support. Thanks, folks! Contents Acknowledgments v List of Figures xi List of Tables xii I Thesis 1 1 Introduction 3 1.1 Problematics . 3 1.2 Objectives and contributions . 4 1.3 Overview . 5 2 Principles and Positioning 7 2.1 Grid: Principles and Positioning . 7 2.1.1 Principles of Grid computing . 7 2.1.2 Positioning with respect to general Grid architecture . 9 2.2 Peer-to-Peer: Principles and Positioning . 12 2.2.1 Principles of peer-to-peer systems . 12 2.2.2 Comparing peer-to-peer and Grid computing . 17 2.2.3 Overview of existing peer-to-peer systems . 18 2.2.3.1 Global computing platforms . 19 2.2.3.2 Peer-to-Peer platforms . 20 2.2.3.3 Synthesis . 21 2.2.4 Requirements for computational peer-to-peer infrastructure . 22 2.3 Branch-and-Bound: Principles and Positioning . 25 2.3.1 Principles of branch-and-bound algorithm . 25 2.3.1.1 Solving the traveling salesman problem with branch-and- bound . 26 2.3.1.2 Parallel branch-and-bound . 28 2.3.2 Overview of existing branch-and-bound framework for Grids . 31 2.3.2.1 Branch-and-bound . 32 2.3.2.2 Skeletons . 33 2.3.2.3 Divide-and-conquer . 33 2.3.3 Requirements for Grid branch-and-bound . 34 2.4 Context: ProActive Grid middleware . 36 2.4.1 Active objects model . 37 2.4.2 The ProActive library: principles, architecture, and usages . 37 2.4.2.1 Implementation language . 37 vii viii CONTENTS 2.4.2.2 Implementation techniques . 38 2.4.2.3 Communication by messages . 39 2.4.2.4 Features of the library . 40 2.5 Conclusion . 41 3 Desktop Peer-to-Peer 43 3.1 Motivations and objectives . 43 3.2 Design and architecture . 45 3.2.1 First contact: bootstrapping . 45 3.2.2 Discovering acquaintances . 45 3.2.3 Asking resources . 47 3.2.4 Peer and node failures . 48 3.3 Integration within ProActive . 49 3.4 Long running experiment . 51 3.4.1 The n-queens problem . 51 3.4.2 Permanent desktop Grid: INRIA Sophia P2P Desktop Grid . 52 3.4.3 Long running experiment . 53 3.5 Application to numerical hydrodynamic simulation . 56 3.5.1 Motivations and context . 56 3.5.2 River modeling using finite element method . 57 3.5.3 The TELEMAC system parallel version with ProActive . 59 3.5.4 Experiments . 62 3.5.5 Analysis . 62 3.6 Conclusion . 63 4 Branch-and-Bound: A Communicating Framework 65 4.1 Motivations and objectives . 65 4.2 Design and architecture . 67 4.2.1 Entities and their roles . 67 4.2.2 The public library . 69 4.2.3 The task life-cycle . 71 4.2.4 Search tree strategies . 71 4.2.5 Communications . 72 4.2.6 Load-balancing . 73 4.2.7 Exceptions and fault-tolerance . 74 4.3 Implementation . 75 4.4 Grid’BnB user code example: solving flow-shop . 75 4.4.1 The flow-shop problem . 75 4.4.2 Solving flow-shop with Grid’BnB . 75 4.4.2.1 The algorithm . 75 4.4.2.2 The root task . 76 4.5 Experiments with flow-shop . 78 4.5.1 Single cluster experiments . 78 4.5.2 Large-scale experiments . 80 4.6 Conclusion . 83 CONTENTS ix 5 Mixing Clusters and Desktop Grid 87 5.1 Motivations and objectives . 87 5.2 Design and architecture . 89 5.2.1 Sharing clusters with the peer-to-peer infrastructure . 89 5.2.2 Crossing firewalls . 89 5.2.3 Managing dynamic group of workers with Grid’BnB . 89 5.3 Large-scale experiments: mixing desktops and clusters . 90 5.3.1 Environment of experiments . 91 5.3.2 Experiments with n-queens . 91 5.3.3 Experiments with flow-shop . 92 5.4 Peer-to-Peer Grid experiments . 93 5.4.1 Experiment design . 94 5.4.2 Experiments results . 94 5.5 Conclusion . 96 6 Advanced Features and Deployment 103 6.1 Context: ProActive deployment framework . 103 6.1.1 Deployment model . 104 6.1.2 Retrieval of resources . 104 6.1.2.1 Creation-based deployment . 105 6.1.2.2 Acquisition-based deployment .