Relaxed Synchronization for Macroprogramming Systems
This paper presents a Relaxed Synchronization Primitive for Macroprogramming Systems, addressing synchronization problems in node-level programming. It explores the trade-off between timeliness and correctness, offering control over parallelism and application concurrency. The study evaluates different synchronization techniques, including Barrier Synchronization and Relaxed Synchronization, with a focus on exit conditions and convergence. Results from experiments using an Object Tracking Application demonstrate the impact on distance error, parameter variations, and 3D surface accuracy.
Relaxed Synchronization for Macroprogramming Systems
E N D
Presentation Transcript
Timothy W.Hnat and Kamin Whitehouse hnat@cs.virginia.edu, WHITEHOUSE@cs.virginia.edu A Relaxed Synchronization Primitive forMacroprogramming Systems Presented by: S. M. ShahriarNirjon
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.
Macroprogramming Microcode Microcode Microcode Microcode Microcode Microcode Macroprogram
Node-level programming Microcode Microcode Microcode Microcode Microcode Microcode
Outline • Synchronization • Exit Conditions • Convergence • Evaluation • Conclusion
Barrier Synchronization 1 2 Node 3 4 5 Unreliable and high latency communication Changes execution timing
Relaxed Synchronization 1 2 Node 3 4 5 Control over application concurrency
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
Exit Conditions • Nodes • Radius • Deadline
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
Hill Climbing 20 Error 0 0 Number of Nodes 100
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) end end
Experimental Setup • Object Tracking Application • Simulation • Five Scenarios • Single target • Two targets • Fast-moving target • High-density deployment • False-positive errors
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