Replicable parallel branch and bound search

Archibald, B., Maier, P., McCreesh, C., Stewart, R. and Trinder, P. (2018) Replicable parallel branch and bound search. Journal of Parallel and Distributed Computing, 113, pp. 92-114. (doi:10.1016/j.jpdc.2017.10.010)

[img]
Preview
Text
150159.pdf - Published Version
Available under License Creative Commons Attribution.

1MB

Abstract

Combinatorial branch and bound searches are a common technique for solving global optimisation and decision problems. Their performance often depends on good search order heuristics, refined over decades of algorithms research. Parallel search necessarily deviates from the sequential search order, sometimes dramatically and unpredictably, e.g. by distributing work at random. This can disrupt effective search order heuristics and lead to unexpected and highly variable parallel performance. The variability makes it hard to reason about the parallel performance of combinatorial searches. This paper presents a generic parallel branch and bound skeleton, implemented in Haskell, with replicable parallel performance. The skeleton aims to preserve the search order heuristic by distributing work in an ordered fashion, closely following the sequential search order. We demonstrate the generality of the approach by applying the skeleton to 40 instances of three combinatorial problems: Maximum Clique, 0/1 Knapsack and Travelling Salesperson. The overheads of our Haskell skeleton are reasonable: giving slowdown factors of between 1.9 and 6.2 compared with a class-leading, dedicated, and highly optimised C++ Maximum Clique solver. We demonstrate scaling up to 200 cores of a Beowulf cluster, achieving speedups of 100x for several Maximum Clique instances. We demonstrate low variance of parallel performance across all instances of the three combinatorial problems and at all scales up to 200 cores, with median Relative Standard Deviation (RSD) below 2%. Parallel solvers that do not follow the sequential search order exhibit far higher variance, with median RSD exceeding 85% for Knapsack.

Item Type:Articles
Status:Published
Refereed:Yes
Glasgow Author(s) Enlighten ID:Maier, Dr Patrick and ARCHIBALD, BLAIR and Mccreesh, Dr Ciaran and Trinder, Professor Phil
Authors: Archibald, B., Maier, P., McCreesh, C., Stewart, R., and Trinder, P.
College/School:College of Science and Engineering > School of Computing Science
Journal Name:Journal of Parallel and Distributed Computing
Publisher:Elsevier
ISSN:0743-7315
ISSN (Online):1096-0848
Published Online:02 November 2017
Copyright Holders:Copyright © 2017 The Authors
First Published:First published in Journal of Parallel and Distributed Computing 113: 92-114
Publisher Policy:Reproduced under a Creative Commons License

University Staff: Request a correction | Enlighten Editors: Update this record

Project CodeAward NoProject NamePrincipal InvestigatorFunder's NameFunder RefLead Dept
644791Adaptive Just-In-Time Parallelisation (AJITPar)Phil TrinderEngineering and Physical Sciences Research Council (EPSRC)EP/L000687/1COM - COMPUTING SCIENCE
608951Engineering and Physical Sciences Doctoral Training Grant 2012-16Mary Beth KneafseyEngineering and Physical Sciences Research Council (EPSRC)EP/K503058/1VPO VICE PRINCIPAL RESEARCH & ENTERPRISE
700861MaRIONet: Manycore Research Interaction and Opportunities NetworkJeremy SingerEngineering and Physical Sciences Research Council (EPSRC)EP/P006434/1COM - COMPUTING SCIENCE
720431Border Patrol: Improving Hardware Security through Type-Aware Systems DesignWim VanderbauwhedeEngineering and Physical Sciences Research Council (EPSRC)EP/N028201/1COM - COMPUTING SCIENCE
701101EPSRC 2015 DTPMary Beth KneafseyEngineering and Physical Sciences Research Council (EPSRC)EP/M508056/1RSI - RESEARCH STRATEGY & INNOVATION