1 / 14

Fast Design Space Exploration using Hierarchies

Fast Design Space Exploration using Hierarchies. Overview. motivation ad hoc approach formalized approach - decomposition, composition - simple example - validity function - component level filtering - common /partial validity filter - quality filter - example.

ella
Télécharger la présentation

Fast Design Space Exploration using Hierarchies

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Fast Design Space Exploration using Hierarchies Patrick de la Hamette, Marco Wirz

  2. Overview • motivation • ad hoc approach • formalized approach- decomposition, composition- simple example- validity function- component level filtering- common /partial validity filter- quality filter- example Design Space Exploration

  3. motivation: DSE in large systems large system design: • evaluation criteria: e =(cost, time) (performance-1) • many design parameters… (cache_size, cache_associativity, cache_ports, cpu_instruction_size…) • Problems: - design space D {d1,…,dn} is huge(all parameter combinations)- evaluation D e complicated (slow)- infeasible… RAM Bus CPU Cache Goal: reduce number of designs to be evaluated, with no loss in accuracy Design Space Exploration

  4. approach Problem: produces non optimal results if interactions between subsystems are complicated… big system ad hoc approach Formalizedapproach • - split system into subsystems that interact little • evaluate isolated subsystems • recombine optimal subsystems Design Space Exploration

  5. formalized approach • formal method for dividing a system into subsystems (components), which are separately evaluated • reduces design space(s) in a systematic way, using different filtering steps. • only a limited number of system combinations have to be evaluated • guarantees optimality of final designs (pareto set) systemcomposition system validity and optimality filtering Component 1 Design space D1 componentfiltering decomposition system ... Component n Design space Dn Design Space Exploration

  6. decomposition: definition a decomposition of the design space partitions a system S into the components C1 ..Cn, with: • design spaces Di for all components Ci, ( ) with different component designs di,n , their evaluation functions e and a decomposition function, mapping a system to a set of components • validity function V: (D1X D2…X Dn)  [TRUE, FALSE]e.g. V(d1, …,di)=true for a valid system (=combination of component designs) • composition function : (D1X D2…X Dn)  [D,‡], mapping all sets of component design to system design, or to ‡ for invalid combination Design Space Exploration

  7. simple, inefficient example • no component level filtering! • output = pareto set • Nc all combinations e.g. 10.000 • Nv valid combinations e.g. 1.000 • Np pareto comb. e.g. 100 • (“start with empty pareto set, and check for every new valid combination, if it is dominated. If not, add to pareto set, and remove elements that are dominated”) Goal: reduce Nc and Nv before final evalution, by filtering component design space! Design Space Exploration

  8. Validity Function • System Validity function: V: (D1×D2×… ×Dn)  [true, false] reduced to canonical AND-OR form:V()=((a  b  c) v (a  d  e)) • Common expression: term appearing in all AND expressions (here: a)Can be factored out:V()=a  ((b  c) v (d  e)) • V() = CE  PSOPCE: Common Expression (a)PSOP: Partial Sum Of Products: (bc) v (de) Design Space Exploration

  9. Component-level Filtering Design Space Exploration

  10. Common Validity Filter • For each design space Di there is a common expression CEi (can be as simple as TRUE) • V() is the conjunction of all CEi: • If CEi is FALSE for a design di, then V() is FALSE for all designs containing di • Eliminate all di that do not satisfy CEi Design Space Exploration

  11. Partial Validity Filter • V() = CE  PSOP • PSOP = ((b  c) v (d  e)) = • CPEij: Part of expression associated with component Ci • Eliminate all di that do not satisfy any CPEi Design Space Exploration

  12. Quality Filter • PSi is the set of designs di which satisfy CEi and CPEi • Evaluate component designs di in PSi • Choose quality (Pareto) set QSi of di • Idea:A system design containing a component di in PSi but not in QSi can always be improved by substituting a design dp in QSi if the evaluation functions are perfectly correlated. Design Space Exploration

  13. Component-level Filtering Design Space Exploration

  14. Example • Processor / mem design • 100 designs each: total Nc = 10.000 • Simple System: • Validity: Nv = 1.000 • Quality: Np = 100 • Hierarchical system: • C[CE]: 40 of 100 processors: Nc = 4.000 • V[CPE] (4 sets): 12 Proc, 50 Mem: NC = 2.400 • Q (4 sets): 5 Proc, 10 Mem: Nc = 200 • Only 200 instead of 10.000 systems have to be evaluated. Design Space Exploration

More Related