montek singh comp790-084 oct 11, 2011. today’s topics: ◦ more on error metrics ◦ more...
Post on 19-Dec-2015
221 views
TRANSCRIPT
Emerging Technologies of Computation
Montek Singh
COMP790-084Oct 11, 2011
Today’s topics:◦ more on error metrics◦ more applications◦ architectures and design tools◦ challenges and benefits◦ open questions
Today: Probabilistic Design
For arithmetic units, error metric based upon an error threshold, δ◦ errors < δ are tolerable◦ pδ = prob (err < δ)
Error metrics
Applications which harness probabilistic behavior◦ algorithms with repeated execution with the same inputs
resulting in distinct outcomes (with some prob. distribution)
Separate algorithm into deterministic and probabilistic parts
Applications
Bayesian Inference◦ statistical inference technique mimicking human
decision-making process◦ set of hypotheses and probability weights◦ each observation leads to a revision of prob
weights
◦ Example:
Example: Bayesian Networks
Example◦ Given
prob of rain prob of sprinkler being on given rain
◦ Find: prob of rain given that the grass is wet Implemented using PCMOS
Example: Bayesian Networks
Random Neural Networks◦ Poisson process models the “firing” of a neuron
Probabilistic Cellular Automata◦ Each cell’s next state is a function of its neighbors◦ Next state could be 0 or 1 with certain prob
Hyper Encryption◦ Random seed generated
using PCMOS
More Examples
More Examples
Applications that tolerate probabilistic behavior◦ multimedia mostly◦ signal processing◦ others?
More Examples
Different partitioning of deterministic vs. probabilistic parts of an algorithm
Architectures
Host (deterministic) vs. coprocessor (probabilistic) partitioning
Architectures
Comparison◦ Host = deterministic◦ without coprocessor: software only◦ with coprocessor:
using PCMOS using CMOS
Results
Quality of randomness using PCMOS vs. pseudo RNG
Results
Benefits◦ …?
Challenges◦ …?
Discussion
Architectural questions◦ Which design is better in terms of E-p tradeoff?◦ Example:
Which adder is better: carry-skip or ripple-carry? carry-skip adder has faster propagation time ripple-carry adder consumes less energy But: carry-skip adder may be better when there are
delay-induced errors!
Design tools◦ What type of tool support is needed?◦ Simulation and validation?
Open questions