20
A RELAXED SYNCHRONIZATION PRIMITIVE FOR MACROPROGRAMMING SYSTEMS Presented by: S. M. Shahriar Nirjon TIMOTHY W. HNAT AND KAMIN WHITEHOUSE [email protected], [email protected]

A Relaxed Synchronization Primitive for Macroprogramming Systems

  • Upload
    ulric

  • View
    28

  • Download
    1

Embed Size (px)

DESCRIPTION

Timothy W. Hnat and Kamin Whitehouse [email protected], [email protected] . A Relaxed Synchronization Primitive for Macroprogramming Systems. Presented by: S. M. Shahriar Nirjon. Motivation. Synchronization Problems. State of the Art. - PowerPoint PPT Presentation

Citation preview

Page 1: A Relaxed Synchronization Primitive for Macroprogramming  Systems

A RELAXED SYNCHRONIZATION PRIMITIVE

FORMACROPROGRAMMING

SYSTEMS

Presented by: S. M. Shahriar Nirjon

TIMOTHY W. HNAT AND KAMIN WHITEHOUSE

[email protected], [email protected]

Page 2: A Relaxed Synchronization Primitive for Macroprogramming  Systems

Motivation

Page 3: A Relaxed Synchronization Primitive for Macroprogramming  Systems

Synchronization Problems

Page 4: A Relaxed Synchronization Primitive for Macroprogramming  Systems

State of the Art Node-level programming techniques

(TinyOS) Have little to no synchronization Benefits timeliness

Timeliness – how quickly the system runs Sacrifices correctness

Correctness – how accurate the system is A fundamental trade-off between

timeliness and correctness.

Page 5: A Relaxed Synchronization Primitive for Macroprogramming  Systems

5

Microcode

Microcode

Microcode

Microcode

Microcode

Microcode

Macroprogramming

Macroprogram

Page 6: A Relaxed Synchronization Primitive for Macroprogramming  Systems

6

Microcode

Microcode

Microcode

Microcode

Microcode

Microcode

Node-level programming

Page 7: A Relaxed Synchronization Primitive for Macroprogramming  Systems

Outline Synchronization Exit Conditions Convergence Evaluation Conclusion

Page 8: A Relaxed Synchronization Primitive for Macroprogramming  Systems

8

Barrier Synchronization

12345

Node

Unreliable and high latency communication

Changes execution timing

Page 9: A Relaxed Synchronization Primitive for Macroprogramming  Systems

9

Relaxed Synchronization

12345

Node

Control over application concurrency

Page 10: A Relaxed Synchronization Primitive for Macroprogramming  Systems

10

Relaxed Synchronization Allows the programmer to control the

amount of parallelism Tradeoff between timeliness and

accuracy Timeliness – how quickly the system runs Accuracy – how close the measurements

are to the real world

Page 11: A Relaxed Synchronization Primitive for Macroprogramming  Systems

Exit Conditions Nodes Radius Deadline

Page 12: A Relaxed Synchronization Primitive for Macroprogramming  Systems

Brute Force Search Enumerate all combinations of Nodes,

Radius, and Deadline Typically a very large search space

Brute force search Guaranteed to discover the optimal solution

given enough time Extremely slow to run

Page 13: A Relaxed Synchronization Primitive for Macroprogramming  Systems

Hill ClimbingEr

ror

Number of Nodes0

0

100

20

Page 14: A Relaxed Synchronization Primitive for Macroprogramming  Systems

Experimental Setup Object Tracking Application

Simulation

every(1) magVals = magSensors.sense() RB(NODES,DEADLINE,RADIUS,fitness) active = find(sum(neighborMag>500,2)>3) maxNeighbor = max(neighborMag, 2) leaders = find(maxNeighbor(active)==magVal(active)) pos = weightedAverage(neighborMag) if leaders focusCamera(pos) endend

Page 15: A Relaxed Synchronization Primitive for Macroprogramming  Systems

Experimental Setup Object Tracking Application

Simulation Five Scenarios

Single target Two targets Fast-moving target High-density deployment False-positive errors

Page 16: A Relaxed Synchronization Primitive for Macroprogramming  Systems

Results – Distance Error

Page 17: A Relaxed Synchronization Primitive for Macroprogramming  Systems

Results – Parameter Variations

Page 18: A Relaxed Synchronization Primitive for Macroprogramming  Systems

Results – 3d Surface

Page 19: A Relaxed Synchronization Primitive for Macroprogramming  Systems

Conclusion Macroprogramming abstractions

typically have an expectation of sequential-like semantics Relaxed Barriers provide a tunable version

for WENs Relaxed Barriers allow

Control over Timeliness and Accuracy Provided an algorithm to tune these

parameters for application scenarios

Page 20: A Relaxed Synchronization Primitive for Macroprogramming  Systems

Thank You