50 likes | 183 Views
ICCAD-2002 Open Source Panel Andrew B. Kahng UC San Diego CSE & ECE Depts. Igor L. Markov Univ. of Michigan EECS Dept. abk@ucsd.edu http://vlsicad.ucsd.edu/~abk/TALKS/. Experience With Open Source Project. Project: UCLA Physical Design Tools (MLPart, Capo, …)
E N D
ICCAD-2002 Open Source PanelAndrew B. KahngUC San Diego CSE & ECE Depts.Igor L. MarkovUniv. of Michigan EECS Dept.abk@ucsd.eduhttp://vlsicad.ucsd.edu/~abk/TALKS/
Experience With Open Source Project • Project: UCLA Physical Design Tools (MLPart, Capo, …) • Open-source partitioning and placement tools – MIT license • LEF/DEF interface, runs on Linux and Solaris (+ Windows) • Students: Andrew Caldwell (Simplex/Cadence), Igor Markov (Univ. of Michigan) + Saurabh Adya (Univ. of Michigan) • Much effort in installation scripts, revision control, code clarity • Ongoing maintenance, improvements: Capo8.5 (2002) >> Capo8.0 (2000) • Academia: CMU, GIT, UCLA, UCSD, UCSB, UCSC, UMinn, UMich, … • Industry: IBM, Intel, Cadence, Philips, Synplicity, Ammocore, … • Available in MARCO GSRC Bookshelf, openeda.org, etc. • GSRC Bookshelf: http://gigascale.org/bookshelf/ • Repository for CAD-IP reuse • One of three initiatives to close Design Technology Productivity Gap
Experience With Open Source Project • Uses in Academia • Work on competing placers (20th C: TimberWolf; 21st C: Capo) • UCLA, ICCAD-2000; Binghamton, DAC-2001, etc. • Improvement by pre- or post-processing (UCSB, ICCAD-2002) • Embed into larger design flows (Michigan, ISPD-2002) • Evaluate home-grown sub-solvers (plug in place of Capo components) • Uses in Industry • Use source code for prototyping commercial tools (e.g., Cadence) • Benchmark internal tools (e.g., Intel, IBM) • Educational uses (IBM, Intel, Synplicity) • “Plan B” uses (IBM, Synplicity) • Component-based plug-and-play (Intel) • Try novel PD flows, e.g., use Capo before synthesis
Problems and Frustrations • Nothing unexpected • Very non-trivial software expertise required • OS, compilers, C++, software engineering • Serious level of commitment required • Students graduate ! • Non-trivial effort to support platforms, configurations • E.g., Magma was using an older C++ compiler we could not support • Compilers are changing all the time • Unfair comparisons and claims • Make simple preprocessor claim new tool with better results • Tune competing software to specially-made benchmarks • Tune benchmarks to competing software and avoid standard test cases • Very few others are open-sourcing: slow culture change
How We Overcame Problems/Frustrations • Perseverance • Leveraging the open-source nature of the project • We know it is a win • Better software is developed • Easier to get funding • Useful in teaching • Motivates graduate students • Keeps our research moving (no artificial barrier to competition) • DAC-2000 Capo paper is the most-cited VLSI CAD paper from 2000, according to Citeseer • “Problems and Frustrations” are NOT an issue: Open Source Is The Right Thing To Do