Table of Contents
Fetching ...

A common parallel framework for LLP combinatorial problems

David Ribeiro Alves, Vijay K. Garg

Abstract

Traditional lock-free parallel algorithms for combinatorial optimization problems, such as shortest paths, stable matching, and job scheduling require programmers to write problem-specific routines and synchronization code. We propose a general-purpose lock-free runtime, LLP-FW that can solve all combinatorial optimization problems that can be formulated as a Lattice-Linear Predicate by advancing all forbidden local states in parallel until a solution emerges. The only problem-specific code is a definition of the forbiddenness check and a definition of the advancement. We show that LLP-FW can solve several different combinatorial optimization problems, such as Single Source Shortest Paths (SSSP), Breadth-First Search (BFS), Stable Marriage, Job Scheduling, Transitive Closure, Parallel Reduction, and 0-1 Knapsack. We compare LLP-FW against hand-tuned, custom solutions for these seven problems and show that it compares favorably in the majority of cases.

A common parallel framework for LLP combinatorial problems

Abstract

Traditional lock-free parallel algorithms for combinatorial optimization problems, such as shortest paths, stable matching, and job scheduling require programmers to write problem-specific routines and synchronization code. We propose a general-purpose lock-free runtime, LLP-FW that can solve all combinatorial optimization problems that can be formulated as a Lattice-Linear Predicate by advancing all forbidden local states in parallel until a solution emerges. The only problem-specific code is a definition of the forbiddenness check and a definition of the advancement. We show that LLP-FW can solve several different combinatorial optimization problems, such as Single Source Shortest Paths (SSSP), Breadth-First Search (BFS), Stable Marriage, Job Scheduling, Transitive Closure, Parallel Reduction, and 0-1 Knapsack. We compare LLP-FW against hand-tuned, custom solutions for these seven problems and show that it compares favorably in the majority of cases.
Paper Structure (79 sections, 1 theorem, 12 equations, 18 figures, 14 tables, 1 algorithm)

This paper contains 79 sections, 1 theorem, 12 equations, 18 figures, 14 tables, 1 algorithm.

Key Result

Lemma 1

Let $B$ be any boolean predicate on a lattice ${L}$ of vectors.

Figures (18)

  • Figure 1: Poset on 5 events.
  • Figure 2: Distributive lattice of 11 consistent global states.
  • Figure 4: An undirected graph with 4 nodes.
  • Figure 5: Lattice of global states with all state transitions through all possible edge relaxations for the example graph.
  • Figure 6: Chain graph demonstrating inefficient state selection
  • ...and 13 more figures

Theorems & Definitions (7)

  • Definition 1: Forbidden State chase1998detection
  • Definition 2: Lattice-Linear Predicate chase1998detection
  • Definition 3: $\alpha$-forbidden
  • Lemma 1: Basic Lattice-Linearity Garg.2020chase1998detection
  • Claim 1: Complexity Impact of State Selection
  • Claim 2: Incorrectness of Non-Atomic Updates
  • proof : Sketch of Problematic Execution