The Fast Optimal Voltage Partitioning Algorithm For Peak Power Density Minimization Jia Wang, Shiyan Hu Department of Electrical and Computer Engineering.

Slides:



Advertisements
Similar presentations
MATH 224 – Discrete Mathematics
Advertisements

An Array-Based Algorithm for Simultaneous Multidimensional Aggregates By Yihong Zhao, Prasad M. Desphande and Jeffrey F. Naughton Presented by Kia Hall.
CSE Lecture 3 – Algorithms I
Greedy Algorithms Be greedy! always make the choice that looks best at the moment. Local optimization. Not always yielding a globally optimal solution.
Preference Elicitation Partial-revelation VCG mechanism for Combinatorial Auctions and Eliciting Non-price Preferences in Combinatorial Auctions.
Introduction to Algorithms
Advanced Topics in Algorithms and Data Structures Lecture 7.1, page 1 An overview of lecture 7 An optimal parallel algorithm for the 2D convex hull problem,
Maximal Lifetime Scheduling in Sensor Surveillance Networks Hai Liu 1, Pengjun Wan 2, Chih-Wei Yi 2, Siaohua Jia 1, Sam Makki 3 and Niki Pissionou 4 Dept.
Cache Placement in Sensor Networks Under Update Cost Constraint Bin Tang, Samir Das and Himanshu Gupta Department of Computer Science Stony Brook University.
Jan 6-10th, 2007VLSI Design A Reduced Complexity Algorithm for Minimizing N-Detect Tests Kalyana R. Kantipudi Vishwani D. Agrawal Department of Electrical.
Chapter 11: Limitations of Algorithmic Power
CSC 2300 Data Structures & Algorithms January 30, 2007 Chapter 2. Algorithm Analysis.
Branch and Bound Algorithm for Solving Integer Linear Programming
Main Index Contents 11 Main Index Contents Selection Sort Selection SortSelection Sort Selection Sort (3 slides) Selection Sort Alg. Selection Sort Alg.Selection.
Chapter 11 Limitations of Algorithm Power Copyright © 2007 Pearson Addison-Wesley. All rights reserved.
Analysis of Algorithms 7/2/2015CS202 - Fundamentals of Computer Science II1.
A Resource-level Parallel Approach for Global-routing-based Routing Congestion Estimation and a Method to Quantify Estimation Accuracy Wen-Hao Liu, Zhen-Yu.
More Realistic Power Grid Verification Based on Hierarchical Current and Power constraints 2 Chung-Kuan Cheng, 2 Peng Du, 2 Andrew B. Kahng, 1 Grantham.
1 Divide and Conquer Binary Search Mergesort Recurrence Relations CSE Lecture 4 – Algorithms II.
HOW TO SOLVE IT? Algorithms. An Algorithm An algorithm is any well-defined (computational) procedure that takes some value, or set of values, as input.
Program Performance & Asymptotic Notations CSE, POSTECH.
Optimization for Operation of Power Systems with Performance Guarantee
ECE 371 Microprocessor Interfacing Unit 4 - Introduction to Memory Interfacing.
Network Aware Resource Allocation in Distributed Clouds.
Computer Science Department University of Pittsburgh 1 Evaluating a DVS Scheme for Real-Time Embedded Systems Ruibin Xu, Daniel Mossé and Rami Melhem.
Approximation schemes Bin packing problem. Bin Packing problem Given n items with sizes a 1,…,a n  (0,1]. Find a packing in unit-sized bins that minimizes.
A Polynomial Time Approximation Scheme For Timing Constrained Minimum Cost Layer Assignment Shiyan Hu*, Zhuo Li**, Charles J. Alpert** *Dept of Electrical.
VLSI Physical Design: From Graph Partitioning to Timing Closure Chapter 5: Global Routing © KLMH Lienig 1 EECS 527 Paper Presentation High-Performance.
« Performance of Compressed Inverted List Caching in Search Engines » Proceedings of the International World Wide Web Conference Commitee, Beijing 2008)
An Efficient Clustering Algorithm For Low Power Clock Tree Synthesis Rupesh S. Shelar Enterprise Microprocessor Group Intel Corporation, Hillsboro, OR.
Thermal-aware Steiner Routing for 3D Stacked ICs M. Pathak and S.K. Lim Georgia Institute of Technology ICCAD 07.
Advance Data Structure 1 College Of Mathematic & Computer Sciences 1 Computer Sciences Department م. م علي عبد الكريم حبيب.
Optimal resource assignment to maximize multistate network reliability for a computer network Yi-Kuei Lin, Cheng-Ta Yeh Advisor : Professor Frank Y. S.
The Selection Problem. 2 Median and Order Statistics In this section, we will study algorithms for finding the i th smallest element in a set of n elements.
Ho-Lin Chang, Hsiang-Cheng Lai, Tsu-Yun Hsueh, Wei-Kai Cheng, Mely Chen Chi Department of Information and Computer Engineering, CYCU A 3D IC Designs Partitioning.
CS 61B Data Structures and Programming Methodology July 28, 2008 David Sun.
1 Lower Bounds Lower bound: an estimate on a minimum amount of work needed to solve a given problem Examples: b number of comparisons needed to find the.
1 Systems Analysis Methods Dr. Jerrell T. Stracener, SAE Fellow SMU EMIS 5300/7300 NTU SY-521-N NTU SY-521-N SMU EMIS 5300/7300 Statistical Analysis Other.
1Computer Sciences Department. Book: Introduction to Algorithms, by: Thomas H. Cormen Charles E. Leiserson Ronald L. Rivest Clifford Stein Electronic:
A Faster Approximation Scheme for Timing Driven Minimum Cost Layer Assignment Shiyan Hu*, Zhuo Li**, and Charles J. Alpert** *Dept of ECE, Michigan Technological.
CSC 211 Data Structures Lecture 13
A Study of Balanced Search Trees: Brainstorming a New Balanced Search Tree Anthony Kim, 2005 Computer Systems Research.
CSC 221: Recursion. Recursion: Definition Function that solves a problem by relying on itself to compute the correct solution for a smaller version of.
Adaptive Multi-Threading for Dynamic Workloads in Embedded Multiprocessors 林鼎原 Department of Electrical Engineering National Cheng Kung University Tainan,
The Greedy Method. The Greedy Method Technique The greedy method is a general algorithm design paradigm, built on the following elements: configurations:
O PTIMAL SERVICE TASK PARTITION AND DISTRIBUTION IN GRID SYSTEM WITH STAR TOPOLOGY G REGORY L EVITIN, Y UAN -S HUN D AI Adviser: Frank, Yeong-Sung Lin.
Review 1 Arrays & Strings Array Array Elements Accessing array elements Declaring an array Initializing an array Two-dimensional Array Array of Structure.
On the Relation between SAT and BDDs for Equivalence Checking Sherief Reda Rolf Drechsler Alex Orailoglu Computer Science & Engineering Dept. University.
Instructor Neelima Gupta Table of Contents Factor 2 algorithm for Bin Packing Factor 2 algorithm for Minimum Makespan Scheduling Reference:
Branch and Bound Algorithms Present by Tina Yang Qianmei Feng.
Exploiting Multithreaded Architectures to Improve Data Management Operations Layali Rashid The Advanced Computer Architecture U of C (ACAG) Department.
1 Implicant Expansion Methods Used in The BOOM Minimizer Petr Fišer, Jan Hlavička Czech Technical University, Karlovo nám. 13, Prague 2
1. Searching The basic characteristics of any searching algorithm is that searching should be efficient, it should have less number of computations involved.
A Fast Genetic Algorithm Based Static Heuristic For Scheduling Independent Tasks on Heterogeneous Systems Gaurav Menghani Department of Computer Engineering,
Application of the GA-PSO with the Fuzzy controller to the robot soccer Department of Electrical Engineering, Southern Taiwan University, Tainan, R.O.C.
Spring 2008The Greedy Method1. Spring 2008The Greedy Method2 Outline and Reading The Greedy Method Technique (§5.1) Fractional Knapsack Problem (§5.1.1)
Chapter 15 Running Time Analysis. Topics Orders of Magnitude and Big-Oh Notation Running Time Analysis of Algorithms –Counting Statements –Evaluating.
Stochastic Local Search Algorithms for DNA word Design Dan C Tulpan, Holger H Hoos, and Anne Condon Summerized by Ji-Eun Yun.
Unified Adaptivity Optimization of Clock and Logic Signals Shiyan Hu and Jiang Hu Dept of Electrical and Computer Engineering Texas A&M University.
1 Section 5.1 Analyzing Algorithms Let P be a problem and A an algorithm to solve P. The running time of A can be analyzed by counting the number of certain.
What is an algorithm? An algorithm is a sequence of unambiguous instructions for solving a problem, i.e., for obtaining a required output for any legitimate.
What is an algorithm? An algorithm is a sequence of unambiguous instructions for solving a problem, i.e., for obtaining a required output for any legitimate.
Advanced Design and Analysis Techniques
Comparing Genetic Algorithm and Guided Local Search Methods
What is an algorithm? An algorithm is a sequence of unambiguous instructions for solving a problem, i.e., for obtaining a required output for any legitimate.
Divide and Conquer Algorithms Part I
CSC 380: Design and Analysis of Algorithms
Greedy Algorithms: Introduction
The Selection Problem.
What is an algorithm? An algorithm is a sequence of unambiguous instructions for solving a problem, i.e., for obtaining a required output for any legitimate.
Presentation transcript:

The Fast Optimal Voltage Partitioning Algorithm For Peak Power Density Minimization Jia Wang, Shiyan Hu Department of Electrical and Computer Engineering Michigan Technological University ICCAD 2010

Introduction Problem formulation Algorithm Experiment results Conclusions Outline

Many existing works have considered the minimization of the total power consumption on a chip [1], [2], [3]. –A popular technique in power minimization is to exploit multiple supply voltages, i.e., the chip is partitioned into some voltage islands to be supplied with different voltages. Power density mitigation is a crucial design issue. Power density of a chip significantly impacts reliability and thermal. Introduction

This paper is the first work to consider voltage partitioning for peak power density minimization. –Given a functional unit t, let c(t) denote its capacitance and A(t) denote its area. –c(t) / A(t) gives the capacitance per area for functional unit t. –Given a set of functional units in a single partition, peak power density can be modeled as Introduction

Example Two groups: –T1 = {t1, t2, t3} and T2 = {t4, t5, t6}. –For T1, peak power density = 8 2 *2.5 = 160 –For T2, peak power density = 6 2 *3 = 108 Introduction

Voltage Partitioning For Peak Power Density Minimization Problem: –Given m voltage levels, a set T of functional units, the capacitance and area of each unit, the problem is to partition T into at most m groups, such that the peak power density over all groups is minimized. Problem formulation

We first design an auxiliary procedure, denoted by CORE, which can efficiently answer the following sub-problem: –Given a peak power density target P and a number m, whether there is a partitioning solution such that the peak power density over all partitions is no greater than P and the number of partitions is no greater than m? Given CORE, the main algorithm iteratively sets the power density target P to be certain values and uses CORE to check whether there is a voltage partitioning solution with maximum power density ≤ P and ≤ m partitions. Algorithm

Basic algorithm –The input to CORE consists of a set of functional units T = {ti} each of which has v(ti), A(ti) and c(ti). A target power density P and target #partitions m. –Compute the minimum number of partitions, k, which can achieve the power density P. –If k<=m, return “yes”, otherwise return “no”. Algorithm

Basic algorithm –The solution is optimal. –It takes O(mlogn) Algorithm

Main algorithm –The main algorithm iteratively sets the power density target P to be certain values and uses CORE to check whether there is a voltage partitioning solution with maximum power density ≤ P and ≤ m partitions. –There is n 2 possible values of P. Algorithm

Main algorithm –There exists lower and upper bounds of P, thus we do not need to call CORE on certain value of P. Algorithm

Main algorithm –Since all c/A values are sorted, one can perform a binary search on these c/A values to locate two consecutive c/A values, namely, D i and D i+1 (with D i m and CORE(v 2 max * D i+1 ) ≤m. –Those two values give better upper and lower bounds. Algorithm

Main algorithm –After getting the new upper and lower bounds, there are two cases. Case (1): v 2 max * D i+1 is the optimal peak power density. Case (2):There is a peak power density value < v 2 max * D i+1 which leads to ≤ m partitions. –Since we do not know when Case (1) is the case (and thus we can stop), we will run both Case (1) and Case (2) by a recursive call. Algorithm

Main algorithm Algorithm

Given a set of n functional units and m voltage levels, the minimum peak power density voltage partitioning solution can be computed in O(n log n + m 2 log 2 n) time. Algorithm-complexity analysis

The algorithm is implemented in C++ and tested on a Pentium IV machine with 2.4GHz quad-core CPU and 8G memory. Input: A set of randomly generated large testcases whose sizes (numbers of functional units) range from 100K to 1M. Experimental results

Since none of the previous works considers power density minimization through voltage partitioning, we design a natural greedy algorithm for comparison. –To form an initial partial voltage partitioning solution, put each of the first m functional units to a separate partition. –Starting with the (m + 1)-th functional unit, perform the following. –Given a functional unit, assign it to the partition such that the resulting peak power density is minimized. Experimental results

This table shows the comparison between our optimal algorithm and the greedy algorithm where m = 5. Experimental results

This testcase has100k functional units. Experimental results

This paper is the first one to design an optimal voltage partitioning algorithm for minimizing the peak power density. We also design an optimal algorithm for the problem which runs in O(n log n +m 2 log 2 n). Conclusions