parallel routing for fpgas based on the operator formulation yehdhih ould mohamed moctar &...

15
Parallel Routing for FPGAs based on the operator formulation Yehdhih Ould Mohamed Moctar & Philip Brisk Department of Computer Science & Engineering University of California Riverside Design Automation Conference (DAC 2014) San Francisco, CA, USA, June 1-5, 2014

Upload: bethanie-wells

Post on 17-Jan-2016

219 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Parallel Routing for FPGAs based on the operator formulation Yehdhih Ould Mohamed Moctar & Philip Brisk Department of Computer Science & Engineering University

Parallel Routing for FPGAs based on the operator formulation

Yehdhih Ould Mohamed Moctar & Philip Brisk

Department of Computer Science & EngineeringUniversity of California Riverside

Design Automation Conference (DAC 2014)San Francisco, CA, USA, June 1-5, 2014

Page 2: Parallel Routing for FPGAs based on the operator formulation Yehdhih Ould Mohamed Moctar & Philip Brisk Department of Computer Science & Engineering University

Runtime of circuit design is dominated by P&R

Maze Expansion consumes over 65% of Runtime

Large number of non-conflicting operations executed at each iteration

Motivation

2

Page 3: Parallel Routing for FPGAs based on the operator formulation Yehdhih Ould Mohamed Moctar & Philip Brisk Department of Computer Science & Engineering University

Application of Speculative Parallelism to FPGA routing

Use of non-blocking priority queues for the Maze Expansion

Implementation of the parallel router in VPR

Contribution

3

Page 4: Parallel Routing for FPGAs based on the operator formulation Yehdhih Ould Mohamed Moctar & Philip Brisk Department of Computer Science & Engineering University

Find a physical path for every signal in the circuit Disjoint-path problem; NP-complete

FPGA Routing

4

S

T2T1

Pathfinder: Negotiation-based algorithm

Page 5: Parallel Routing for FPGAs based on the operator formulation Yehdhih Ould Mohamed Moctar & Philip Brisk Department of Computer Science & Engineering University

Routing Resource Graph (RRG)

2-LUT

in1 in2

out

wire1

wire2

wire3 wire4source

sink

out

wire4

wire2

in2in1

wire1

wire3

RRG represents the routing resources of the FPGA

5

Page 6: Parallel Routing for FPGAs based on the operator formulation Yehdhih Ould Mohamed Moctar & Philip Brisk Department of Computer Science & Engineering University

6

Serial Pathfinder

We Parallelize the Maze Expansion

Page 7: Parallel Routing for FPGAs based on the operator formulation Yehdhih Ould Mohamed Moctar & Philip Brisk Department of Computer Science & Engineering University

7

Maze Expansion Operation

PQ contains nodes that have not been fully explored

Page 8: Parallel Routing for FPGAs based on the operator formulation Yehdhih Ould Mohamed Moctar & Philip Brisk Department of Computer Science & Engineering University

Galois

8

Parallel program = Operator + Schedule + Parallel data structure

Software framework for parallelizing irregular algorithms

Employ speculation based approach to parallelism

Operator formulation of algorithms

Page 9: Parallel Routing for FPGAs based on the operator formulation Yehdhih Ould Mohamed Moctar & Philip Brisk Department of Computer Science & Engineering University

Operator formulation of algorithms

Operator Computation at active

element Activity: application of

operator to active element

Amorphous data-parallelism Multiple active nodes can

be processed in parallel subject to neighborhood and ordering constraints

: active node

: neighborhood

Parallel program = Operator + Schedule + Parallel data structure9

Page 10: Parallel Routing for FPGAs based on the operator formulation Yehdhih Ould Mohamed Moctar & Philip Brisk Department of Computer Science & Engineering University

Maze Expansion in Galois

Threads speculatively explore the node of RRG Each Thread has a local Priority Queue 10

Page 11: Parallel Routing for FPGAs based on the operator formulation Yehdhih Ould Mohamed Moctar & Philip Brisk Department of Computer Science & Engineering University

We selected 10 of the largest IWLS benchmarks. We target 65nm CMOS (BPTM)

Benchmarks

11

Page 12: Parallel Routing for FPGAs based on the operator formulation Yehdhih Ould Mohamed Moctar & Philip Brisk Department of Computer Science & Engineering University

Maze Router Speedup Achieved up-to 5.5x speedup (Using 8 threads)

12

Steady Scalability up to 8 threads

Page 13: Parallel Routing for FPGAs based on the operator formulation Yehdhih Ould Mohamed Moctar & Philip Brisk Department of Computer Science & Engineering University

Maze Router – Configuration Options (Normalized Speedup) STM PQ + Iteration Coalescing achieved 5.46x speedup

Page 14: Parallel Routing for FPGAs based on the operator formulation Yehdhih Ould Mohamed Moctar & Philip Brisk Department of Computer Science & Engineering University

Maze Router - Critical Path Delay (CPD)

# of Threads has no impact on Critical Path Delay (CPD) Parallel implementation achieved better CPD than VPR

Page 15: Parallel Routing for FPGAs based on the operator formulation Yehdhih Ould Mohamed Moctar & Philip Brisk Department of Computer Science & Engineering University

Conclusion & Future Work Speculative parallelism can be good choice for parallel CAD algorithms

15

Achieved Near-linear speedup (up to 5.5x) over Serial FPGA Router.

Future work includes applying this speculative model to parallelize Placement.