conti automotive r&d, invited - ulb sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/conti.pdf ·...

61
Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania http://csac.ulbsibiu.ro/ Automatic Multi-Objective Optimization of Mono-Core and Multi-Core Architectures using Domain-Knowledge CONTI Automotive R&D, Invited Talk, Sibiu, March 4 th 2013 Professor Lucian Vinţan, PhD “Lucian Blaga” University of Sibiu (LBUS), Romania Academy of Technical Sciences of Romania

Upload: vanhanh

Post on 14-Feb-2018

217 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Automatic Multi-Objective Optimization of Mono-Core and Multi-Core

Architectures using Domain-Knowledge

CONTI Automotive R&D, Invited Talk, Sibiu, March 4th 2013

Professor Lucian Vin ţan, PhD“Lucian Blaga” University of Sibiu (LBUS), Romania

Academy of Technical Sciences of Romania

Page 2: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

22

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

The LBUS Advanced Computer Architecture

and Processing Systems Research Lab (ACAPS)

� Main on-going Research Projects: � Developing and Optimizing some Innovative

Computer (Micro-)Architectures� Text Mining (Developing Documents Classification

and Clustering Methods)

� Team:� Assoc. Prof. A. Florea, Dr. A. Gellert, Dr. I. D. Morariu,

Dr. R. Cretulescu, Dr. H. Calborean, Dr. C. Radu� PhD Students: Dr. I. Mironescu, R. Chis� MSc StudentsDetails at: http://acaps.ulbsibiu.ro/index.php/en/

Page 3: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

33

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Computer Architecture Research� Scope:

� Development innovative computer architectures and multi-objective optimization of these architectures

� Objectives:

� Developing some novel effective micro-architectures� Develop a robust and fast automatic design space

exploration framework for H/S optimizing computer systems� Research how domain-knowledge could be represented and

integrated into the Design Space Exploration (DSE) algorithms

� Quantify domain-knowledge impact on the DSE process� Evaluate & compare different multi-objective DSE algorithms

Page 4: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

44

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Automatic Design Space Exploration

� A NP-hard Problem� HUGE design space

� 50 parameters, 8 values/parameter� 2150

configurations!� M-SIM 2 � 2,5 millions of billions configurations!� Manual design space exploration � impossible

� Multi-objective optimization (performance, power consumption, complexity…) � problem becomes even (NP-) harder

� Solution� Advanced heuristic algorithms

Page 5: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

55

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Hardware-Software Co-Optimization

� Not only the hardware needs to besimulated; programs are compiled for thathardware with different optimizations -that might work or not work well

� Compiler (scheduler) optimizations aredependent on the hardware architecture

� � We need hardware software co-optimization ���� cross -layer optimization

� It is now even harder for an architect tothink about all these H/S parameters

Page 6: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

66

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Multi-Objective Optimization

� A vector function f that maps a tuple of mparameters to a tuple of n objectives

� This can be expressed like this:� Min/Max y = f(x) = (f1(x), f2(x) … fn(x))� x = (x1, x2, …, xm) Є X - decision vector

(no. of cores, interconnect-net type, caches capacities, no. of. FUs, etc.)

� y = (y1, y2, …, yn) Є Y- objective vector(IPC, Energy, Complexity, WCET, etc.)

Page 7: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

77

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Basic Notions: Pareto Front, Set,

Dominance (Minimization Problem)

Parameter space

p1

p2

p1

p2

o1

o2

Objective space

True Pareto front

Pareto front approx.

Dominated points

Pareto set approx.

Page 8: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

88

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Pareto Front – Minimization

Problem

Page 9: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

99

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Used DSE Algorithms

� Multi-objective evolutionary algorithms (Genetic Algorithms )� SEMO� FEMO� NSGA-II� SPEA2, etc.

� Bio -inspired algorithms� Ex. Particle Swarm Optimization (OMOPSO,

SMPSO, etc.)They are too general… Solutions?

Page 10: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

1010

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

(Multi-objective) Genetic Algorithms

Generate Initial Population

Stop condition met

Selection

Crossover(Recombination)

Mutation

Evaluate objective function

Present results

STOP

START

yes

no

New population

Problem: How do we compare different individuals which are evaluated on multiple objectives?

Page 11: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

1111

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Multi-objective optimization –

different solutions

Multi-objective optimization algorithms:

• Aggregation methods• Lexicographic ordering• Pareto-based algorithms

Page 12: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

1212

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Aggregating methods

� Combine all the objectives into a single objective� Weighted-sum approach

∑=

⋅=N

iii fwZ

1

Page 13: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

1313

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Lexicographic ordering

• The user ranks the objectives in order of importance.

• The optimum solution is obtained by minimizing the objective functions separately, starting with the most important one

• Obviously it is not optimal!

Page 14: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

1414

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Pareto-based approach: NSGA-II

Algorithm Fitness Assignment� How could we sort individuals represented in

an multi-objective space?� The individuals are sorted in Pareto-fronts:

� The non-dominated individuals are extracted from the population; this is front P1.

� The remaining population is again sorted using the non-domination relation and a new front, P2, is extracted … and so on.

� The algorithm prefers an individual from a better front (hyper-surface).

Page 15: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

1515

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Sorting individuals from the same

front? Density estimation…

• Computing crowding distance for each individual.

• If the individuals are on the same front , then a less crowded individual is preferred.

Page 16: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

1616

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

CNSGA-II DSE Algorithm:

assuring populations’ diversity

� N = number of individuals in a generation� n i= max. nr of individuals from front i� r = reduction rate; 0<r<1� k = total nr of fronts after the sorting algorithm

Page 17: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

1717

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

CNSGA-II: Selection Mechanism

Example

Front r = 0.1 r = 0.5 r = 0.9 r = 0.9999

1 90 52 24 20

2 9 26 22 20

3 1 13 20 20

4 0 6 18 20

5 0 3 16 20

Sum 100 100 100 100

Page 18: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

1818

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Pareto Algorithms’ Comparison

f2

f2

Algorithm 1

Algorithm 2

A

B

C

Algorithm 1 is better

Algorithm 2 is better

Page 19: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

1919

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Performance and Quality Metrics

� Hypervolume

� Coverage

''

}''':'';''''{)'','(

X

aaXaXaXXC

f∈∃∈=

Page 20: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

2020

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Two Set Hyper-volume Difference

First Second

� Better understanding about how much one dominates the other in a multi - dimensional space:

TSHD(X1, X2) = HV(X1UX2) – HV(X2)

If [TSHD(X1, X2) = 0 and TSHD(X2, X1) > 0] than X2 is absolutely better than X1

Page 21: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

2121

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Framework for Automatic Design

Space Exploration (FADSE)

� Includes many state-of-the-art multi-objective DSE algorithms (integrated with jMetal)

� Can connect to any existing (architectural) simulator (connector needed)

� Easy to use XML configuration interface� Publicly available:

http://code.google.com/p/fadse/� Implemented by Dr. Horia Calborean under

my PhD supervision at LBUS (ACAPS)

Page 22: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

2222

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

FADSE (cont.)

� Reducing search time:� Database integration (up to 67% reuse)� Distributed evaluation (LANs, HPC)

� Reliable� Clients/network can crash� Power loss/Sever fail � Checkpointing

Page 23: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

2323

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Distributed Evaluation on HPC –

Changing the Algorithms

Page 24: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

2424

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Computer Architecture Domain - Knowledge

in FADSE (I)� How might we develop more specific effective

DSE algorithms?� Fuzzy rules - we are the first ones using fuzzy

logic as a method to express computer architecture knowledge into a DSE toolCPU Fuzzy Rules Examples:

� IF Number_of_Physical_Register_Sets IS small/big THEN Decode/Issue/Commit_Width IS small/big

� IF [(L1_ ICache IS small) AND (L1_ DCache IS small)]THEN (L2_ Cache IS big)

� IF IL1_Size IS big AND DL1_Size IS big THEN UL2_size IS small

Page 25: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

2525

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Associating meaning (semantic) with fuzzy sets results in:� Linguistic Variables: the (labeled!) domain of the fuzzy sets� Linguistic Values: a (labeled!) collection of fuzzy sets on

this domain; Membership function µ:X����[0,1]

Examples:� Age: young, old

� Size: small, medium, tall

Linguistic Variables and Gradual

Memberships

25

Page 26: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

2626

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

� Conjunction:

� Disjunction:

� Negation:

Classical Fuzzy Operators:

Min / Max-Norm…

26

Page 27: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

2727

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Implication Formulas in Fuzzy Logic

• The „best” implication form – and, more general, logic al functions forms –is problem-dependent.

• Open question: what is the most effective fuzzy impli cation form for a certain application? Valuable for other fuzzy logic f unctions (AND, OR), too.

Page 28: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

2828

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Computer Architecture Domain -

Knowledge in FADSE (II)� Fuzzification ����Inferences (

etc.) ���� Defuzzification Processes� System of complete, non-redundant and non-

contradictory fuzzy rules � Micro -ontology� Convergence Speed & Solutions Quality

without/with domain micro-ontology� “Relaxed micro-ontology” vs. “Restricted micro-

ontology”� FADSE used the standard Fuzzy Control

Language (through jFuzzyLogic library)

( ))(),(min),( yxyx BABA µµµ =→

Page 29: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

2929

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Fuzzy Rule into Mutation� For all the genes in the chromosome

� If fuzzy rules exist for this parameter (fuzzy rule output)� Do mutation (with a certain probability) taking into

consideration the crisp value provided by the fuzzy rules;

� Otherwise (do bit flip mutation);� Generate a random number between 0 and 1;� If the random number is smaller than the probability of

mutation;� Change the current variable to a random value;

� STOP.

� Advantages� Further Acceleration (Convergence Speed)� Better Results (Solution Quality)

Page 30: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

3030

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Calculating Degrees of Contradiction

between Fuzzy Logic Rules

Page 31: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

3131

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Our Superscalar/SMT SLVP

Architecture

� Superscalar/SMT architecture with SLVP� M-SIM 2 Simulator� LD_Miss DL1/UL2

Caches�LV_Pred

� Objectives� CPI� Energy Consumption

� SLVP Parameters� Size…

Page 32: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

3232

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

IPC Speedup for the Superscalar

SLVPT

Page 33: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

3333

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Overall Energy Reduction for the

Superscalar SLVPT

Page 34: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

3434

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Manual/Automatic Multi-objective

Optimization of SLVP Architecture

� M-SIM 2 (+SLVP) exploration� Manual exploration� Running with FADSE (different constraints)� Starting from initial good configurations� Running with fuzzy rules

� Constant probability� Gaussian probability

� 24 hours/generation on a HPC with 96 cores� Design space size: 1015

Page 35: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

3535

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

FADSE on HPC systems� LBUS: 112 clients, more instances of FADSE

at the same time. 30 Intel Xeon E5405homogenous quad cores (15 blades, 120cores), operating at 2 GHz� We also ran on the IBM Cell - 4 IBM Cell

Broadband Engine (Cell BE) processors (2blades, 36 cores)

� PU Bucharest : 100 clients (Nehalem,Opteron)

� Augsburg University : 32 core Windowsvirtual machine

Page 36: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

3636

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Starting from an Initial Population

0.25

0.3

0.35

0.4

0.45

0.5

7.00E+09 1.20E+10 1.70E+10 2.20E+10 2.70E+10 3.20E+10 3.70E+10 4.20E+10 4.70E+10

Energy

CP

I

Initial run Run with relaxed bordersRun with initial good configurations Manual

A Problem: Temperature!

Page 37: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

3737

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

The implemented SLVP Micro-

ontology

� UL2 > DL1+IL1 � IF Number_of_Physical_Register_Sets IS

small/big THEN Decode/Issue/Commit_Width IS small/big

� IF SLVP_Size IS small/big THEN L1_Data_Cache IS big/small

� (IF SLVP_N IS small AND SLVP_Assoc IS small THEN SLVP_Size IS big)

Page 38: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

3838

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Pareto front comparisons between

the run without/with fuzzy rules

0.25

0.3

0.35

0.4

0.45

0.5

7.00E+09 1.20E+10 1.70E+10 2.20E+10 2.70E+10 3.20E+10 3.70E+10 4.20E+10 4.70E+10

Energy

CP

I

Run without fuzzy Fuzzy with constant probability Manual

Page 39: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

3939

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Convergence speed

0.54

0.56

0.58

0.6

0.62

0.64

0.66

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25

Generation count

Hyp

ervo

lum

e

Initial runRun with relaxed bordersRun with initial good configurationsRun with fuzzy with constant probabilityRun with fuzzy with Gaussian probability

Page 40: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

4040

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

A more parameterized SLVP

Page 41: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

4141

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Comparative Pareto Fronts

0.E+00

1.E+10

2.E+10

3.E+10

4.E+10

5.E+10

6.E+10

7.E+10

0.250 0.300 0.350 0.400 0.450 0.500 0.550 0.600

Ener

gy

CPI

Multi_VPT

Last_VPT

C1

C6

C5

C3C4

C2

Page 42: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

4242

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Hotspots…

Page 43: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

4343

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Hardware-Software Multi-objective Optimizations on

GAP Architecture (Augsburg University)

� GAP architecture� GAPtimize

� Code optimization tool

� Objectives� CPI� Hardware complexity

Page 44: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

4444

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Obtained Results

� Hardware (106)

� Hardware &Software (1010)

0 200 400 600 800 1000 1200

0,500

0,525

0,550

0,575

0,600

0,625

0,650

0,675

0,700

0,725

0,750Manually selected

Found by FADSE

Complexity

CP

I

Page 45: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

4545

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Algorithm Comparison on GAP

Architecture

Page 46: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

4646

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Algorithm Comparison on GAP &

GAPtimize

Page 47: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

4747

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Comparing some DSE Multi-Objective

Algorithms on GAP Microarchitecture

Generation No.

H_Vol

Page 48: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

4848

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Multi-core Optimization

� M-SIM 3� Homogeneous dual core� 36 hours/generation on a 96 cores HPC

Page 49: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

4949

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Multi-objective Optimizations on a

Network-on-Chip Architecture

� The application mapping problem for NoCs

� Evaluating application mapping algorithms

for Networks-on-Chip

� The framework design

� The ns-3 NoC simulator

� Automatic Design Space Exploration for

Network-on-Chip

� The framework

Page 50: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

5050

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

The application mapping problem for

NoCs

Page 51: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

5151

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Evaluating application mapping

algorithms for Network-on-Chip� Dr. Ciprian Radu implemented under my PhD

supervision a unified framework (UniMap -

https://code.google.com/p/unimap/ ) for the

evaluation and optimization of application mapping

algorithms on different NoC designs

� It has 3 major components:

� A module that contains the implementation of

different application mapping heuristic algorithms;

� A network traffic generator;

� A Network-on-Chip simulator.

Page 52: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

5252

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

The ns-3 NoC simulator

� Based on ns-3, an event driven simulator for Internet systems

� Aims for a good accuracy – speed trade-off� Flexible and scalable

� Current parameters:� Packet size, packet injection rate, packet injection

probability…;

� Node Buffer Size;

� Network topology (2D/3D mesh, 2D/3D torus…);

� Network size;

� Switching mechanism (SAF, VCT, Wormhole);

� Routing protocol (XY, YX, …), etc.

Page 53: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

5353

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Automatic Design Space Exploration

for Network-on-Chip

� Motivation

� There is no NoC suitable for all kinds of workload

� There is an enormous number of possible NoC architectures

� Exhaustive DSE is no longer suitable

� Automatic DSE uses an heuristic driven exploration

of the design space

� Disadvantage: near-optimal solutions

� Advantage: speed

Page 54: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

5454

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

The framework

� Components:� DSE module

� NoC simulator

� The DSE module works on the best (Pareto) mappings found by our UniMap framework

� The DSE module determines the quasi-optimal parameters’ values of the NoC architecture (energy, run-time, area)� Uses advanced Machine Learning algorithms

� The NoC simulator (ns-3 NoC) is automatically configured to simulate the network architecture determined by the DSE module

Design Space Exploration module

Network-on-Chip simulatorthe simulator

Configure the simulator

Simulation results

Page 55: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

5555

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Example: „Optimal” NoC parameters’

values for 3 objectives on telecom bench

/30 cores/ 6x5 2D mesh NoC

Mapping No.

NoC parametersSoC

energy[Joule]

SoC area

[mm 2]

Application runtime

[ms]Frequency[MHz]

Buffer size[flits]

Flit size[bytes]

Packet size[flits]

Routing

6 100 4 4 10 YX 0.095 50.11 46.1144

5 200 1 4 10 XY 0.158 37.37 46.1132

3 400 1 4 10 YX 0.167 37.37 46.1111

6 900 4 32 6 YX 0.341 81.22 45.4

Page 56: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

5656

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Further Work (I)

� Use the fuzzy information to improve other operators(not only mutation). Crossover?

� Integration of other complex multicore simulatorsprocessing parallel applications

� Particularly, embedded multicore systems with hardreal time constraints would be of interest (WCET…)

� Developing more effective domain micro-ontologiesrelated to such systems (using fuzzy rules, semanticnets, conceptual graphs, etc.)

� Parameters Feature Selection � What are the mostsignificant parameters? � Reducing the search space

Page 57: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

5757

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Further Work (II)� Developing cross-layer automatic methods for DSE,

simultaneously at different system layers and/orabstraction levels (application, software scheduler,hardware architecture etc.)

� Integrate Response Surface Models (RSM) into FADSE �

improving the speed� F: {Input_Par} ����{Objectives_Val}� Training / RSM Performance Evaluation� Methods: Linear/polynomial regression,

interpolation/approximation, neural nets etc.� Main Objective : Maximum approximation accuracy with a

minimum set of training examples� Finding RSMs for multi-objective functions is clearly a

scientific challenge

Page 58: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

5858

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Related Published Papers (I) – see

http://webspace.ulbsibiu.ro/lucian.vintan/html/#10

� A. GELLERT, A. FLOREA, L. VINTAN - Exploiting Selective Instruction Reuse and ValuePrediction in a Superscalar Architecture, Journal of Systems Architecture , vol. 55, issues3, pp. 188-195, ISSN 1383-7621, Elsevier , 2009

� GELLERT A., PALERMO G., ZACCARIA V., FLOREA A., VINTAN L., SI LVANO C. -Energy-Performance Design Space Exploration in SMT Architectures Exploiting SelectiveLoad Value Predictions, Design, Automation & Test in Europe International Conference(DATE 2010), March 8-12, 2010, Dresden, Germany

� R. JAHR, T. UNGERER, H. CALBOREAN, L. VINTAN - Automatic Multi-ObjectiveOptimization of Parameters for Hardware and Code Optimizations, Proceedings of the2011 International Conference on High Performance Computing & Simulation (HPCS2011), Publisher: IEEE, ISBN 978-1-61284-381-0, Istanbul, Turkey , July 2011

� H. CALBOREAN, R. JAHR, T. UNGERER, L. VINTAN - Optimizing a Superscalar Systemusing Multi-objective Design Space Exploration, Proceedings of the 18th InternationalConference on Control Systems and Computer Science (CSCS-18), Bucharest , May 2011

� C. RADU, L. VINTAN - Optimized Simulated Annealing for Network-on-Chip ApplicationMapping, Proceedings of the 18th International Conference on Control Systems andCom1puter Science (CSCS-18), Bucharest , May 2011

� I. D. MIRONESCU, L. VINŢAN - Optimally Mapping a CFD Application on a HPCArchitecture, ACACES 2011 Seventh International Summer School on AdvancedComputer Architecture and Compilation for High-Performance and Embedded Systems,Published by FP7 HiPEAC Network of Excellence, 10-16 July 2011, Fiuggi, Italy

Page 59: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

5959

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Related Published Papers (II) - see

http://webspace.ulbsibiu.ro/lucian.vintan/html/#10

� JAHR R., CALBOREAN H., VINTAN L., UNGERER T. - Boosting Design Space Explorations withExisting or Automatically Learned Knowledge, The 16-th International GI/ITG Conference onMeasurement, Modelling and Evaluation of Computing Systems and Dependability and FaultTolerance (MMB/DFT 2012), March 19-21, 2012, Kaiserslautern, Germany

� Á. GELLÉRT, H. CALBOREAN, L. VIN ŢAN, A. FLOREA - Multi-Objective Optimizations for aSuperscalar Architecture with Selective Value Prediction, IET Computers & Digital Techniques,United Kingdom , Vol. 6, Issue 4, 2012

� C. RADU, L. VINTAN - Domain-Knowledge Optimized Simulated Annealing for Network-on-ChipApplication Mapping, Advances in Intelligent Control Systems and Computer Science. Advances inIntelligent Systems and Computing, Volume 187, Springer Berlin Heidelberg

� H. CALBOREAN, R. JAHR, UNGERER T., L. VINTAN – A Comparison of Multi-Objective Algorithmsfor the Automatic Design Space Exploration of a Superscalar System, Advances in Intelligent ControlSystems and Computer Science. Advances in Intelligent Systems and Computing, Volume 187,Springer Berlin Heidelberg

� JAHR R., CALBOREAN H., VINTAN L., UNGERER T. - Finding Near-Perfect Parameters forHardware and Code Optimizations with Automatic Multi-Objective Design Space Explorations,Concurrency and Computation: Practice and Experience , doi: 10.1002/cpe.2975, John Wiley &Sons , 2013

� C. RADU, MD. S. MAHBUB, L. VINTAN - Developing Domain-Knowledge Evolutionary Algorithmsfor Network-on-Chip Application Mapping, Microprocessors and Microsystems , vol. 37, issue 1,pp. 65-78, ISSN: 0141-9331, Elsevier, February 2013

Page 60: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

6060

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Research Collaboration Ideas CONTI-

LBUS (ACAPS Lab)� Hopefully this talk was just a first step

� We would keep in touch! Continuing presenting our research projects

� Identifying potential common research interests � Research Collaboration based on win-win principles

� Successful long term vision is impossible without strong research!

� A success story… joint PhD LBUS-Siemens AG, CT IC Munich

� CONTI might use our tools and knowledge for optimizing any developed architecture/system

� Cooperation in PhD projects – brilliant Computer Engineers from CONTI might become PhD students!

� Cooperation in National and European Research Projects

Page 61: CONTI Automotive R&D, Invited - ULB Sibiuwebspace.ulbsibiu.ro/lucian.vintan/html/Conti.pdf · 22 Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania The

6161

Computer Engineering Department, “Lucian Blaga” University of Sibiu, Romania

http://csac.ulbsibiu.ro/

Thank you!

CONTI Automotive R&D -Invited Talk, Sibiu,

March 4 th 2013