Accounting for Recent Changes of Gain in Dealing with Ties in Iterative Methods for Circuit Partitioning
Algorithm 1
Pseudocode of the Fiduccia-Mattheyses iterative method. Note that the details of the above module selection and module update for each gain bucket management are given in Algorithms 2 and 3.
, randomly chosen subsets such that and ;
repeat
compute gain for each module ;
; // for maintaining locked modules
for to
if then
choose module such that is maximal; // module selection
else if then
choose module such that is maximal; // module selection
else
choose module such that is maximal; // module selection
;
for each module adjacent to module
adjust gain if it is affected by moving module ; // module update
choose to maximize ;
move all modules in the subset to their opposite sides; // updating ,