Title: Gradual Relaxation Techniques with Applications to Behavioral Synthesis
1Gradual Relaxation Techniques with Applications
to Behavioral Synthesis
- Zhiru Zhang, Yiping Fan,
- Miodrag Potkonjak, Jason Cong
Department of Computer Science University of
California, Los Angeles
Partially supported by NSF under reward
CCR-0096383
2Outline
- Motivations objectives
- Gradual relaxation techniques
- Driver example Time-Constrained Scheduling
- Other driver examples
- Maximum Independent Set (MIS)
- Soft Real-Time Scheduling
- Experimental results
- Conclusions
3Motivations Objectives
- Motivations
- Many synthesis problems are computational
intractable - SAT, scheduling, graph coloring,
- Lack of systematical way to develop effective
heuristics - Objectives
- Development of a new general heuristic paradigm
- Gradual Relaxation
- Applications to a wide range of synthesis problems
4Gradual Relaxation Techniques
- Most constrained principle
- Minimal freedom reduction
- Negative thinking
- Compounding variables
- Simultaneous step consideration
- Calibration
- Probabilistic modeling
5Driver Example Time-Constrained Scheduling (1)
- Problem Time-constrained scheduling
- Given
- (1) A CDFG G(V, E)
- (2) A time constraint T
- Objective
- Schedule the operations of V into T cycles so
that the resource usage is minimized and all
precedence constraints in G are satisfied
6Driver Example Time-Constrained Scheduling (2)
- Related work
- M. C. McFarland, A. C. Parker, and R. Camposano,
Proc. of IEEE, 1990 - G. D. Micheli, 1994
- E. A. Lee and D. G. Messerschmitt, Proc. of IEEE,
1987, SDF scheduling - Classical approach Force-Directed Scheduling
- P. G. Paulin and J. P. Knight, DAC 1987
- Exploit schedule freedom (slack) to minimize the
hardware resources - Iterative approach schedule one operation per
iteration
7Driver Example Time-Constrained Scheduling (3)
- Determine ASAP ALAP Schedules
- Determine Time Frame of each operation
- Length of box Possible execution cycles
- Width of box Probability of assignment
- Uniform distribution, Area assigned 1
- Create Distribution Graphs
- Sum of probabilities of each Op type
- Indicates concurrency of similar Ops
- DG(i) ? Prob(Op, i)
lt
-
-
lt
-
-
ASAP
ALAP
8Most Constrained Principle
- Principle
- First resolve the most constrained components
- Minimally impact the difficulty of still
unresolved constraints - Related work
- General technique
- Bitner and Reigold, 1975 Brelaz, 1979, for graph
coloring - Pearl, 1984, intelligent search
- Slack based heuristics
- Davis, Tindell, and Burns, 1993 Gldwasser, 2003
- Force-directed scheduling
- Paulin and Knight, 1989
9Most Constrained Principle Time-Constrained
Scheduling
- Operation Op, at control step i, targeting
control step t - Force(Op, i, t) DG(i) x(Op, i, t)
- x(Op, i, t) the Prob change in i when Op is
scheduled to t - The self force of operation Op w.r.t control step
t - Self Force(Op, t) ?i?time frame Force(Op, i, t)
c
d
1/3
0 1 2 3 4
1 2 3 4
10Minimal Freedom Reduction / Negative Thinking (1)
- Minimal Freedom Reduction key of a good
heuristic - To avoid the greedy behavior of optimization
- Make a small gradual atomic decision
- Evaluate its individual impact before committing
to large decisions - Negative Thinking way to realize Minimal
Freedom Reduction - Traditional heuristics resolve a specific
component of the solution - Negative thinking determines what will not be
considered as a component of the solution
11Minimal Freedom Reduction / Negative Thinking (2)
- Similar ideas
- Improved Force-Directed scheduling
- W. F. J. Verhaegh, P. E. R. Lippens, E. H. L.
Aarts, J. H. M. Korst, J. L. van Meerbergen, and
A. van der Werf, IEEE Trans. on Computer-Aided
Design of Integrated Circuits and Systems, 1995 - Gradually shrink operations time fames
- Standard cell global routing
- J. Cong and Patrick H. Madden, ISPD, 1997
- Iterative deletion method from the complete
routing graph, delete edges one by one to get an
optimum routing tree
12Negative ThinkingTime-Constrained Scheduling
- Traditional FDS
- Select minimum force (Op, t), schedule Op to t
- Negative thinking FDS
- Select maximum force (Op, t), remove t from Ops
time frame
d
d
e
c
a
b
C-step 1
h
i lt
f
g
C-step 2
j-
C-step 3
1/2
k-
C-step 4
1/3
Time Frames
0 1 2 3 4
0 1 2 3 4
1 2 3 4
1 2 3 4
DG for Multiply
DG for Add, Sub, Comp
13Compounding Variables /Simultaneous Steps
Consideration (1)
- Compounding variables
- For the problems where variables can be assigned
only to binary values - Combine several variables together
- Simultaneous steps consideration
- Consider a small negative decision on a set of
variables simultaneously - Example a SAT instance
- Compound x1 and x2, there are 4 assignment
options - Evaluate their impacts to the maximum constraints
- Negative thinking remove one option, keep the
other three promising options
14Calibration
- Heuristics conduct the optimization
- Keep the options for important variables
- Discard the options for unimportant variables
- Example
- In resource-minimization scheduling
- Multipliers are much more expensive than adders
- Preserve maximum slacks for the multiplications
- Lower the priority to minimize required adders
d
C-step 1
h
lt
C-step 2
-
C-step 3
1/2
-
C-step 4
1/3
15Probabilistic Modeling
- Options of every variable are non-uniformly
distributed - Probabilistic modeling
- A non-uniform function of all constraints imposed
on a particular variable
16When is Gradual Relaxation Most Effective?
- Minimal freedom reduction / Negative thinking
- A large number of variables have significant
slack - Variables have complex interactions among a large
number of constraints - Compounding variables / simultaneous steps
consideration - Each variable has a small set of potential values
- Calibration
- The final solution only involves relatively few
types of resources - Probabilistic modeling
- Effective for large and complex instances
17Driver Example Maximum Independent Set (1)
- Problem Maximum Independent Set
- Given G (V, E)
- Objective find a maximum-size independent set V
? V, such that for u ? V and v ? V, (u, v) ? E. - Related work
- A popular generic NP-Complete problem
- M. R. Garey and D. S. Johnson, 1979
- Useful for efficient graph coloring
- D. Kirovski and M. Potkonjak, DAC 1998
18Driver Example Maximum Independent Set (2)
- Reasoning
- In practice, MIS size is much smaller than the
total graph size - A smaller decision
- To select a most constrained vertex not to be in
the MIS - Simple heuristic h1(v) Number of Neighbors
of v - Look-forward heuristic h2 (v) ? u?Neighbors
(v) (1 / Number of Neighbors of u)
19Driver Example Soft Real-Time Scheduling (1)
- Problem Soft real-time scheduling
- Given
- (1) A set of non-preemptive tasks ??1 ,?2 ,?n
and each task ?i(ai , di , ei) is characterized
by an arrival time ai, a deadline di and an
execution time ei - (2) A single processor P
- (3) A timing constraint T
- Objective
- Schedule a subset of tasks in ? on processor P
within the available time T so that the number of
tasks scheduled is maximized
20Driver Example Soft Real-Time Scheduling (2)
- Multimedia applications
- B. Kao and H. Garcia-Molina, 1994
- B. Adelberg, H. Garcia-Molina, and B. Kao, 1994
- Video and WWW servers
- M. Jones, D. Rosu, M.-C Rosu, 1997
- Formal definition
- P. DArgenio, J.-P Katoen, and E. Brinksma, 1999
- CAD and embedded systems
- D. Ziegenbein, J. Uerpmann, and R. Ernst, ICCAD
2000 - D. Verkest, P. Yang, C. Wong, and P. Marchal,
ICCAD 2001 - K. Richter, D. Ziegenbein, M. Jersak, and R.
Ernst, DAC 2002
21Driver Example Soft Real-Time Scheduling (3)
- Two phase heuristic
- Conflict minimization
- Gradually shrink the time frame for every task
- Legalization
- Probabilistic modeling
- Trapezoid shape Task Probability Distribution
22Driver Example Soft Real-Time Scheduling (4)
- Objective
- Minimize the number of conflicts
- Repeat until all tasks are locked
- Update distribution graph
- Compute forces for every tasks at the start and
cutoff time slots - Select the maximum force (T, t), remove time slot
t from task Ts time frame
Task.Prob
Time Slot
Task.Prob
Time Slot
23Experimental Results Maximum Independent Set
- Apply to DIMACS benchmark graphs for the Clique
problem challenge - Compare to a state-of-the-art iterative algorithm
- MIS algorithm used in D. Kirovski and M.
Potkonjak, DAC 1998 - Similar quality
- Much faster 50X using h1, 30X using h2
- Look-forward heuristic outperforms the simple
version
24Experimental ResultsTime-Constrained Scheduling
(1)
- Scheduling results comparison under critical-path
time constraint
25Experimental ResultsTime-Constrained Scheduling
(2)
- Scheduling results comparison under time
constraint with 1.5x critical path length
26Experimental ResultsSoft Real-Time Scheduling
- Soft real-time scheduling results
27Conclusions
- Development of gradual relaxation techniques
- Most constrained principle
- Minimal freedom reduction
- Negative thinking
- Compounding variables
- Simultaneous step consideration
- Calibration
- Probabilistic modeling
- Applications to
- Maximum independent set
- Time-constrained scheduling
- Soft real-time scheduling