SlideShare a Scribd company logo
Managing Uncertainties in
Hardware-Software Codesign Projects
Jones Albuquerque (DEINFO-UFRPE)
Ferrer-Savall, J. (ESAB-UPC)
Bocanegra, S. (DEINFO-UFRPE)
Ferreira, T. (DEINFO-UFRPE)
Lopez-Codina, D. (ESAB-UPC)
Coelho Jr, C. (DCC-UFMG)
joa@deinfo.ufrpe.br
July 17, 2014
Outline
• The problem
• Related works
• Stochastic model based on system views
• Design scenario analysis
• Some results
• Conclusions and future works
1
Conceptual Level Design
Conceptual System Description
System Specification
Internal System Representation
Codesign Partitioning
Software Behavior Hardware Behavior
RTL, ASIC, DSP, Standard Cell, ...Assembly, C, Java, ...
Traditional
Methodologies
Codesign
2
Design Space
DESIGN
TOOLS
TARGET
DESIGN
SPACE
general−purpose
DSP system
C
C++
JAVA
TECHNOLOGIES
core−basic ASIC
Standard cell
Assembly
Multiprocessor
FPGA
Min cut
Simulated Annealing
manual partitioning
ILP
Scheduling Blocks
Formal verification
CONSTRAINTS
OPTIMIZATIONCost
Area
Power Development time
Reuse
Latency
Re−programability
Technologies + Constraints + Tools
3
Team Space
DESIGN
TOOLS
TARGET
DESIGN
SPACE
general−purpose
DSP system
C
C++
JAVA
TECHNOLOGIES
core−basic ASIC
Standard cell
Assembly
Multiprocessor
FPGA
Min cut
Simulated Annealing
manual partitioning
ILP
Scheduling Blocks
Formal verification
CONSTRAINTS
OPTIMIZATIONCost
Area
Power Development time
Reuse
Latency
Re−programability
TEAMS
Development risk
Changes in teams
Task assignment
Team load
Design times
Group communication
Skills
Technologies + Constraints + Tools + TEAMS
4
The Problem
Analysis + Partitioning
Conceptual Design
Task Assignment Task Implementation
Team Technology Technology Implementation
(HW/SW Codesign)(Team Assignment)
5
Related Works/Tools
• Castle, Chinook, COMET, Cosmos, COSYMA, CoWare, LY-
COS, Polis, PISH, Ptolemy, Symphony, Vulcan
• COSYMA, Chinook, and LYCOS present estimated analysis
and quality profiles
• PISH makes formal verification of the synthesis process
• CASTLE considers teams as designers
• COMET does not require a functionally complete description
in its specification
6
Neglected Aspects
• System is implemented by teams detaining specific technolo-
gies
• No single person has a complete knowledge of the system
• Early design scenarios and risk analysis
• Team load and task assignment
• Process is not adjusted neither tuned during development
7
• IEEE/ACM CODES, group discussion:
”This part of system design is very guru-intense and
tool support is scarse”
Outline
• The problem
• Related works
• Stochastic model based on system views
• Design scenario analysis
• Some results
• Conclusions and future works
8
Team Estimates
• PSP (Personal Software Process, 1995), TSP (Team Soft-
ware Process, 2000)
• PROBE for past task tracking based on linear regression
(range and variance)
• Formally, given a set of historical data for variables x and y,
to determine a likely value yk based on a known or estimated
new value xk we use
yk = β0 + xkβ1,
where the estimating parameters β0 and β1 are calculated
from the historical data
9
Probabilistic Characterization
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
-4 -3 -2 -1 0 1 2 3 4
mu = 0 & sigma = 2/3
mu = 0 & sigma = 1
mu = 0 & sigma = 2
Confidence Degree Standard
Deviation
(σ)
Statistical Seman-
tic
Very High (VH) 3σ = M − µ 99.7% of the values
are in the estimated
range.
High (H) 2σ = M − µ 95.5% of the values
are in the estimated
range.
Low(L) σ = M − µ 68.3% of the values
are in the estimated
range.
10
System Described by Views
• Hierarchical view: static objects and dependencies
• Sequencing view: dynamic constraints
• Development view: development dependencies
11
Network Controller
Host CPU
Memory
DMA-RCVD
RCVD-FRAME RCVD-BUFFER RCVD-BIT
DMA-XMIT XMIT-FRAME XMIT-BIT
ENQUEUE EXEC-UNIT
RXE
RXD
TXE
TXD
Execution Unit
Transmit Unit
Receive Unit
Bus Unit
Hierarchical View
12
Hierarchical Graph
Net Controller
Bus_Unit Receive_
Unit
Transmit_
Unit
Execution_
Unit
DMA-RCVD RCVD-FRAME
RCVD-BUFFER RCVD-BIT
DMA-XMIT XMIT-FRAME
XMIT-BIT
ENQUEUE
EXEC-UNIT
13
Sequencing View
RCVD_BIT:
RXData
RCVD_BUFFER:
RXByte
RCVD_FRAME:
RxFrame
RCVD_DMA:
DMA_write
<1us
BUS UNIT:
bus_dma_write
14
Sequencing Graph
initial_method
final_method
rcvd_bit
rcvd_buffer
rcvd_frame
dma_rcvd
bus_dma_write
bus_dma_read
dma_xmit
xmit_frame
xmit_bit
bus_read/write
enqueue
exec_unit
< 1us < 1.2us
< 5us
0 us
0 us
0.1us
0.1us
0.4us
0.4us
0.1us
0.3us
0.8us
2us
3us
15
Development View
Host CPU
Memory
DMA-RCVD
RCVD-FRAME RCVD-BUFFER RCVD-BIT
DMA-XMIT XMIT-FRAME XMIT-BIT
ENQUEUE EXEC-UNIT
RXE
RXD
TXE
TXD
Execution Unit
Transmit Unit
Receive Unit
Bus Unit
16
Development Graph
R
C
V
D
-
B
I
T
R
C
V
D
-
B
U
F
F
E
R
R
C
V
D
-
F
R
A
M
E
R
C
V
D
-
D
M
A
D
M
A
-
X
M
I
T
X
M
I
T
-
F
R
A
M
E
X
M
I
T
B
I
T
ENQUEUE
EXEC-UNIT
BUS-UNIT
INITIAL-
OBJECT
FINAL-
OBJECT
8 weeks
7 weeks
9 weeks
10 weeks
0 weeks0 weeks
2 weeks 3 weeks 3 weeks
3 weeks 4 weeks
Receive Unit
Transmit_Unit
Execution_Unit
17
The Design Process using System Views
1. The system is described as a collection of interconnected objects (hierarchical
view) in compliance with system’s functional specification;
2. The sequential and development views of the system are determined by the project
manager;
3. The main constraints of the system design are determined and annotated in
their respective views;
4. The system-level model is given to the development teams;
5. The development teams estimate values for each object and method considering
the technology options and the team’s skill;
6. For each design scenario:
The automatic tool will choose the best implementation con-
sidering the
objective function, that must be optimized (cost function), and
the risk
of success for satisfying the design constraints (inference de-
grees).
18
Team Estimates
Objects Team1 L Team2 - H Team3 - VH
pes [2.0,4.0] [2.5,3.5] [0.75,1.25]
inc [2.0,4.0] [3.5,4.5] [1.5,2.5]
alt [2.0,4.0] [1.5,2.5] [1.25,2.75]
con [2.0,4.0] [1.5,2.5] [0.75,1.25]
pes1 [1.0,3.0] [2.5,3.5] [1.25,2.75]
inc1 [0.5,1.5] [0.5,1.5] [0.75,1.25]
alt1 [2.0,4.0] [1.5,2.5] [1.25,2.75]
exec1 [3.0,5.0] [3.0,5.0] [2.5 3.5]
des1 [1.0,3.0] [2.5,3.5] [1.25,2.75]
rea1 [2.0,4.0] [2.0,4.0] [1.25,2.75]
con1 [1.0,3.0] [1.5,2.5] [0.75,1.25]
pes2 [3.0,5.0] [1.5,2.5] [2.5 3.5]
inc2 [2.0,4.0] [1.5,2.5] [0.75,1.25]
alt2 [2.0,4.0] [3.0,5.0] [1.25,2.75]
exec2 [3.0,5.0] [2.0,4.0] [2.5 3.5]
des2 [2.0,4.0] [3.0,5.0] [3.5 4.5]
rea2 [1.0,3.0] [0.5,1.5] [0.75,1.25]
con2 [3.0,5.0] [1.5,2.5] [0.75,1.25]
19
Design Scenarios
• Early design options
• Risk analysis without implementation costs
• Time-to-market
• Implementation cost
• Execution time
• Team load
Mathematical model incorporating system views, team estimates, and risk analysis
20
Mathematical Formulation
SILP - Stochastic Integer Linear Problem
min{
∑
i,j
cijxij}
s.t.
Prob{
∑
j
aijxij ≤ bi} ≥ 1 − αi,
where xij ∈ {0, 1}, aij, bi and cij are random variables, and 0 ≤ αi ≤ 1 represents the
uncertainty that the equation will be satisfied.
21
Constraints: only one initial/final week
• There is only one initial (γijk) and final (Γijk) week for each
object i implemented by team j, i.e.
∀i ∈ Objects, j ∈ Teams
∑
k∈Weeks
γijk = xij;
∀i ∈ Objects, j ∈ Teams
∑
k∈Weeks
Γijk = xij.
22
Constraints: path execution time
• Path execution time. For each path (p) in SG Graph (se-
quencing view), the estimated execution time of the meth-
ods implemented by teams (dmj) in the path must satisfy a
maximum execution time (DIp) with a defined probability of
certainty (1 − αpath). Each method m of object i in path
p ∈ PathsE is represented by a 3-tuple (i, p, m), i.e.
∀P ∈ PathsE, j ∈ Teams
Prob{
∑
(i,p,m)∈P
dmjxij ≤ DIp} ≥ 1 − αpath
23
Constraints: team load
• Maximum load for team j (k1 is the first week). At week k1: team j can be implementing
an object i or not, i.e.
∀i ∈ Objects, j ∈ Teams aijk1 = γijk1 − Γijk1
where, ∀ijΓijk1 = 0. At other weeks: team j can be implementing object i if it begins
in this week (γijk = 1) or it is already implementing it (aij(k−1) = 1) and it did not end
yet (Γijk = 0), i.e.
∀i ∈ Objects, j ∈ Teams, k ∈ Weeks aijk = aij(k−1) + γijk − Γijk
At each week, the maximum load of a team (Λj) must be satisfied, i.e. the entire effort
wasted on all objects by a team at a week must be less or equal to the maximum load
of this team with a defined probability of certainty (1 − αload). Thus,
∀j ∈ Teams, k ∈ Weeks Prob{
∑
i∈Objects
λijaijk ≤ Λj} ≥ 1 − αload
24
Constraints: object assignment
• Object assignment. The final week (Γijk) of an implemen-
tation is greater or equal the development time (tij) plus
the initial week (γijk) with a defined probability of certainty
(1 − αassignment), i.e.
∀i ∈ Objects, j ∈ Teams
Prob{
∑
k∈Weeks
kΓijk ≥ tijxij +
∑
k∈Weeks
kγijk} ≥ 1 − αassignment.
25
Solving SILP
• Exact solution: uniform (0-1 ILP with quadratic number of original variables), gaussian
(non-linear)
• Traditional approaches: expected value formulation (EVF) [Ermolieve,1988]
• All estimates will be under/overestimated in the same way
– each team tends to mantain the same direction on estimates
– uncertainty is high on early stages of design
26
Solving SILP: Extending EVF
• Extended expected value formulation for scenario represen-
tation
• The approximation is
min{
∑
i,j
Prob{cij ≥ 1 − αo}xij}
s.t.
∑
j
Prob{aij ≥ 1 − αi}xij ≤ bi
27
Scenario Representation
aij = (µaij + F−1(1 − αi)σaij),
where F−1(1 − αi) is the inverse CDF for Gaussian distribution:
1 − α = 50% → F−1(1 − αi) = 0
1 − α = 80% → F−1(1 − αi) = 1
1 − α = 97% → F−1(1 − αi) = 2
1 − α = 99% → F−1(1 − αi) = 3
50% 80% 99% x
F(x)
F(x) = CDF of continuos
random variable
28
The Scenario Formulation
• Extending the approximation for design scenarios, and con-
sidering a1 and a2 normally distributed, the constraint
Prob{a1x1 + a2x2 ≤ b} ≥ 1 − α
can be replaced by
(µa1 + F−1(1 − α)σa1)x1 + (µa2 + F−1(1 − α)σa2)x2 ≤ b
29
Design Scenarios Revisited
• Early system design views based on graphs (hierarchical, sequencing - SG, development
- DG)
• Team estimates using PROBE/PSP and confidence degrees (µ, σ)
• Design scenarios varying the objective function (min{
∑
i,j
cijxij})
• Risk analysis varying the α parameter in aij = (µaij + F−1(1 − αi)σaij )
• Partitioning analysis varying constraint inequations and values
30
Outline
• The problem
• Related works
• Stochastic model based on system views
• Design scenario analysis
• Some results
• Conclusions and future works
31
Examples
• MRF (Markov Random Fields), 8 functional objects
• Net Controller, 11 functional objects
• SAR (Synthetic Aperture Radar), 15 functional objects
• Scenario Analysis
– Partitioning
– Risk analysis
– Clustering
– Spiral convergence
– Computational parameters
32
Partitioning Analysis
33
Partitioning Analysis
0 1 2 3 4 5 6 7
0
1
2
3
4
5
6
7
8
9
10
11
NetController: Prob (0.5), minimizing cost
teams
#ofobjects
Dev time = 20
Variables = 3965
Constraints = 1522
USERtime = 0:19.17
0 1 2 3 4 5 6 7
0
1
2
3
4
5
6
7
8
9
10
11
NetController: Prob (0.999), minimizing cost
teams
#ofobjects
Dev time = 15
Variables = 2806
Constraints = 1120
USERtime = 0:11.72s
Minimizing Cost, Prob(1 − α) = 0.5 and Prob(1 − α) = 0.99
34
Risk Analysis
0 5 10 15 20 25 30 35 40 45
0
0.2
0.4
0.6
0.8
1
1.2
NetController: Minimizing Development Time
Weeks/ms/$/manWeeks
Prob(1−alpha)
devTime
execTime
cost
loadTeam
GaussianCDF
0 10 20 30 40 50 60
0
0.2
0.4
0.6
0.8
1
1.2
NetController: Minimizing Cost
Weeks/ms/$/manWeeks
Prob(1−alpha)
devTime
execTime
cost
loadTeam
GaussianCDF
Minimizing Development Time and Cost
35
Risk Analysis
0 10 20 30 40 50 60
0
0.2
0.4
0.6
0.8
1
1.2
NetController: Minimizing Execution Time
Weeks/ms/$/manWeeks
Prob(1−alpha)
devTime
execTime
cost
loadTeam
GaussianCDF
0 10 20 30 40 50 60
0
0.2
0.4
0.6
0.8
1
1.2
NetController: Minimizing Team Load
Weeks/ms/$/manWeeks
Prob(1−alpha)
devTime
execTime
cost
loadTeam
GaussianCDF
Minimizing Execution Time and Team Load
36
Clustering
Risk NetWork Controller - Objects (min Dev Time)
rcvd xmit enqueue exec bit buffer frame xmit b xmit f
0.5 tm1 tm1 tm1 tm1 tm1 tm2 tm3 tm4 tm4
0.8 tm3 tm3 tm3 tm3 tm3 tm6 tm3 tm4 tm4
0.97 tm3 tm3 tm3 tm3 tm3 tm5 tm3 tm4 tm4
0.99 tm6 tm3 tm3 tm4 tm3 tm4 tm4 tm4 tm4
Clustering team assignment when minimizing System Cost
37
Clustering
Risk NetWork Controller - Objects (min Dev Time)
rcvd xmit enqueue exec bit buffer frame xmit b xmit f
0.5 tm6 tm1 tm6 tm4 tm1 tm6 tm6 tm6 tm1
0.8 tm6 tm1 tm6 tm4 tm5 tm6 tm5 tm4 tm5
0.97 tm3 tm1 tm6 tm4 tm3 tm6 tm5 tm5 tm5
0.99 tm6 tm3 tm3 tm4 tm3 tm6 tm5 tm5 tm6
Clustering team assignment when minimizing Execution Time
38
Convergence Analysis
1 2 6 9 11 i
P(i)
i
P(i)
2 2 3 4 1195
Minimizing Development Time and Execution Time
39
Computational Parameters
Times for first iteration
Case-Study Num.variables Num.constraints Iterations USER Time (h:m:s)
MRF 2852 1089 13890 00:01:02
NET 3965 1462 38576 00:03:32
SAR 7260 2690 187808 01:16:21
Constraints = O(objects × weeks × teams)
40
Conclusions
• A stochastic model to system design by teams and multiple
technologies on conceptual level
• Interactive partitioning using design manager decisions based
on clustering scenarios
• Clustering scenarios to refine the process and minimize the
SILP problem at each iteration, reducing the computational
time
41
Contributions
• A stochastic model for system design by teams
• An approach with confidence degrees to model risk analysis and team aspects
• System description by views on early stages (conceptual level design)
• A mathematical formulation for partitioning with multiple technologies
• An extended expected value formulation to represent design scenarios
• Interactive and iterative partitioning using clustering to refine the process and to reduce
the SILP problem
• Design scenarios representing partitioning options, uncertainty, team aspects and design
constraints
42
At Work
• Applying in real industry: PINTO FILHO, K. V. ; BOCANEGRA, S. ; ALBUQUERQUE,
J. . Uma proposta de modelagem para o calculo de reservas de contingencia e gerencial
em projetos de software usando programacao linear inteira estocastica DOI 10.5752/P.2316-
9451.2012v1n1p50. Abakos, v. 1, p. 50-74, 2012.
• Integrating conceptual level design in a commercial tool (FACEPE - 2013-2015)
• Solving SILP: other approximations, Interior Points, and parallel strategies
• Other mathematical formulations for the conceptual level design problem and heuristics
43
Aknowledgements
• This work was [partially] supported by the National Insti-
tute of Science and Technology for Software Engineering
(www.ines.org.br), funded by CNPq and FACEPE, grants
573964/2008-4 and APQ-1037-1.03/08.
44

More Related Content

What's hot

Playing Atari with Deep Reinforcement Learning
Playing Atari with Deep Reinforcement LearningPlaying Atari with Deep Reinforcement Learning
Playing Atari with Deep Reinforcement Learning
Willy Marroquin (WillyDevNET)
 
Deep Convolutional GANs - meaning of latent space
Deep Convolutional GANs - meaning of latent spaceDeep Convolutional GANs - meaning of latent space
Deep Convolutional GANs - meaning of latent space
Hansol Kang
 
Generative adversarial networks
Generative adversarial networksGenerative adversarial networks
Generative adversarial networks
남주 김
 
SIAM SEAS Talk Slides
SIAM SEAS Talk SlidesSIAM SEAS Talk Slides
SIAM SEAS Talk Slides
Ryan White
 
safe and efficient off policy reinforcement learning
safe and efficient off policy reinforcement learningsafe and efficient off policy reinforcement learning
safe and efficient off policy reinforcement learning
Ryo Iwaki
 
쉽게 설명하는 GAN (What is this? Gum? It's GAN.)
쉽게 설명하는 GAN (What is this? Gum? It's GAN.)쉽게 설명하는 GAN (What is this? Gum? It's GAN.)
쉽게 설명하는 GAN (What is this? Gum? It's GAN.)
Hansol Kang
 
Photo-realistic Single Image Super-resolution using a Generative Adversarial ...
Photo-realistic Single Image Super-resolution using a Generative Adversarial ...Photo-realistic Single Image Super-resolution using a Generative Adversarial ...
Photo-realistic Single Image Super-resolution using a Generative Adversarial ...
Hansol Kang
 
PyTorch 튜토리얼 (Touch to PyTorch)
PyTorch 튜토리얼 (Touch to PyTorch)PyTorch 튜토리얼 (Touch to PyTorch)
PyTorch 튜토리얼 (Touch to PyTorch)
Hansol Kang
 
Introduction to Big Data Science
Introduction to Big Data ScienceIntroduction to Big Data Science
Introduction to Big Data Science
Albert Bifet
 
EuroPython 2017 - PyData - Deep Learning your Broadband Network @ HOME
EuroPython 2017 - PyData - Deep Learning your Broadband Network @ HOMEEuroPython 2017 - PyData - Deep Learning your Broadband Network @ HOME
EuroPython 2017 - PyData - Deep Learning your Broadband Network @ HOME
HONGJOO LEE
 
Variational Autoencoder
Variational AutoencoderVariational Autoencoder
Variational Autoencoder
Mark Chang
 
Gradient descent optimizer
Gradient descent optimizerGradient descent optimizer
Gradient descent optimizer
Hojin Yang
 
Adversarial learning for neural dialogue generation
Adversarial learning for neural dialogue generationAdversarial learning for neural dialogue generation
Adversarial learning for neural dialogue generation
Keon Kim
 
Large scale logistic regression and linear support vector machines using spark
Large scale logistic regression and linear support vector machines using sparkLarge scale logistic regression and linear support vector machines using spark
Large scale logistic regression and linear support vector machines using spark
Mila, Université de Montréal
 
pycon2018 "RL Adventure : DQN 부터 Rainbow DQN까지"
pycon2018 "RL Adventure : DQN 부터 Rainbow DQN까지"pycon2018 "RL Adventure : DQN 부터 Rainbow DQN까지"
pycon2018 "RL Adventure : DQN 부터 Rainbow DQN까지"
YeChan(Paul) Kim
 
Nx tutorial basics
Nx tutorial basicsNx tutorial basics
Nx tutorial basics
Deepakshankar S
 
TensorFlow Dev Summit 2018 Extended: TensorFlow Eager Execution
TensorFlow Dev Summit 2018 Extended: TensorFlow Eager ExecutionTensorFlow Dev Summit 2018 Extended: TensorFlow Eager Execution
TensorFlow Dev Summit 2018 Extended: TensorFlow Eager Execution
Taegyun Jeon
 
is anyone_interest_in_auto-encoding_variational-bayes
is anyone_interest_in_auto-encoding_variational-bayesis anyone_interest_in_auto-encoding_variational-bayes
is anyone_interest_in_auto-encoding_variational-bayes
NAVER Engineering
 
[GAN by Hung-yi Lee]Part 1: General introduction of GAN
[GAN by Hung-yi Lee]Part 1: General introduction of GAN[GAN by Hung-yi Lee]Part 1: General introduction of GAN
[GAN by Hung-yi Lee]Part 1: General introduction of GAN
NAVER Engineering
 
QMIX: monotonic value function factorization paper review
QMIX: monotonic value function factorization paper reviewQMIX: monotonic value function factorization paper review
QMIX: monotonic value function factorization paper review
민재 정
 

What's hot (20)

Playing Atari with Deep Reinforcement Learning
Playing Atari with Deep Reinforcement LearningPlaying Atari with Deep Reinforcement Learning
Playing Atari with Deep Reinforcement Learning
 
Deep Convolutional GANs - meaning of latent space
Deep Convolutional GANs - meaning of latent spaceDeep Convolutional GANs - meaning of latent space
Deep Convolutional GANs - meaning of latent space
 
Generative adversarial networks
Generative adversarial networksGenerative adversarial networks
Generative adversarial networks
 
SIAM SEAS Talk Slides
SIAM SEAS Talk SlidesSIAM SEAS Talk Slides
SIAM SEAS Talk Slides
 
safe and efficient off policy reinforcement learning
safe and efficient off policy reinforcement learningsafe and efficient off policy reinforcement learning
safe and efficient off policy reinforcement learning
 
쉽게 설명하는 GAN (What is this? Gum? It's GAN.)
쉽게 설명하는 GAN (What is this? Gum? It's GAN.)쉽게 설명하는 GAN (What is this? Gum? It's GAN.)
쉽게 설명하는 GAN (What is this? Gum? It's GAN.)
 
Photo-realistic Single Image Super-resolution using a Generative Adversarial ...
Photo-realistic Single Image Super-resolution using a Generative Adversarial ...Photo-realistic Single Image Super-resolution using a Generative Adversarial ...
Photo-realistic Single Image Super-resolution using a Generative Adversarial ...
 
PyTorch 튜토리얼 (Touch to PyTorch)
PyTorch 튜토리얼 (Touch to PyTorch)PyTorch 튜토리얼 (Touch to PyTorch)
PyTorch 튜토리얼 (Touch to PyTorch)
 
Introduction to Big Data Science
Introduction to Big Data ScienceIntroduction to Big Data Science
Introduction to Big Data Science
 
EuroPython 2017 - PyData - Deep Learning your Broadband Network @ HOME
EuroPython 2017 - PyData - Deep Learning your Broadband Network @ HOMEEuroPython 2017 - PyData - Deep Learning your Broadband Network @ HOME
EuroPython 2017 - PyData - Deep Learning your Broadband Network @ HOME
 
Variational Autoencoder
Variational AutoencoderVariational Autoencoder
Variational Autoencoder
 
Gradient descent optimizer
Gradient descent optimizerGradient descent optimizer
Gradient descent optimizer
 
Adversarial learning for neural dialogue generation
Adversarial learning for neural dialogue generationAdversarial learning for neural dialogue generation
Adversarial learning for neural dialogue generation
 
Large scale logistic regression and linear support vector machines using spark
Large scale logistic regression and linear support vector machines using sparkLarge scale logistic regression and linear support vector machines using spark
Large scale logistic regression and linear support vector machines using spark
 
pycon2018 "RL Adventure : DQN 부터 Rainbow DQN까지"
pycon2018 "RL Adventure : DQN 부터 Rainbow DQN까지"pycon2018 "RL Adventure : DQN 부터 Rainbow DQN까지"
pycon2018 "RL Adventure : DQN 부터 Rainbow DQN까지"
 
Nx tutorial basics
Nx tutorial basicsNx tutorial basics
Nx tutorial basics
 
TensorFlow Dev Summit 2018 Extended: TensorFlow Eager Execution
TensorFlow Dev Summit 2018 Extended: TensorFlow Eager ExecutionTensorFlow Dev Summit 2018 Extended: TensorFlow Eager Execution
TensorFlow Dev Summit 2018 Extended: TensorFlow Eager Execution
 
is anyone_interest_in_auto-encoding_variational-bayes
is anyone_interest_in_auto-encoding_variational-bayesis anyone_interest_in_auto-encoding_variational-bayes
is anyone_interest_in_auto-encoding_variational-bayes
 
[GAN by Hung-yi Lee]Part 1: General introduction of GAN
[GAN by Hung-yi Lee]Part 1: General introduction of GAN[GAN by Hung-yi Lee]Part 1: General introduction of GAN
[GAN by Hung-yi Lee]Part 1: General introduction of GAN
 
QMIX: monotonic value function factorization paper review
QMIX: monotonic value function factorization paper reviewQMIX: monotonic value function factorization paper review
QMIX: monotonic value function factorization paper review
 

Viewers also liked

is the world a computation of... us?
is the world a computation of... us?is the world a computation of... us?
is the world a computation of... us?
Jones Albuquerque
 
Universidade irrelevante? o caso ufrpe
Universidade irrelevante? o caso ufrpeUniversidade irrelevante? o caso ufrpe
Universidade irrelevante? o caso ufrpe
Jones Albuquerque
 
Computational Epidemiology as a scientific computing area: cellular automata ...
Computational Epidemiology as a scientific computing area: cellular automata ...Computational Epidemiology as a scientific computing area: cellular automata ...
Computational Epidemiology as a scientific computing area: cellular automata ...
Jones Albuquerque
 
Codigos maquinas linguagens... E triathlon ;-) TUDO é software?
Codigos maquinas linguagens... E triathlon ;-) TUDO é software?Codigos maquinas linguagens... E triathlon ;-) TUDO é software?
Codigos maquinas linguagens... E triathlon ;-) TUDO é software?
Jones Albuquerque
 
Codes languages, machines and synthetic biology and one case LIKA-CESAR-BRAZIL
Codes languages, machines and synthetic biology and one case LIKA-CESAR-BRAZILCodes languages, machines and synthetic biology and one case LIKA-CESAR-BRAZIL
Codes languages, machines and synthetic biology and one case LIKA-CESAR-BRAZIL
Jones Albuquerque
 
Synthetic biology in a computer science view
Synthetic biology in a computer science viewSynthetic biology in a computer science view
Synthetic biology in a computer science view
Jones Albuquerque
 
Introdução a Gerência de Configuração de Software
Introdução a Gerência de Configuração de SoftwareIntrodução a Gerência de Configuração de Software
Introdução a Gerência de Configuração de Software
Camilo Almendra
 
ISI TICs - SENAI INSTITUTES and status - english version v3
ISI TICs - SENAI INSTITUTES and status - english version v3ISI TICs - SENAI INSTITUTES and status - english version v3
ISI TICs - SENAI INSTITUTES and status - english version v3
Jones Albuquerque
 

Viewers also liked (8)

is the world a computation of... us?
is the world a computation of... us?is the world a computation of... us?
is the world a computation of... us?
 
Universidade irrelevante? o caso ufrpe
Universidade irrelevante? o caso ufrpeUniversidade irrelevante? o caso ufrpe
Universidade irrelevante? o caso ufrpe
 
Computational Epidemiology as a scientific computing area: cellular automata ...
Computational Epidemiology as a scientific computing area: cellular automata ...Computational Epidemiology as a scientific computing area: cellular automata ...
Computational Epidemiology as a scientific computing area: cellular automata ...
 
Codigos maquinas linguagens... E triathlon ;-) TUDO é software?
Codigos maquinas linguagens... E triathlon ;-) TUDO é software?Codigos maquinas linguagens... E triathlon ;-) TUDO é software?
Codigos maquinas linguagens... E triathlon ;-) TUDO é software?
 
Codes languages, machines and synthetic biology and one case LIKA-CESAR-BRAZIL
Codes languages, machines and synthetic biology and one case LIKA-CESAR-BRAZILCodes languages, machines and synthetic biology and one case LIKA-CESAR-BRAZIL
Codes languages, machines and synthetic biology and one case LIKA-CESAR-BRAZIL
 
Synthetic biology in a computer science view
Synthetic biology in a computer science viewSynthetic biology in a computer science view
Synthetic biology in a computer science view
 
Introdução a Gerência de Configuração de Software
Introdução a Gerência de Configuração de SoftwareIntrodução a Gerência de Configuração de Software
Introdução a Gerência de Configuração de Software
 
ISI TICs - SENAI INSTITUTES and status - english version v3
ISI TICs - SENAI INSTITUTES and status - english version v3ISI TICs - SENAI INSTITUTES and status - english version v3
ISI TICs - SENAI INSTITUTES and status - english version v3
 

Similar to Managing Uncertainties in Hardware-Software Codesign Projects

Learning to Project and Binarise for Hashing-based Approximate Nearest Neighb...
Learning to Project and Binarise for Hashing-based Approximate Nearest Neighb...Learning to Project and Binarise for Hashing-based Approximate Nearest Neighb...
Learning to Project and Binarise for Hashing-based Approximate Nearest Neighb...
Sean Moran
 
Gradient Boosted Regression Trees in Scikit Learn by Gilles Louppe & Peter Pr...
Gradient Boosted Regression Trees in Scikit Learn by Gilles Louppe & Peter Pr...Gradient Boosted Regression Trees in Scikit Learn by Gilles Louppe & Peter Pr...
Gradient Boosted Regression Trees in Scikit Learn by Gilles Louppe & Peter Pr...
PyData
 
Software Defect Prediction on Unlabeled Datasets
Software Defect Prediction on Unlabeled DatasetsSoftware Defect Prediction on Unlabeled Datasets
Software Defect Prediction on Unlabeled Datasets
Sung Kim
 
Transfer Learning for Improving Model Predictions in Highly Configurable Soft...
Transfer Learning for Improving Model Predictions in Highly Configurable Soft...Transfer Learning for Improving Model Predictions in Highly Configurable Soft...
Transfer Learning for Improving Model Predictions in Highly Configurable Soft...
Pooyan Jamshidi
 
Yulia Honcharenko "Application of metric learning for logo recognition"
Yulia Honcharenko "Application of metric learning for logo recognition"Yulia Honcharenko "Application of metric learning for logo recognition"
Yulia Honcharenko "Application of metric learning for logo recognition"
Fwdays
 
"Let us talk about output features! by Florence d’Alché-Buc, LTCI & Full Prof...
"Let us talk about output features! by Florence d’Alché-Buc, LTCI & Full Prof..."Let us talk about output features! by Florence d’Alché-Buc, LTCI & Full Prof...
"Let us talk about output features! by Florence d’Alché-Buc, LTCI & Full Prof...
Paris Women in Machine Learning and Data Science
 
Introduction to Chainer Chemistry
Introduction to Chainer ChemistryIntroduction to Chainer Chemistry
Introduction to Chainer Chemistry
Preferred Networks
 
EE660_Report_YaxinLiu_8448347171
EE660_Report_YaxinLiu_8448347171EE660_Report_YaxinLiu_8448347171
EE660_Report_YaxinLiu_8448347171
Yaxin Liu
 
CSC446: Pattern Recognition (LN6)
CSC446: Pattern Recognition (LN6)CSC446: Pattern Recognition (LN6)
CSC446: Pattern Recognition (LN6)
Mostafa G. M. Mostafa
 
Gradient Boosted Regression Trees in scikit-learn
Gradient Boosted Regression Trees in scikit-learnGradient Boosted Regression Trees in scikit-learn
Gradient Boosted Regression Trees in scikit-learn
DataRobot
 
Hanjun Dai, PhD Student, School of Computational Science and Engineering, Geo...
Hanjun Dai, PhD Student, School of Computational Science and Engineering, Geo...Hanjun Dai, PhD Student, School of Computational Science and Engineering, Geo...
Hanjun Dai, PhD Student, School of Computational Science and Engineering, Geo...
MLconf
 
ppt - Deep Learning From Scratch.pdf
ppt - Deep Learning From Scratch.pdfppt - Deep Learning From Scratch.pdf
ppt - Deep Learning From Scratch.pdf
surefooted
 
Neural networks
Neural networksNeural networks
Neural networks
HarshitGupta367
 
机器学习Adaboost
机器学习Adaboost机器学习Adaboost
机器学习Adaboost
Shocky1
 
Julia Kreutzer - 2017 - Bandit Structured Prediction for Neural Seq2Seq Learning
Julia Kreutzer - 2017 - Bandit Structured Prediction for Neural Seq2Seq LearningJulia Kreutzer - 2017 - Bandit Structured Prediction for Neural Seq2Seq Learning
Julia Kreutzer - 2017 - Bandit Structured Prediction for Neural Seq2Seq Learning
Association for Computational Linguistics
 
Genetic Algorithms
Genetic AlgorithmsGenetic Algorithms
Genetic Algorithms
Oğuzhan TAŞ Akademi
 
[PR12] PR-036 Learning to Remember Rare Events
[PR12] PR-036 Learning to Remember Rare Events[PR12] PR-036 Learning to Remember Rare Events
[PR12] PR-036 Learning to Remember Rare Events
Taegyun Jeon
 
CLIM Program: Remote Sensing Workshop, Optimization for Distributed Data Syst...
CLIM Program: Remote Sensing Workshop, Optimization for Distributed Data Syst...CLIM Program: Remote Sensing Workshop, Optimization for Distributed Data Syst...
CLIM Program: Remote Sensing Workshop, Optimization for Distributed Data Syst...
The Statistical and Applied Mathematical Sciences Institute
 
Transfer Learning for Performance Analysis of Highly-Configurable Software
Transfer Learning for Performance Analysis of Highly-Configurable SoftwareTransfer Learning for Performance Analysis of Highly-Configurable Software
Transfer Learning for Performance Analysis of Highly-Configurable Software
Pooyan Jamshidi
 
Effort estimation1
Effort estimation1Effort estimation1
Effort estimation1
vvffdardgrjutuf
 

Similar to Managing Uncertainties in Hardware-Software Codesign Projects (20)

Learning to Project and Binarise for Hashing-based Approximate Nearest Neighb...
Learning to Project and Binarise for Hashing-based Approximate Nearest Neighb...Learning to Project and Binarise for Hashing-based Approximate Nearest Neighb...
Learning to Project and Binarise for Hashing-based Approximate Nearest Neighb...
 
Gradient Boosted Regression Trees in Scikit Learn by Gilles Louppe & Peter Pr...
Gradient Boosted Regression Trees in Scikit Learn by Gilles Louppe & Peter Pr...Gradient Boosted Regression Trees in Scikit Learn by Gilles Louppe & Peter Pr...
Gradient Boosted Regression Trees in Scikit Learn by Gilles Louppe & Peter Pr...
 
Software Defect Prediction on Unlabeled Datasets
Software Defect Prediction on Unlabeled DatasetsSoftware Defect Prediction on Unlabeled Datasets
Software Defect Prediction on Unlabeled Datasets
 
Transfer Learning for Improving Model Predictions in Highly Configurable Soft...
Transfer Learning for Improving Model Predictions in Highly Configurable Soft...Transfer Learning for Improving Model Predictions in Highly Configurable Soft...
Transfer Learning for Improving Model Predictions in Highly Configurable Soft...
 
Yulia Honcharenko "Application of metric learning for logo recognition"
Yulia Honcharenko "Application of metric learning for logo recognition"Yulia Honcharenko "Application of metric learning for logo recognition"
Yulia Honcharenko "Application of metric learning for logo recognition"
 
"Let us talk about output features! by Florence d’Alché-Buc, LTCI & Full Prof...
"Let us talk about output features! by Florence d’Alché-Buc, LTCI & Full Prof..."Let us talk about output features! by Florence d’Alché-Buc, LTCI & Full Prof...
"Let us talk about output features! by Florence d’Alché-Buc, LTCI & Full Prof...
 
Introduction to Chainer Chemistry
Introduction to Chainer ChemistryIntroduction to Chainer Chemistry
Introduction to Chainer Chemistry
 
EE660_Report_YaxinLiu_8448347171
EE660_Report_YaxinLiu_8448347171EE660_Report_YaxinLiu_8448347171
EE660_Report_YaxinLiu_8448347171
 
CSC446: Pattern Recognition (LN6)
CSC446: Pattern Recognition (LN6)CSC446: Pattern Recognition (LN6)
CSC446: Pattern Recognition (LN6)
 
Gradient Boosted Regression Trees in scikit-learn
Gradient Boosted Regression Trees in scikit-learnGradient Boosted Regression Trees in scikit-learn
Gradient Boosted Regression Trees in scikit-learn
 
Hanjun Dai, PhD Student, School of Computational Science and Engineering, Geo...
Hanjun Dai, PhD Student, School of Computational Science and Engineering, Geo...Hanjun Dai, PhD Student, School of Computational Science and Engineering, Geo...
Hanjun Dai, PhD Student, School of Computational Science and Engineering, Geo...
 
ppt - Deep Learning From Scratch.pdf
ppt - Deep Learning From Scratch.pdfppt - Deep Learning From Scratch.pdf
ppt - Deep Learning From Scratch.pdf
 
Neural networks
Neural networksNeural networks
Neural networks
 
机器学习Adaboost
机器学习Adaboost机器学习Adaboost
机器学习Adaboost
 
Julia Kreutzer - 2017 - Bandit Structured Prediction for Neural Seq2Seq Learning
Julia Kreutzer - 2017 - Bandit Structured Prediction for Neural Seq2Seq LearningJulia Kreutzer - 2017 - Bandit Structured Prediction for Neural Seq2Seq Learning
Julia Kreutzer - 2017 - Bandit Structured Prediction for Neural Seq2Seq Learning
 
Genetic Algorithms
Genetic AlgorithmsGenetic Algorithms
Genetic Algorithms
 
[PR12] PR-036 Learning to Remember Rare Events
[PR12] PR-036 Learning to Remember Rare Events[PR12] PR-036 Learning to Remember Rare Events
[PR12] PR-036 Learning to Remember Rare Events
 
CLIM Program: Remote Sensing Workshop, Optimization for Distributed Data Syst...
CLIM Program: Remote Sensing Workshop, Optimization for Distributed Data Syst...CLIM Program: Remote Sensing Workshop, Optimization for Distributed Data Syst...
CLIM Program: Remote Sensing Workshop, Optimization for Distributed Data Syst...
 
Transfer Learning for Performance Analysis of Highly-Configurable Software
Transfer Learning for Performance Analysis of Highly-Configurable SoftwareTransfer Learning for Performance Analysis of Highly-Configurable Software
Transfer Learning for Performance Analysis of Highly-Configurable Software
 
Effort estimation1
Effort estimation1Effort estimation1
Effort estimation1
 

Recently uploaded

Quality assurance B.pharm 6th semester BP606T UNIT 5
Quality assurance B.pharm 6th semester BP606T UNIT 5Quality assurance B.pharm 6th semester BP606T UNIT 5
Quality assurance B.pharm 6th semester BP606T UNIT 5
vimalveerammal
 
Introduction_Ch_01_Biotech Biotechnology course .pptx
Introduction_Ch_01_Biotech Biotechnology course .pptxIntroduction_Ch_01_Biotech Biotechnology course .pptx
Introduction_Ch_01_Biotech Biotechnology course .pptx
QusayMaghayerh
 
TOPIC OF DISCUSSION: CENTRIFUGATION SLIDESHARE.pptx
TOPIC OF DISCUSSION: CENTRIFUGATION SLIDESHARE.pptxTOPIC OF DISCUSSION: CENTRIFUGATION SLIDESHARE.pptx
TOPIC OF DISCUSSION: CENTRIFUGATION SLIDESHARE.pptx
shubhijain836
 
Signatures of wave erosion in Titan’s coasts
Signatures of wave erosion in Titan’s coastsSignatures of wave erosion in Titan’s coasts
Signatures of wave erosion in Titan’s coasts
Sérgio Sacani
 
Holsinger, Bruce W. - Music, body and desire in medieval culture [2001].pdf
Holsinger, Bruce W. - Music, body and desire in medieval culture [2001].pdfHolsinger, Bruce W. - Music, body and desire in medieval culture [2001].pdf
Holsinger, Bruce W. - Music, body and desire in medieval culture [2001].pdf
frank0071
 
Candidate young stellar objects in the S-cluster: Kinematic analysis of a sub...
Candidate young stellar objects in the S-cluster: Kinematic analysis of a sub...Candidate young stellar objects in the S-cluster: Kinematic analysis of a sub...
Candidate young stellar objects in the S-cluster: Kinematic analysis of a sub...
Sérgio Sacani
 
Firoozeh Kashani-Sabet - An Esteemed Professor
Firoozeh Kashani-Sabet - An Esteemed ProfessorFiroozeh Kashani-Sabet - An Esteemed Professor
Firoozeh Kashani-Sabet - An Esteemed Professor
Firoozeh Kashani-Sabet
 
2001_Book_HumanChromosomes - Genéticapdf
2001_Book_HumanChromosomes - Genéticapdf2001_Book_HumanChromosomes - Genéticapdf
2001_Book_HumanChromosomes - Genéticapdf
lucianamillenium
 
Methods of grain storage Structures in India.pdf
Methods of grain storage Structures in India.pdfMethods of grain storage Structures in India.pdf
Methods of grain storage Structures in India.pdf
PirithiRaju
 
BIRDS DIVERSITY OF SOOTEA BISWANATH ASSAM.ppt.pptx
BIRDS  DIVERSITY OF SOOTEA BISWANATH ASSAM.ppt.pptxBIRDS  DIVERSITY OF SOOTEA BISWANATH ASSAM.ppt.pptx
BIRDS DIVERSITY OF SOOTEA BISWANATH ASSAM.ppt.pptx
goluk9330
 
Compositions of iron-meteorite parent bodies constrainthe structure of the pr...
Compositions of iron-meteorite parent bodies constrainthe structure of the pr...Compositions of iron-meteorite parent bodies constrainthe structure of the pr...
Compositions of iron-meteorite parent bodies constrainthe structure of the pr...
Sérgio Sacani
 
GBSN - Microbiology (Unit 2) Antimicrobial agents
GBSN - Microbiology (Unit 2) Antimicrobial agentsGBSN - Microbiology (Unit 2) Antimicrobial agents
GBSN - Microbiology (Unit 2) Antimicrobial agents
Areesha Ahmad
 
Analysis of Polygenic Traits (GPB-602)
Analysis of Polygenic Traits (GPB-602)Analysis of Polygenic Traits (GPB-602)
Analysis of Polygenic Traits (GPB-602)
PABOLU TEJASREE
 
acanthocytes_causes_etiology_clinical sognificance-future.pptx
acanthocytes_causes_etiology_clinical sognificance-future.pptxacanthocytes_causes_etiology_clinical sognificance-future.pptx
acanthocytes_causes_etiology_clinical sognificance-future.pptx
muralinath2
 
Farming systems analysis: what have we learnt?.pptx
Farming systems analysis: what have we learnt?.pptxFarming systems analysis: what have we learnt?.pptx
Farming systems analysis: what have we learnt?.pptx
Frédéric Baudron
 
Juaristi, Jon. - El canon espanol. El legado de la cultura española a la civi...
Juaristi, Jon. - El canon espanol. El legado de la cultura española a la civi...Juaristi, Jon. - El canon espanol. El legado de la cultura española a la civi...
Juaristi, Jon. - El canon espanol. El legado de la cultura española a la civi...
frank0071
 
Evidence of Jet Activity from the Secondary Black Hole in the OJ 287 Binary S...
Evidence of Jet Activity from the Secondary Black Hole in the OJ 287 Binary S...Evidence of Jet Activity from the Secondary Black Hole in the OJ 287 Binary S...
Evidence of Jet Activity from the Secondary Black Hole in the OJ 287 Binary S...
Sérgio Sacani
 
Anti-Universe And Emergent Gravity and the Dark Universe
Anti-Universe And Emergent Gravity and the Dark UniverseAnti-Universe And Emergent Gravity and the Dark Universe
Anti-Universe And Emergent Gravity and the Dark Universe
Sérgio Sacani
 
Explainable Deepfake Image/Video Detection
Explainable Deepfake Image/Video DetectionExplainable Deepfake Image/Video Detection
Explainable Deepfake Image/Video Detection
VasileiosMezaris
 
The Powders And The Granules 123456.pptx
The Powders And The Granules 123456.pptxThe Powders And The Granules 123456.pptx
The Powders And The Granules 123456.pptx
sanjeevkhanal2
 

Recently uploaded (20)

Quality assurance B.pharm 6th semester BP606T UNIT 5
Quality assurance B.pharm 6th semester BP606T UNIT 5Quality assurance B.pharm 6th semester BP606T UNIT 5
Quality assurance B.pharm 6th semester BP606T UNIT 5
 
Introduction_Ch_01_Biotech Biotechnology course .pptx
Introduction_Ch_01_Biotech Biotechnology course .pptxIntroduction_Ch_01_Biotech Biotechnology course .pptx
Introduction_Ch_01_Biotech Biotechnology course .pptx
 
TOPIC OF DISCUSSION: CENTRIFUGATION SLIDESHARE.pptx
TOPIC OF DISCUSSION: CENTRIFUGATION SLIDESHARE.pptxTOPIC OF DISCUSSION: CENTRIFUGATION SLIDESHARE.pptx
TOPIC OF DISCUSSION: CENTRIFUGATION SLIDESHARE.pptx
 
Signatures of wave erosion in Titan’s coasts
Signatures of wave erosion in Titan’s coastsSignatures of wave erosion in Titan’s coasts
Signatures of wave erosion in Titan’s coasts
 
Holsinger, Bruce W. - Music, body and desire in medieval culture [2001].pdf
Holsinger, Bruce W. - Music, body and desire in medieval culture [2001].pdfHolsinger, Bruce W. - Music, body and desire in medieval culture [2001].pdf
Holsinger, Bruce W. - Music, body and desire in medieval culture [2001].pdf
 
Candidate young stellar objects in the S-cluster: Kinematic analysis of a sub...
Candidate young stellar objects in the S-cluster: Kinematic analysis of a sub...Candidate young stellar objects in the S-cluster: Kinematic analysis of a sub...
Candidate young stellar objects in the S-cluster: Kinematic analysis of a sub...
 
Firoozeh Kashani-Sabet - An Esteemed Professor
Firoozeh Kashani-Sabet - An Esteemed ProfessorFiroozeh Kashani-Sabet - An Esteemed Professor
Firoozeh Kashani-Sabet - An Esteemed Professor
 
2001_Book_HumanChromosomes - Genéticapdf
2001_Book_HumanChromosomes - Genéticapdf2001_Book_HumanChromosomes - Genéticapdf
2001_Book_HumanChromosomes - Genéticapdf
 
Methods of grain storage Structures in India.pdf
Methods of grain storage Structures in India.pdfMethods of grain storage Structures in India.pdf
Methods of grain storage Structures in India.pdf
 
BIRDS DIVERSITY OF SOOTEA BISWANATH ASSAM.ppt.pptx
BIRDS  DIVERSITY OF SOOTEA BISWANATH ASSAM.ppt.pptxBIRDS  DIVERSITY OF SOOTEA BISWANATH ASSAM.ppt.pptx
BIRDS DIVERSITY OF SOOTEA BISWANATH ASSAM.ppt.pptx
 
Compositions of iron-meteorite parent bodies constrainthe structure of the pr...
Compositions of iron-meteorite parent bodies constrainthe structure of the pr...Compositions of iron-meteorite parent bodies constrainthe structure of the pr...
Compositions of iron-meteorite parent bodies constrainthe structure of the pr...
 
GBSN - Microbiology (Unit 2) Antimicrobial agents
GBSN - Microbiology (Unit 2) Antimicrobial agentsGBSN - Microbiology (Unit 2) Antimicrobial agents
GBSN - Microbiology (Unit 2) Antimicrobial agents
 
Analysis of Polygenic Traits (GPB-602)
Analysis of Polygenic Traits (GPB-602)Analysis of Polygenic Traits (GPB-602)
Analysis of Polygenic Traits (GPB-602)
 
acanthocytes_causes_etiology_clinical sognificance-future.pptx
acanthocytes_causes_etiology_clinical sognificance-future.pptxacanthocytes_causes_etiology_clinical sognificance-future.pptx
acanthocytes_causes_etiology_clinical sognificance-future.pptx
 
Farming systems analysis: what have we learnt?.pptx
Farming systems analysis: what have we learnt?.pptxFarming systems analysis: what have we learnt?.pptx
Farming systems analysis: what have we learnt?.pptx
 
Juaristi, Jon. - El canon espanol. El legado de la cultura española a la civi...
Juaristi, Jon. - El canon espanol. El legado de la cultura española a la civi...Juaristi, Jon. - El canon espanol. El legado de la cultura española a la civi...
Juaristi, Jon. - El canon espanol. El legado de la cultura española a la civi...
 
Evidence of Jet Activity from the Secondary Black Hole in the OJ 287 Binary S...
Evidence of Jet Activity from the Secondary Black Hole in the OJ 287 Binary S...Evidence of Jet Activity from the Secondary Black Hole in the OJ 287 Binary S...
Evidence of Jet Activity from the Secondary Black Hole in the OJ 287 Binary S...
 
Anti-Universe And Emergent Gravity and the Dark Universe
Anti-Universe And Emergent Gravity and the Dark UniverseAnti-Universe And Emergent Gravity and the Dark Universe
Anti-Universe And Emergent Gravity and the Dark Universe
 
Explainable Deepfake Image/Video Detection
Explainable Deepfake Image/Video DetectionExplainable Deepfake Image/Video Detection
Explainable Deepfake Image/Video Detection
 
The Powders And The Granules 123456.pptx
The Powders And The Granules 123456.pptxThe Powders And The Granules 123456.pptx
The Powders And The Granules 123456.pptx
 

Managing Uncertainties in Hardware-Software Codesign Projects

  • 1. Managing Uncertainties in Hardware-Software Codesign Projects Jones Albuquerque (DEINFO-UFRPE) Ferrer-Savall, J. (ESAB-UPC) Bocanegra, S. (DEINFO-UFRPE) Ferreira, T. (DEINFO-UFRPE) Lopez-Codina, D. (ESAB-UPC) Coelho Jr, C. (DCC-UFMG) joa@deinfo.ufrpe.br July 17, 2014
  • 2. Outline • The problem • Related works • Stochastic model based on system views • Design scenario analysis • Some results • Conclusions and future works 1
  • 3. Conceptual Level Design Conceptual System Description System Specification Internal System Representation Codesign Partitioning Software Behavior Hardware Behavior RTL, ASIC, DSP, Standard Cell, ...Assembly, C, Java, ... Traditional Methodologies Codesign 2
  • 4. Design Space DESIGN TOOLS TARGET DESIGN SPACE general−purpose DSP system C C++ JAVA TECHNOLOGIES core−basic ASIC Standard cell Assembly Multiprocessor FPGA Min cut Simulated Annealing manual partitioning ILP Scheduling Blocks Formal verification CONSTRAINTS OPTIMIZATIONCost Area Power Development time Reuse Latency Re−programability Technologies + Constraints + Tools 3
  • 5. Team Space DESIGN TOOLS TARGET DESIGN SPACE general−purpose DSP system C C++ JAVA TECHNOLOGIES core−basic ASIC Standard cell Assembly Multiprocessor FPGA Min cut Simulated Annealing manual partitioning ILP Scheduling Blocks Formal verification CONSTRAINTS OPTIMIZATIONCost Area Power Development time Reuse Latency Re−programability TEAMS Development risk Changes in teams Task assignment Team load Design times Group communication Skills Technologies + Constraints + Tools + TEAMS 4
  • 6. The Problem Analysis + Partitioning Conceptual Design Task Assignment Task Implementation Team Technology Technology Implementation (HW/SW Codesign)(Team Assignment) 5
  • 7. Related Works/Tools • Castle, Chinook, COMET, Cosmos, COSYMA, CoWare, LY- COS, Polis, PISH, Ptolemy, Symphony, Vulcan • COSYMA, Chinook, and LYCOS present estimated analysis and quality profiles • PISH makes formal verification of the synthesis process • CASTLE considers teams as designers • COMET does not require a functionally complete description in its specification 6
  • 8. Neglected Aspects • System is implemented by teams detaining specific technolo- gies • No single person has a complete knowledge of the system • Early design scenarios and risk analysis • Team load and task assignment • Process is not adjusted neither tuned during development 7
  • 9. • IEEE/ACM CODES, group discussion: ”This part of system design is very guru-intense and tool support is scarse”
  • 10. Outline • The problem • Related works • Stochastic model based on system views • Design scenario analysis • Some results • Conclusions and future works 8
  • 11. Team Estimates • PSP (Personal Software Process, 1995), TSP (Team Soft- ware Process, 2000) • PROBE for past task tracking based on linear regression (range and variance) • Formally, given a set of historical data for variables x and y, to determine a likely value yk based on a known or estimated new value xk we use yk = β0 + xkβ1, where the estimating parameters β0 and β1 are calculated from the historical data 9
  • 12. Probabilistic Characterization 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 -4 -3 -2 -1 0 1 2 3 4 mu = 0 & sigma = 2/3 mu = 0 & sigma = 1 mu = 0 & sigma = 2 Confidence Degree Standard Deviation (σ) Statistical Seman- tic Very High (VH) 3σ = M − µ 99.7% of the values are in the estimated range. High (H) 2σ = M − µ 95.5% of the values are in the estimated range. Low(L) σ = M − µ 68.3% of the values are in the estimated range. 10
  • 13. System Described by Views • Hierarchical view: static objects and dependencies • Sequencing view: dynamic constraints • Development view: development dependencies 11
  • 14. Network Controller Host CPU Memory DMA-RCVD RCVD-FRAME RCVD-BUFFER RCVD-BIT DMA-XMIT XMIT-FRAME XMIT-BIT ENQUEUE EXEC-UNIT RXE RXD TXE TXD Execution Unit Transmit Unit Receive Unit Bus Unit
  • 16. Hierarchical Graph Net Controller Bus_Unit Receive_ Unit Transmit_ Unit Execution_ Unit DMA-RCVD RCVD-FRAME RCVD-BUFFER RCVD-BIT DMA-XMIT XMIT-FRAME XMIT-BIT ENQUEUE EXEC-UNIT 13
  • 19. Development View Host CPU Memory DMA-RCVD RCVD-FRAME RCVD-BUFFER RCVD-BIT DMA-XMIT XMIT-FRAME XMIT-BIT ENQUEUE EXEC-UNIT RXE RXD TXE TXD Execution Unit Transmit Unit Receive Unit Bus Unit 16
  • 21. The Design Process using System Views 1. The system is described as a collection of interconnected objects (hierarchical view) in compliance with system’s functional specification; 2. The sequential and development views of the system are determined by the project manager; 3. The main constraints of the system design are determined and annotated in their respective views; 4. The system-level model is given to the development teams; 5. The development teams estimate values for each object and method considering the technology options and the team’s skill; 6. For each design scenario: The automatic tool will choose the best implementation con- sidering the objective function, that must be optimized (cost function), and the risk of success for satisfying the design constraints (inference de- grees). 18
  • 22. Team Estimates Objects Team1 L Team2 - H Team3 - VH pes [2.0,4.0] [2.5,3.5] [0.75,1.25] inc [2.0,4.0] [3.5,4.5] [1.5,2.5] alt [2.0,4.0] [1.5,2.5] [1.25,2.75] con [2.0,4.0] [1.5,2.5] [0.75,1.25] pes1 [1.0,3.0] [2.5,3.5] [1.25,2.75] inc1 [0.5,1.5] [0.5,1.5] [0.75,1.25] alt1 [2.0,4.0] [1.5,2.5] [1.25,2.75] exec1 [3.0,5.0] [3.0,5.0] [2.5 3.5] des1 [1.0,3.0] [2.5,3.5] [1.25,2.75] rea1 [2.0,4.0] [2.0,4.0] [1.25,2.75] con1 [1.0,3.0] [1.5,2.5] [0.75,1.25] pes2 [3.0,5.0] [1.5,2.5] [2.5 3.5] inc2 [2.0,4.0] [1.5,2.5] [0.75,1.25] alt2 [2.0,4.0] [3.0,5.0] [1.25,2.75] exec2 [3.0,5.0] [2.0,4.0] [2.5 3.5] des2 [2.0,4.0] [3.0,5.0] [3.5 4.5] rea2 [1.0,3.0] [0.5,1.5] [0.75,1.25] con2 [3.0,5.0] [1.5,2.5] [0.75,1.25] 19
  • 23. Design Scenarios • Early design options • Risk analysis without implementation costs • Time-to-market • Implementation cost • Execution time • Team load Mathematical model incorporating system views, team estimates, and risk analysis 20
  • 24. Mathematical Formulation SILP - Stochastic Integer Linear Problem min{ ∑ i,j cijxij} s.t. Prob{ ∑ j aijxij ≤ bi} ≥ 1 − αi, where xij ∈ {0, 1}, aij, bi and cij are random variables, and 0 ≤ αi ≤ 1 represents the uncertainty that the equation will be satisfied. 21
  • 25. Constraints: only one initial/final week • There is only one initial (γijk) and final (Γijk) week for each object i implemented by team j, i.e. ∀i ∈ Objects, j ∈ Teams ∑ k∈Weeks γijk = xij; ∀i ∈ Objects, j ∈ Teams ∑ k∈Weeks Γijk = xij. 22
  • 26. Constraints: path execution time • Path execution time. For each path (p) in SG Graph (se- quencing view), the estimated execution time of the meth- ods implemented by teams (dmj) in the path must satisfy a maximum execution time (DIp) with a defined probability of certainty (1 − αpath). Each method m of object i in path p ∈ PathsE is represented by a 3-tuple (i, p, m), i.e. ∀P ∈ PathsE, j ∈ Teams Prob{ ∑ (i,p,m)∈P dmjxij ≤ DIp} ≥ 1 − αpath 23
  • 27. Constraints: team load • Maximum load for team j (k1 is the first week). At week k1: team j can be implementing an object i or not, i.e. ∀i ∈ Objects, j ∈ Teams aijk1 = γijk1 − Γijk1 where, ∀ijΓijk1 = 0. At other weeks: team j can be implementing object i if it begins in this week (γijk = 1) or it is already implementing it (aij(k−1) = 1) and it did not end yet (Γijk = 0), i.e. ∀i ∈ Objects, j ∈ Teams, k ∈ Weeks aijk = aij(k−1) + γijk − Γijk At each week, the maximum load of a team (Λj) must be satisfied, i.e. the entire effort wasted on all objects by a team at a week must be less or equal to the maximum load of this team with a defined probability of certainty (1 − αload). Thus, ∀j ∈ Teams, k ∈ Weeks Prob{ ∑ i∈Objects λijaijk ≤ Λj} ≥ 1 − αload 24
  • 28. Constraints: object assignment • Object assignment. The final week (Γijk) of an implemen- tation is greater or equal the development time (tij) plus the initial week (γijk) with a defined probability of certainty (1 − αassignment), i.e. ∀i ∈ Objects, j ∈ Teams Prob{ ∑ k∈Weeks kΓijk ≥ tijxij + ∑ k∈Weeks kγijk} ≥ 1 − αassignment. 25
  • 29. Solving SILP • Exact solution: uniform (0-1 ILP with quadratic number of original variables), gaussian (non-linear) • Traditional approaches: expected value formulation (EVF) [Ermolieve,1988] • All estimates will be under/overestimated in the same way – each team tends to mantain the same direction on estimates – uncertainty is high on early stages of design 26
  • 30. Solving SILP: Extending EVF • Extended expected value formulation for scenario represen- tation • The approximation is min{ ∑ i,j Prob{cij ≥ 1 − αo}xij} s.t. ∑ j Prob{aij ≥ 1 − αi}xij ≤ bi 27
  • 31. Scenario Representation aij = (µaij + F−1(1 − αi)σaij), where F−1(1 − αi) is the inverse CDF for Gaussian distribution: 1 − α = 50% → F−1(1 − αi) = 0 1 − α = 80% → F−1(1 − αi) = 1 1 − α = 97% → F−1(1 − αi) = 2 1 − α = 99% → F−1(1 − αi) = 3 50% 80% 99% x F(x) F(x) = CDF of continuos random variable 28
  • 32. The Scenario Formulation • Extending the approximation for design scenarios, and con- sidering a1 and a2 normally distributed, the constraint Prob{a1x1 + a2x2 ≤ b} ≥ 1 − α can be replaced by (µa1 + F−1(1 − α)σa1)x1 + (µa2 + F−1(1 − α)σa2)x2 ≤ b 29
  • 33. Design Scenarios Revisited • Early system design views based on graphs (hierarchical, sequencing - SG, development - DG) • Team estimates using PROBE/PSP and confidence degrees (µ, σ) • Design scenarios varying the objective function (min{ ∑ i,j cijxij}) • Risk analysis varying the α parameter in aij = (µaij + F−1(1 − αi)σaij ) • Partitioning analysis varying constraint inequations and values 30
  • 34. Outline • The problem • Related works • Stochastic model based on system views • Design scenario analysis • Some results • Conclusions and future works 31
  • 35. Examples • MRF (Markov Random Fields), 8 functional objects • Net Controller, 11 functional objects • SAR (Synthetic Aperture Radar), 15 functional objects • Scenario Analysis – Partitioning – Risk analysis – Clustering – Spiral convergence – Computational parameters 32
  • 37. Partitioning Analysis 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 8 9 10 11 NetController: Prob (0.5), minimizing cost teams #ofobjects Dev time = 20 Variables = 3965 Constraints = 1522 USERtime = 0:19.17 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 8 9 10 11 NetController: Prob (0.999), minimizing cost teams #ofobjects Dev time = 15 Variables = 2806 Constraints = 1120 USERtime = 0:11.72s Minimizing Cost, Prob(1 − α) = 0.5 and Prob(1 − α) = 0.99 34
  • 38. Risk Analysis 0 5 10 15 20 25 30 35 40 45 0 0.2 0.4 0.6 0.8 1 1.2 NetController: Minimizing Development Time Weeks/ms/$/manWeeks Prob(1−alpha) devTime execTime cost loadTeam GaussianCDF 0 10 20 30 40 50 60 0 0.2 0.4 0.6 0.8 1 1.2 NetController: Minimizing Cost Weeks/ms/$/manWeeks Prob(1−alpha) devTime execTime cost loadTeam GaussianCDF Minimizing Development Time and Cost 35
  • 39. Risk Analysis 0 10 20 30 40 50 60 0 0.2 0.4 0.6 0.8 1 1.2 NetController: Minimizing Execution Time Weeks/ms/$/manWeeks Prob(1−alpha) devTime execTime cost loadTeam GaussianCDF 0 10 20 30 40 50 60 0 0.2 0.4 0.6 0.8 1 1.2 NetController: Minimizing Team Load Weeks/ms/$/manWeeks Prob(1−alpha) devTime execTime cost loadTeam GaussianCDF Minimizing Execution Time and Team Load 36
  • 40. Clustering Risk NetWork Controller - Objects (min Dev Time) rcvd xmit enqueue exec bit buffer frame xmit b xmit f 0.5 tm1 tm1 tm1 tm1 tm1 tm2 tm3 tm4 tm4 0.8 tm3 tm3 tm3 tm3 tm3 tm6 tm3 tm4 tm4 0.97 tm3 tm3 tm3 tm3 tm3 tm5 tm3 tm4 tm4 0.99 tm6 tm3 tm3 tm4 tm3 tm4 tm4 tm4 tm4 Clustering team assignment when minimizing System Cost 37
  • 41. Clustering Risk NetWork Controller - Objects (min Dev Time) rcvd xmit enqueue exec bit buffer frame xmit b xmit f 0.5 tm6 tm1 tm6 tm4 tm1 tm6 tm6 tm6 tm1 0.8 tm6 tm1 tm6 tm4 tm5 tm6 tm5 tm4 tm5 0.97 tm3 tm1 tm6 tm4 tm3 tm6 tm5 tm5 tm5 0.99 tm6 tm3 tm3 tm4 tm3 tm6 tm5 tm5 tm6 Clustering team assignment when minimizing Execution Time 38
  • 42. Convergence Analysis 1 2 6 9 11 i P(i) i P(i) 2 2 3 4 1195 Minimizing Development Time and Execution Time 39
  • 43. Computational Parameters Times for first iteration Case-Study Num.variables Num.constraints Iterations USER Time (h:m:s) MRF 2852 1089 13890 00:01:02 NET 3965 1462 38576 00:03:32 SAR 7260 2690 187808 01:16:21 Constraints = O(objects × weeks × teams) 40
  • 44. Conclusions • A stochastic model to system design by teams and multiple technologies on conceptual level • Interactive partitioning using design manager decisions based on clustering scenarios • Clustering scenarios to refine the process and minimize the SILP problem at each iteration, reducing the computational time 41
  • 45. Contributions • A stochastic model for system design by teams • An approach with confidence degrees to model risk analysis and team aspects • System description by views on early stages (conceptual level design) • A mathematical formulation for partitioning with multiple technologies • An extended expected value formulation to represent design scenarios • Interactive and iterative partitioning using clustering to refine the process and to reduce the SILP problem • Design scenarios representing partitioning options, uncertainty, team aspects and design constraints 42
  • 46. At Work • Applying in real industry: PINTO FILHO, K. V. ; BOCANEGRA, S. ; ALBUQUERQUE, J. . Uma proposta de modelagem para o calculo de reservas de contingencia e gerencial em projetos de software usando programacao linear inteira estocastica DOI 10.5752/P.2316- 9451.2012v1n1p50. Abakos, v. 1, p. 50-74, 2012. • Integrating conceptual level design in a commercial tool (FACEPE - 2013-2015) • Solving SILP: other approximations, Interior Points, and parallel strategies • Other mathematical formulations for the conceptual level design problem and heuristics 43
  • 47. Aknowledgements • This work was [partially] supported by the National Insti- tute of Science and Technology for Software Engineering (www.ines.org.br), funded by CNPq and FACEPE, grants 573964/2008-4 and APQ-1037-1.03/08. 44