HeMPS Application-Specific Heterogeneous Multiprocessor Synthesis Using Differential-Evolution Allan Rae Sri Parameswaran Dept. of Computer Science and.

Slides:



Advertisements
Similar presentations
QoS-based Management of Multiple Shared Resources in Dynamic Real-Time Systems Klaus Ecker, Frank Drews School of EECS, Ohio University, Athens, OH {ecker,
Advertisements

Energy-efficient Task Scheduling in Heterogeneous Environment 2013/10/25.
Mani Srivastava UCLA - EE Department Room: 6731-H Boelter Hall Tel: WWW: Copyright 2003.
1 An Adaptive GA for Multi Objective Flexible Manufacturing Systems A. Younes, H. Ghenniwa, S. Areibi uoguelph.ca.
Student : Mateja Saković 3015/2011.  Genetic algorithms are based on evolution and natural selection  Evolution is any change across successive generations.
On the Genetic Evolution of a Perfect Tic-Tac-Toe Strategy
A Heuristic Bidding Strategy for Multiple Heterogeneous Auctions Patricia Anthony & Nicholas R. Jennings Dept. of Electronics and Computer Science University.
CS244-Introduction to Embedded Systems and Ubiquitous Computing Instructor: Eli Bozorgzadeh Computer Science Department UC Irvine Winter 2010.
Department of Engineering, Control & Instrumentation Research Group 22 – Mar – 2006 Optimisation Based Clearance of Nonlinear Flight Control Laws Prathyush.
A new crossover technique in Genetic Programming Janet Clegg Intelligent Systems Group Electronics Department.
Process Scheduling for Performance Estimation and Synthesis of Hardware/Software Systems Slide 1 Process Scheduling for Performance Estimation and Synthesis.
Tutorial 1 Temi avanzati di Intelligenza Artificiale - Lecture 3 Prof. Vincenzo Cutello Department of Mathematics and Computer Science University of Catania.
© P. Pongcharoen ISA/1 Applying Designed Experiments to Optimise the Performance of Genetic Algorithms for Scheduling Capital Products P. Pongcharoen,
Evolutionary Computational Intelligence Lecture 8: Memetic Algorithms Ferrante Neri University of Jyväskylä.
On the Task Assignment Problem : Two New Efficient Heuristic Algorithms.
D Nagesh Kumar, IIScOptimization Methods: M1L4 1 Introduction and Basic Concepts Classical and Advanced Techniques for Optimization.
UNIVERSITY OF JYVÄSKYLÄ Resource Discovery Using NeuroSearch Presentation for the Agora Center InBCT-seminar Mikko Vapa, researcher InBCT 3.2.
1 of 14 1 / 18 An Approach to Incremental Design of Distributed Embedded Systems Paul Pop, Petru Eles, Traian Pop, Zebo Peng Department of Computer and.
Differential Evolution Hossein Talebi Hassan Nikoo 1.
Genetic Algorithms Overview Genetic Algorithms: a gentle introduction –What are GAs –How do they work/ Why? –Critical issues Use in Data Mining –GAs.
Marcus Gallagher and Mark Ledwich School of Information Technology and Electrical Engineering University of Queensland, Australia Sumaira Saeed Evolving.
1 Reasons for parallelization Can we make GA faster? One of the most promising choices is to use parallel implementations. The reasons for parallelization.
SBSE Course 4. Overview: Design Translate requirements into a representation of software Focuses on –Data structures –Architecture –Interfaces –Algorithmic.
Prepared by Barış GÖKÇE 1.  Search Methods  Evolutionary Algorithms (EA)  Characteristics of EAs  Genetic Programming (GP)  Evolutionary Programming.
Evolutionary algorithms
Genetic Algorithm.
Genetic Algorithms and Ant Colony Optimisation
Evolutionary Intelligence
A Budget Constrained Scheduling of Workflow Applications on Utility Grids using Genetic Algorithms Jia Yu and Rajkumar Buyya Grid Computing and Distributed.
Slides are based on Negnevitsky, Pearson Education, Lecture 12 Hybrid intelligent systems: Evolutionary neural networks and fuzzy evolutionary systems.
Evolution Strategies Evolutionary Programming Genetic Programming Michael J. Watts
Constrained Evolutionary Optimization Yong Wang Associate Professor, PhD School of Information Science and Engineering, Central South University
© Negnevitsky, Pearson Education, Lecture 10 Evolutionary Computation: Evolution strategies and genetic programming Evolution strategies Evolution.
Meta Optimization Improving Compiler Heuristics with Machine Learning Mark Stephenson, Una-May O’Reilly, Martin Martin, and Saman Amarasinghe MIT Computer.
Integrated Circuits and Systems Laboratory Darmstadt University of Technology Design Space Exploration of incompletely specified Embedded Systems.
Zorica Stanimirović Faculty of Mathematics, University of Belgrade
Boltzmann Machine (BM) (§6.4) Hopfield model + hidden nodes + simulated annealing BM Architecture –a set of visible nodes: nodes can be accessed from outside.
What is Genetic Programming? Genetic programming is a model of programming which uses the ideas (and some of the terminology) of biological evolution to.
1 Exploring Custom Instruction Synthesis for Application-Specific Instruction Set Processors with Multiple Design Objectives Lin, Hai Fei, Yunsi ACM/IEEE.
ASC2003 (July 15,2003)1 Uniformly Distributed Sampling: An Exact Algorithm for GA’s Initial Population in A Tree Graph H. S.
Design of an Evolutionary Algorithm M&F, ch. 7 why I like this textbook and what I don’t like about it!
Introduction to Evolutionary Algorithms Session 4 Jim Smith University of the West of England, UK May/June 2012.
Stochastic DAG Scheduling using Monte Carlo Approach Heterogeneous Computing Workshop (at IPDPS) 2012 Extended version: Elsevier JPDC (accepted July 2013,
A Graph Based Algorithm for Data Path Optimization in Custom Processors J. Trajkovic, M. Reshadi, B. Gorjiara, D. Gajski Center for Embedded Computer Systems.
Genetic Algorithms Genetic Algorithms – What are they? And how they are inspired from evolution. Operators and Definitions in Genetic Algorithms paradigm.
Genetic Algorithms Siddhartha K. Shakya School of Computing. The Robert Gordon University Aberdeen, UK
Bi-directional incremental evolution Dr Tatiana Kalganova Electronic and Computer Engineering Dept. Bio-Inspired Intelligent Systems Group Brunel University.
CS244-Introduction to Embedded Systems and Ubiquitous Computing Instructor: Eli Bozorgzadeh Computer Science Department UC Irvine Winter 2010.
Abstract ODE System Model of GRNs Summary Evolving Small GRNs with a Top-Down Approach Javier Garcia-Bernardo* and Margaret J. Eppstein Department of Computer.
DYNAMIC FACILITY LAYOUT : GENETIC ALGORITHM BASED MODEL
C OMPARING T HREE H EURISTIC S EARCH M ETHODS FOR F UNCTIONAL P ARTITIONING IN H ARDWARE -S OFTWARE C ODESIGN Theerayod Wiangtong, Peter Y. K. Cheung and.
1 Effect of Spatial Locality on An Evolutionary Algorithm for Multimodal Optimization EvoNum 2010 Ka-Chun Wong, Kwong-Sak Leung, and Man-Hon Wong Department.
Optimisation of Pipelined MPSoCs Using Integer Linear Programming Embedded Systems Laboratory Haris Javaid Research Associate.
Static Process Scheduling
Winter-Spring 2001Codesign of Embedded Systems1 Co-Synthesis Algorithms: Distributed System Co- Synthesis Part of HW/SW Codesign of Embedded Systems Course.
1 Hardware-Software Co-Synthesis of Low Power Real-Time Distributed Embedded Systems with Dynamically Reconfigurable FPGAs Li Shang and Niraj K.Jha Proceedings.
Genetic algorithms for task scheduling problem J. Parallel Distrib. Comput. (2010) Fatma A. Omara, Mona M. Arafa 2016/3/111 Shang-Chi Wu.
© P. Pongcharoen CCSI/1 Scheduling Complex Products using Genetic Algorithms with Alternative Fitness Functions P. Pongcharoen, C. Hicks, P.M. Braiden.
Artificial Intelligence By Mr. Ejaz CIIT Sahiwal Evolutionary Computation.
1 Comparative Study of two Genetic Algorithms Based Task Allocation Models in Distributed Computing System Oğuzhan TAŞ 2005.
Multi-cellular paradigm The molecular level can support self- replication (and self- repair). But we also need cells that can be designed to fit the specific.
March 1, 2016Introduction to Artificial Intelligence Lecture 11: Machine Evolution 1 Let’s look at… Machine Evolution.
 Negnevitsky, Pearson Education, Lecture 12 Hybrid intelligent systems: Evolutionary neural networks and fuzzy evolutionary systems n Introduction.
Evolutionary Computation Evolving Neural Network Topologies.
CEng 713, Evolutionary Computation, Lecture Notes parallel Evolutionary Computation.
The 2st Chinese Workshop on Evolutionary Computation and Learning
Evolution Strategies Evolutionary Programming
C.-S. Shieh, EC, KUAS, Taiwan
Who cares about implementation and precision?
Introduction to Artificial Intelligence Lecture 11: Machine Evolution
Presentation transcript:

HeMPS Application-Specific Heterogeneous Multiprocessor Synthesis Using Differential-Evolution Allan Rae Sri Parameswaran Dept. of Computer Science and Electrical Engineering University of Queensland St. Lucia, Queensland, Australia.

HeMPS Overview qMotivation qRelated work qDifferential Evolution overview qDescription of algorithms qWorked example qResults qConclusions

HeMPS Motivation qApplication specific systems range from washing machines to supercomputers (GRAPE IV) qMost are embedded computers –becoming more complex with shorter time-to-market qShort product cycles limit the number of test designs qDesign quality limited by designers experience –design reuse or adaptation qInnovative design methodologies required to assist designers

HeMPS HeMPS Strategy qProblem-space differential-evolution heuristic –Differential evolution in conjunction with a problem-specific heuristic list-scheduling heuristic qInput : –task data flow graph –library of processor and communication link types –set of subtask execution times for each processor type qOutput : –a distributed, heterogeneous multiprocessor architecture using a point-to-point network –subtask allocations for each processor –a static task schedule

HeMPS Related Work q Scheduling and allocation problem is NP-complete q Numerous heuristics developed in scheduling work q Very few heuristics for multiprocessor synthesis q Prakash & Parker (SOS) 1992 – Mixed Integer, Linear-Programming model q Dhodhi, Ahmad and Storer (SHEMUS) 1995 – Problem-space genetic algorithm with list-scheduling. q Wolf 1997 – multistep heuristic q Dasgupta & Karri (RELSYNOPT) 1997 –reliability-optimal synthesis q Bjørn-Jørgensen and Madsen 1997 – Heterogeneous Critical-Path (HCP) algorithm – maximum performance for a given set of processors

HeMPS Differential Evolution qEvolutionary Computation –Evolutionary Strategies Germany 1960’s, Rechenberg, Schwefel –Evolutionary Programming USA 1960’s, Larry Fogel –Genetic Algorithms qDifferential Evolution, Storn and Price. –Descendent of Evolutionary Strategies –Mutation generated by vector differentials Optimum mutation step size is a function of the standard deviation of the parameters in the population. Each parameters optimum step size is different and varies over time.

HeMPS Differential Evolution Crash Course qPopulation X qParent vector qTwo randomly chosen vectors – and Better of and goes in new population X’ X X’

HeMPS DE Algorithm qInitialise the population with uniform random values qDetermine quality of members of using a scheduling heuristic qrepeat –foreach parent in Randomly select a difference pair and Calculate Determine the quality of if is better than –then goes in new population –else goes in new population –endfor – replaces quntil population converged or generation limit

HeMPS Synthesis Strategy qTrial vectors represent –Numbers of each type of processor available for selection –List of subtask priorities qFitness of a solution determined by a problem-specific heuristic –simple list-scheduling heuristic qOutput of heuristic used to judge fitness –Total time: T t –Implementation cost: –Choice of cost, C t, or performance, T t, optimisation –Target value, V for example: T t V C t 0

HeMPS Scheduling Heuristic qAny heuristic could be used. qWe use a simple list-scheduler so the DE algorithm does the work of finding a good solution. qBetter heuristics should therefore help HeMPS achieve even faster results. qSubtask priorities (part of trial vector) establish the order in which to attempt to schedule the subtasks onto processors. qPriority Scheduling –A given priority list may not be achievable Modify or repair the priority list so it is achievable

HeMPS Illustrative Example qPrakash and Parker’s first example q3 processor types and 4 subtasks Priority Schedule: Unachievable Repaired Priority Schedule: (Swapping repair) , 1.43, , 2.19, 0.1, , 1, 04, 2, 1, 3 1, 2, 4, 3

HeMPS Example Continued qProcessor costs and subtask times P0: P1: Links: P1P0 1, 1, 01, 2, 4, 3 x, 3, 1, x 1, 1, x, Total Cost: = 7 Total Time:

HeMPS Results Examples from Prakash and Parker, Wolf and SHEMUS

HeMPS Conclusions qHeMPS, combines a problem-specific heuristic with differential evolution. qThis combination enables the system to rapidly and efficiently search the design-space for an optimal or near-optimal solution. qProvides equal or better results for the examples described. qAs the number of subtasks is increased the execution time of HeMPS remains low.

HeMPS Latest Advances qPower minimisation –selection of low power implementations –voltage reduction to further minimise power consumption qDatabase of previous calculations –Reduces runtime when evolution results in repetition of earlier trial solutions qInitialisation experiments –Previously only random initialisations were used –Trialled ALAP, ASAP, HCP… qRevised problem-specific heuristic –experimenting with a modified HCP heuristic –trial solutions now represent a list of allocations to processor types and numbers of those types of processors