Abstract
We discuss the implementation and evaluation of move-based hypergraph partitioning heuristics in the context of VLSI design applications. Our first contribution is a detailed software architecture, consisting of seven reusable components, that allows flexible, efficient and accurate assessment of the practical implications of new move-based algorithms and partitioning formulations. Our second contribution is an assessment of the modern context for hypergraph partitioning research for VLSI design applications. In particular, we discuss the current level of sophistication in implementation know-how and experimental evaluation, and we note how requirements for real-world partitioners — if used as motivation for research — should affect the evaluation of prospective contributions. We then use two “implicit decisions” in the implementation of the Fiduccia-Mattheyses [20] heuristic to illustrate the difficulty of achieving meaningful experimental evaluation of new algorithmic ideas.
This research was supported by a grant from Cadence Design Systems, Inc.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
C. J. Alpert, “Partitioning Benchmarks for VLSI CAD Community”, Web page, http://vlsicad.cs.ucla.edu/~cheese/benchmarks.html
C. J. Alpert, “The ISPD-98 Circuit Benchmark Suite”, Proc. ACM/IEEE International Symposium on Physical Design, April 98, pp. 80–85. See errata at http://vlsicad.cs.ucla.edu/~cheese/errata.html
C. J. Alpert and L. W. Hagen and A. B. Kahng, “A Hybrid Multilevel/Genetic Approach for Circuit Partitioning”, Proc. IEEE Asia Pacific Conference on Circuits and Systems, 1996, pp. 298–301.
C. J. Alpert, J.-H. Huang and A. B. Kahng, “Multilevel Circuit Partitioning”, ACM/IEEE Design Automation Conference, pp. 530–533. http://vlsicad.cs.ucla.edu/papers/conference/c68.ps
C. J. Alpert and A. B. Kahng, “Recent Directions in Netlist Partitioning: A Survey”, Integration, 19(1995) 1–81.
R. S. Barr, B. L. Golden, J. P. Kelly, M. G. C. Resende and W. R. Stewart, “Designing and Reporting on Computational Experiments with Heuristic Methods”, technical report (extended version of J. Heuristics paper), June 27, 1995.
F. Brglez, “ACM/SIGDA Design Automation Benchmarks: Catalyst or Anathema?”, IEEE Design and Test, 10(3) (1993), pp. 87–91.
F. Brglez, “Design of Experiments to Evaluate CAD Algorithms: Which Improvements Are Due to Improved Heuristic and Which are Merely Due to Chance?”, technical report CBL-04-Brglez, NCSU Collaborative Benchmarking Laboratory, April 1998.
T. Bui, S. Chaudhuri, T. Leighton and M. Sipser, “Graph Bisection Algorithms with Good Average Behavior”, Combinatorica 7(2), 1987, pp. 171–191.
A. E. Caldwell, A. B. Kahng and I. L. Markov, manuscript, 1998.
P. K. Chan and M. D. F. Schlag and J. Y. Zien, “Spectral K-Way Ratio-Cut Partitioning and Clustering”, IEEE Transactions on Computer-Aided Design, vol. 13(8), pp. 1088–1096.
J. Cong, H. P. Li, S. K. Lim, T. Shibuya and D. Xu, “Large Scale Circuit Partitioning with Loose/Stable Net Removal and Signal Flow Based Clustering”, Proc. IEEE International Conference on Computer-Aided Design, 1997, pp. 441–446.
J. Cong and S. K. Lim, “Multiway Partitioning with Pairwise Movement”, Proc. IEEE/ACM International Conference on Computer-Aided Design, 1998, to appear.
J. Darnauer and W. Dai, “A Method for Generating Random Circuits and Its Applications to Routability Measurement”, Proc. ACM/SIGDA International Symposium on FPGAs, 1996, pp. 66–72.
A. Dasdan and C. Aykanat, “Two Novel Multiway Circuit Partitioning Algorithms Using Relaxed Locking”, IEEE Transactions on Computer-Aided Design 16(2) (1997), pp. 169–178.
W. Deng, personal communication, July 1998.
A. E. Dunlop and B. W. Kernighan, “A Procedure for Placement of Standard Cell VLSI Circuits”, IEEE Transactions on Computer-Aided Design 4(1) (1985), pp. 92–98
S. Dutt and W. Deng, “VLSI Circuit Partitioning by Cluster-Removal Using Iterative Improvement Techniques”, Proc. IEEE International Conference on Computer-Aided Design, 1996, pp. 194–200
S. Dutt and H. Theny, “Partitioning Using Second-Order Information and Stochastic Gain Function”, Proc. IEEE/ACM International Symposium on Physical Design, 1998, pp. 112–117
C. M. Fiduccia and R. M. Mattheyses, “A Linear Time Heuristic for Improving Network Partitions”, Proc. ACM/IEEE Design Automation Conference, 1982, pp. 175–181.
M. R. Garey and D. S. Johnson, “Computers and Intractability, a Guide to the Theory of NP-completeness”, W. H. Freeman and Company: New York, 1979, pp. 223
M. Ghose, M. Zubair and C. E. Grosch, “Parallel Partitioning of Sparse Matrices”, Computer Systems Science & Engineering (1995) 1, pp. 33–40.
D. Ghosh, “Synthesis of Equivalence Class Circuit Mutants and Applications to Benchmarking”, summary of presentation at DAC-98 Ph.D. Forum, June 1998.
M. K. Goldberg and M. Burstein, “Heuristic Improvement Technique for Bisection of VLSI Networks”, IEEE Transactions on Computer-Aided Design, 1983, pp. 122–125.
S. Hauck and G. Borriello, “An Evaluation of Bipartitioning Techniques”, IEEE Transactions on Computer-Aided Design 16(8) (1997), pp. 849–866.
L.W. Hagen, D. J. Huang and A. B. Kahng, “On Implementation Choices for Iterative Improvement Partitioning Methods”, Proc. European Design Automation Conference, 1995, pp. 144–149.
B. Hendrickson and R. Leland, “A Multilevel Algorithm for Partitioning Graphs”, draft, 1995.
B. Hendrickson and T. G. Kolda, “Partitioning Rectangular and Structurally Nonsymmetric Sparse Matrices for Parallel Processing”, manuscript, 1998 (extended version of PARA98 workshop proceedings paper).
D. J. Huang and A. B. Kahng, “Partitioning-Based Standard Cell Global Placement with an Exact Objective”, Proc. ACM/IEEE International Symposium on Physical Design, 1997, pp. 18–25. http://vlsicad.cs.ucla.edu/papers/conference/c66.ps
M. Hutton, J. P. Grossman, J. Rose and D. Corneil, “Characterization and Parameterized Random Generation of Digital Circuits”, In Proc. IEEE/ACM Design Automation Conference, 1996, pp. 94–99.
A. B. Kahng, “Futures for Partitioning in Physical design”, Proc. IEEE/ACMInternational Symposium on Physical Design, April 1998, pp. 190–193. http://vlsicad.cs.ucla.edu/papers/conference/c77.ps
G. Karypis and V. Kumar, “Analysis of Multilevel Graph Partitioning”, draft, 1995
G. Karypis and V. Kumar, “Multilevel k-way Partitioning Scheme For Irregular Graphs”, Technical Report 95-064, University of Minnesota, Computer Science Department.
G. Karypis, R. Aggarwal, V. Kumar, and S. Shekhar, “Multilevel Hypergraph Partitioning: Applications in VLSI Design”, Proc. ACM/IEEE Design Automation Conference, 1997, pp. 526–529. Additional publications and benchmark results for hMetis-1.5 are avilable at http://www-users.cs.umn.edu/~karypis/metis/hmetis/main.html
G. Karypis and V. Kumar, “Multilevel Algorithms for Multi-Constraint Graph Partitioning”, Technical Report 98-019, University of Minnesota, Department of Computer Science.
B. W. Kernighan and S. Lin, “An Efficient Heuristic Procedure for Partitioning Graphs”, Bell System Tech. Journal 49 (1970), pp. 291–307.
C. Kring and A. R. Newton, “A Cell-Replicating Approach to Mincut-Based Circuit Partitioning”, Proc. IEEE/ACM International Conference on Computer-Aided Design, 1991, pp. 2–5.
B. Krishnamurthy, “An Improved Min-cut Algorithm for Partitioning VLSI Networks”, IEEE Transactions on Computers, vol. C-33, May 1984, pp. 438–446.
B. Landman and R. Russo, “On a Pin Versus Block Relationship for Partitioning of Logic Graphs”, IEEE Transactions on Computers C-20(12) (1971), pp. 1469–1479.
L. T. Liu, M. T. Kuo, S. C. Huang and C. K. Cheng, “A Gradient Method on the Initial Partition of Fiduccia-Mattheyses Algorithm”, Proc. IEEE International Conference on Computer-Aided Design, 1995, pp. 229–234.
T. Lengauer, Combinatorial Algorithms for Integrated Circuit Layout, Wiley-Teubner, 1990.
L. Sanchis, “Multiple-way network partitioning with different cost functions”, IEEE Transactions on Computers, Dec. 1993, vol.42, (no.12):1500–4.
P. R. Suaris and G. Kedem, “Quadrisection: A New Approach to Standard Cell Layout”, Proc. IEEE/ACM International Conference on Computer-Aided Design, 1987, pp. 474–477.
W. Sun and C. Sechen, “Efficient and Effective Placements for Very Large Circuits”, Proc. IEEE/ACM International Conference on Computer-Aided Design, 1993, pp. 170–177.
Y. C. Wei and C. K. Cheng, “Towards Efficient Design by Ratio-cut Partitioning”, Proc. IEEE International Conference on Computer-Aided Design, 1989, pp. 298–301.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1999 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Caldwell, A.E., Kahng, A.B., Markov, I.L. (1999). Design and Implementation of the Fiduccia-Mattheyses Heuristic for VLSI Netlist Partitioning. In: Goodrich, M.T., McGeoch, C.C. (eds) Algorithm Engineering and Experimentation. ALENEX 1999. Lecture Notes in Computer Science, vol 1619. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-48518-X_11
Download citation
DOI: https://doi.org/10.1007/3-540-48518-X_11
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-66227-3
Online ISBN: 978-3-540-48518-6
eBook Packages: Springer Book Archive