Transcript ppt
A RELAXED SYNCHRONIZATION PRIMITIVE FOR MACROPROGRAMMING SYSTEMS TIMOTHY W. HNAT AND KAMIN WHITEHOUSE [email protected], [email protected] Presented by: S. M. Shahriar Nirjon Motivation Synchronization Problems State of the Art Node-level programming techniques (TinyOS) Have little to no synchronization Benefits timeliness Timeliness Sacrifices – how quickly the system runs correctness Correctness – how accurate the system is A fundamental trade-off between timeliness and correctness. Macroprogramming 5 Microcode Microcode Microcode Microcode Microcode Microcode Macroprogram Node-level programming 6 Microcode Microcode Microcode Microcode Microcode Microcode Outline Synchronization Exit Conditions Convergence Evaluation Conclusion Barrier Synchronization 8 1 Node 2 3 4 5 Unreliable and high latency communication Changes execution timing Relaxed Synchronization 9 1 Node 2 3 4 5 Control over application concurrency Relaxed Synchronization 10 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 0 Error 20 Hill Climbing 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 Results – Distance Error Results – Parameter Variations Results – 3d Surface Conclusion Macroprogramming abstractions typically have an expectation of sequential-like semantics Relaxed Relaxed Barriers allow Control Barriers provide a tunable version for WENs over Timeliness and Accuracy Provided an algorithm to tune these parameters for application scenarios Thank You