Download presentation
Presentation is loading. Please wait.
Published byAngel Stevens Modified over 9 years ago
1
Parallel Optimization Tools for High Performance Design of Integrated Circuits WISCAD VLSI Design Automation Lab http://wiscad.ece.wisc.edu Azadeh Davoodi Assistant Professor (joint work with my student Tai-Hsuan Wu) Department of Electrical and Computer Engineering Thanks to: Jeff Linderoth
2
Research: Optimality in IC Design Optimality: –required to assess the quality of existing design techniques –currently use heuristics to solve large-scale, non-linear and discrete optimization problems –have no idea how far might be from the optimal solution 2 Months Late Profit 0 36 912 15 -20% 0% 20% 40% 60% 80% 100% 120% Source: MIPS Technologies “ Optimality matters to shorten the design cycle of Integrated Circuits and meet stringent time-to-market requirements.” Azadeh Davoodi--WISCAD
3
Optimization for High Performance Design Discrete optimization problem Typically the relaxed continuous version is solved as a convex program and the result is discretized... 2n2n k1k1 k3k3 k2k2 K n-1 KnKn sLsL sHsH sLsL sHsH sLsL sHsH j djdj Tcons Azadeh Davoodi--WISCAD3
4
Examples of Optimization Complexity 4 Bench # of Variables Exhaustive Search Size Reduced Search Size Level in Search Tree c5315705> E+230E+1035.11 c7552822> E+230E+0826.93 c62881256> E+230E+1133.98 s1488307E+230E+1132.19 s1494309E+227E+0930.23 s9234740> E+230E+0718.77 s5378930> E+230E+0929.39 s385846950> E+230E+0947.94 s359327260> E+230E+1059.17 b2024484> E+230E+1268.34 Azadeh Davoodi--WISCAD
5
Using Master-Worker Framework of Condor for Grid Optimization C++ APIs which facilitate: –dynamic and opportunistic resource utilization –fault tolerant implementation via checkpointing and job migration Master T1T2T3T4 Unprocessed Tasks Finished Tasks Tasks in process Workers W1W2W3W4 T5T6T7T8T9 http://www.cs.wisc.edu/condor/mw 5Azadeh Davoodi--WISCAD
6
Master-Worker Implementation for High Performance IC Design Master: –imposes variable ordering in the branch-and-bound search tree –applies pruning of sub-optimal branches –check points after every 5000 completed tasks by workers Azadeh Davoodi--WISCAD6... 2n2n sLsL sHsH sLsL sHsH sLsL sHsH Worker: –each worker computes upper and lower bounds for K number of nodes in the search tree sequentially and communicates the bounds to the Master
7
Dealing with Communication Overhead 3 types of data exchange between the Master and each Worker: –scalar upper and lower bounds –circuit information (optimization problem description) –partial variable assignment Send above only once when the worker is allocated and reuse each worker for future tasks as much as possible Azadeh Davoodi--WISCAD7
8
MW Implementation in Condor MASTER SUBMIT FILE Universe = Scheduler Executable = master_DGS_socket Image_Size = 100000 +MemoryRequirements = 100 Input = in_master.socket Output = out_master.socket Error = out_worker.socket Log = _DGS.log Requirements = (Arch == "INTEL" && OPSYS=="LINUX") getenv = True Queue WORKER SUBMIT FILE Universe = Vanilla #Worker 1 Executable= exec0.$$(Opsys).$$(Arch).exe arguments = 0 8997 8997 144.92.240.35 Log = log_file Output = output_file.0 Error = error_file.0 Requirements = ( Arch=="INTEL“ && OPSYS=="LINUX") should_transfer_files = Yes when_to_transfer_output = ON_EXIT rank = Mips on_exit_remove = false Queue #Worker 2 … Azadeh Davoodi--WISCAD8 Resource Information: 179 CAE machines Intel/Linux If all CAE are in use, “Flocks” to the queue of Intel/Linux machines in CS
9
Results Azadeh Davoodi--WISCAD9 Bench# variablesRuntimeMax # Workers Average # Workers c531570536min118105.74 c6288125666min126114.94 c755282231min113101.97 s537893039min12995.57 s923474052min11995.8 s1585061748min139112.67 s35932726036min163108.15 s38584695062min133113.86 b184719152hours192189.82 b201569928hours187167.29 b222448438hours190173.73 On-an-average each variable had 4.5 discrete options to choose from.
10
Future Plans Install and work with personalized Condor Work with larger circuits and more number of sites in addition to CAE and CS Study possibilities for optimization on a grid of multi-core machines Better understand and work around the priority scheduling of jobs at Condor Azadeh Davoodi--WISCAD10
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.