Research Challenges in Project Aura Distractionfree Ubiquitous Computing
Research Challenges in Project Aura Distraction-free Ubiquitous Computing M. Satyanarayanan School of Computer Science Carnegie Mellon University Copyright © 2000 M. Satyanarayanan HPDC August 2000 Aura - 1
Participants Span SCS Duane Adams Alex Rudnicky Roger Dannenberg M. Satyanarayanan David Garlan Jane Siegel Alex Hills Dan Siewiorek Takeo Kanade Peter Steenkiste Raj Reddy Alex Waibel and many others. . . Copyright © 2000 M. Satyanarayanan HPDC August 2000 Aura - 2
Moore’s Law Reigns Supreme Processor density Processor speed Memory capacity Disk capacity Memory cost • • • Copyright © 2000 M. Satyanarayanan HPDC August 2000 Aura - 3
Glaring Exception Human Attention Adam & Eve Copyright © 2000 M. Satyanarayanan 2000 AD HPDC August 2000 Aura - 4
Aura Thesis The most precious resource in computing is human attention Aura Goals • reduce user distraction • trade-off plentiful resources of Moore’s law for human attention • achieve this scalably for mobile users in a failure-prone, variable-resource environment Copyright © 2000 M. Satyanarayanan HPDC August 2000 Aura - 5
Aura Research Framework Research Examples Users HCI/Agents/Speech Tasks Task-driven computing Rapid service configuration Services Energy-aware adaptation Multi-fidelity computation Nomadic data access OS/Network Intelligent networking Power/bw-aware devices Wearable computers Physical Devices Copyright © 2000 M. Satyanarayanan HPDC August 2000 Aura - 6
Technologies Being Explored Omitted for Brevity This Talk Speech Recognition Task-Driven Computing Language Translation Energy-Aware Adaptation Multi-Fidelity Computation Multimodal User Interfaces User Interface Adaptability Software Composition Proxies/Agents Collaboration Intelligent Networking Robustness, Reliability Rapid Failover Resource Opportunism Security & Privacy • • • • • Copyright © 2000 M. Satyanarayanan HPDC August 2000 Aura - 7
Task-Driven Computing Copyright © 2000 M. Satyanarayanan HPDC August 2000 Aura - 8
Problem Humans interact at too low a level with computer • URLs, filenames, program names, etc. • very explicit, step-by-step interactions • like programming in machine language! Result • brittle behavior • many details change with failures, platform changes, etc. • consume mobile user’s attention Copyright © 2000 M. Satyanarayanan HPDC August 2000 Aura - 9
Solution: Task-Driven Computing Users Support user intentions • capture high-level intent as tasks • raise level of abstraction of user interactions Tasks Services OS/Network Physical Devices Support mobility • suspend/resume on different platforms and locations • dynamically reconfigure to match available resources Support proactivity • active guidance from system • corrections, alternatives, persistence Copyright © 2000 M. Satyanarayanan HPDC August 2000 Aura - 10
Adapting to Environment Feedback User Task access on tiati an Inst Environment C ack b d Feedback Instantiation Task Space Fee dba Ins ck tan tiat ion Environment A Mobility/ Resource change Copyright © 2000 M. Satyanarayanan HPDC August 2000 Mobility/ Resource change Environment B Aura - 11
Architecture Feedback User Task Context Data Space Aura Computing Context Task access Aura Run-time Manager Aura Task API Task Space Azure Feedback Instantiation User Preferences/ Policies (OS-specific task support, resource opportunism) Coda Odyssey (Nomadic data access) (Data-specific adaptation) Intelligent Networking Environment Copyright © 2000 M. Satyanarayanan HPDC August 2000 Aura - 12
Diverse Users, Tasks and Preferences Aura Task API Diverse Services, Contexts Environments and Resources Copyright © 2000 M. Satyanarayanan HPDC August 2000 Aura - 13
Some Research Challenges • Design of task definition language with rich expressive power • Multi-modal interface for creating and modifying tasks • Integration of task libraries and legacy workflow tools • Mechanisms for tracking, suspending and restoring task state • Design of platform-independent Task API • Platform-specific implementations of Task API • Effective exploitation of mechanisms like Coda & Odyssey • Triggering mechanisms for pro-activity Copyright © 2000 M. Satyanarayanan HPDC August 2000 Aura - 14
Energy-Aware Adaptation Copyright © 2000 M. Satyanarayanan HPDC August 2000 Aura - 15
Problem Battery power is a critical resource when mobile Current approaches only offer limited extensions of mission life • no dramatic battery improvements foreseen • low-power hardware is important, but not enough • wireless transmission is a major consumer of energy Explicit user management of energy consumes attention Copyright © 2000 M. Satyanarayanan HPDC August 2000 Aura - 16
Solution: Energy-Aware Adaptation Applications change behavior as battery drains Users Collaborative relationship between OS & apps Tasks • OS monitors energy supply & demand Services • notifies apps when to change fidelity OS/Network Physical Devices Extension: goal-directed adaptation • user provides time estimate • OS ensures goal is met • mid-course corrections accommodated Copyright © 2000 M. Satyanarayanan HPDC August 2000 Aura - 17
Energy Impact: Video er-M gm re-C d. W ind o mie -B Co mb in ed Pre Red uce 1000 w Pow are dw Har Bas Joules elin e 1500 Pre 2000 t. Idle Xanim X Server Odyssey Wave. LAN Kernel mie re 2500 0 Video 1 Copyright © 2000 M. Satyanarayanan Video 2 HPDC August 2000 Video 3 Video 4 Aura - 18
Energy Impact: Speech 160 Idle Janus Odyssey Wave. LAN Kernel 120 as el in e 80 -O e nl R duc em e y Po R ot d M w em e od er H el M yb ote gm H yb rid - R t. ed rid u -R ce d ed M uc od ed el M od el 100 B Energy (Joules) 140 H W 60 R 40 20 0 Utterance 1 Copyright © 2000 M. Satyanarayanan Utterance 2 Utterance 3 HPDC August 2000 Utterance 4 Aura - 19
Some Research Challenges • Validate approach for broader set of applications • Use compact instrumentation for mobility • Exploit emerging standards such as ACPI and Smart Battery Spec • Design user interface that balances control with transparency • Exploit history for agile adaptation • Energy-sensitive remote execution mechanism • Coupling of energy considerations to task layer Copyright © 2000 M. Satyanarayanan HPDC August 2000 Aura - 20
Multi-Fidelity Computation Copyright © 2000 M. Satyanarayanan HPDC August 2000 Aura - 21
Problem Good performance on interactive mobile apps very difficult • resource-poor hardware (size, weight, energy constraints) • demanding apps (e. g. augmented reality) • wireless energy drain if computing shipped off-site • serious user discomfort & distraction with poor performance Catch-22! Copyright © 2000 M. Satyanarayanan HPDC August 2000 Aura - 22
Solution: Multi-Fidelity Computation Fundamentally rethink our model of computing Classic notion of algorithm • fixed correctness criteria • variable amount of resources consumed to meet this Adaptation for mobility suggests a different viewpoint • “Do the best you can using no more than X units of resource” • correctness criteria no longer fixed • multiple notions of “correct”; each is a level of fidelity Copyright © 2000 M. Satyanarayanan HPDC August 2000 Aura - 23
Why is this Concept Useful? Resource consumption can now be independent variable Users Special case: let system find “sweet spot” • “Give the best result you can cheaply” • knee in fidelity-resource usage curve Tasks Services OS/Network Physical Devices Interactive mobile applications fit this model well • users are tolerant of imperfect results, if so labeled • “sharp cliffs” in performance imply big wins Copyright © 2000 M. Satyanarayanan HPDC August 2000 Aura - 24
Example: Architect’s Aid Augmented reality for rapid preview of design changes • wearable computer with heads-up display • used on-site for remodeling projects Architect and customer can explore alternatives together • initial “quick & dirty” rendering using local computation • many iterations to shrink design space • when a design looks promising, request high fidelity Rendering algorithms span wide range of cost & fidelities Copyright © 2000 M. Satyanarayanan HPDC August 2000 Aura - 25
Example: On-Site Logistics Aid On-site engineer solving unexpected problem • handheld machine with spreadsheet-like tool • wireless link to compute server Many “quick and dirty” calculations • done locally, at low fidelity • results displayed in distinctive font or color Full fidelity when promising solution identified • include all design checks • ship to remote compute server, close to databases Concept of fidelity natural to numerical computation • terms in series expansions, mesh coarseness, iteration count, . . . Copyright © 2000 M. Satyanarayanan HPDC August 2000 Aura - 26
Some Research Challenges • Validation in real mobile applications • Design of API for multi-fidelity computation • History-based resource-estimation mechanisms • Integration with cache management • Dynamic balance of tradeoffs across different resources • Sweet spot discovery Copyright © 2000 M. Satyanarayanan HPDC August 2000 Aura - 27
Intelligent Networking Copyright © 2000 M. Satyanarayanan HPDC August 2000 Aura - 28
Problem Today’s systems assume network is dumb • very restricted interfaces • mismatch between network Qo. S and user-perceived Qo. S • cannot take advantage of active networks Hard to incorporate network-triggered pro-activity • more generally, environment-triggered pro-activity Copyright © 2000 M. Satyanarayanan HPDC August 2000 Aura - 29
Solution: Expressive System APIs Extend APIs to allow rich two-way flow of Qo. S information Users Tasks Strategy • condition environment if possible Services • resort to client adaptation otherwise OS/Network • network “traffic report” on multiple time scales Physical Devices • “network weather map” for proactive feedback • extend to non-network aspects of environment Impact • improve perceived quality of network service • support mix of dumb & intelligent networks • enable “intelligent workspaces” to be exploited Copyright © 2000 M. Satyanarayanan HPDC August 2000 Aura - 30
Some Research Challenges • Design of API extensions that are flexible yet not “kitchen sink” • Mechanisms to exploit active networks • Dynamic integration of Aura clients into smart workspaces • Support for wireless “network weather service” • Algorithms for pro-active guidance in wireless environments Copyright © 2000 M. Satyanarayanan HPDC August 2000 Aura - 31
Resource Opportunism Copyright © 2000 M. Satyanarayanan HPDC August 2000 Aura - 32
Problem Mobile hardware optimized for weight, size and battery life • reduced compute power relative to desktops & servers • client often forced to low-fidelity behavior Mobile users often forced to sacrifice creature comforts Copyright © 2000 M. Satyanarayanan HPDC August 2000 Aura - 33
Solution: Resource Opportunism Exploit non-mobile hardware in local environment Users Dynamically detect presence of useful resources • ship compute-intensive operations to intermediary • use intermediaries to stage cache data Tasks Services OS/Network Physical Devices • smooth, seamless & transparent to user But retain ability to function without external resources Copyright © 2000 M. Satyanarayanan HPDC August 2000 Aura - 34
Odyssey: Speech Recognizer client Viceroy API RPC Speech Warden Remote Janus Server RPC Speech Front-End Local Janus Server Copyright © 2000 M. Satyanarayanan HPDC August 2000 Aura - 35
Coda: Operation Shipping Mobile Client • Log user ops currently in shell in future: app level • Try shipping ops to surrogate Slow network Slo wn • On success, truncate log • On failure, ship files to server Surrogate etw • • • Re-create client environment Re-execute user ops Validate with fingerprints On success, ship files to server On failure, return error to client LAN ork Server Typical Performance Benefit Data volume reduction: 12 X to 245 X Elapsed time improvement: 0. 8 X to 5 X at 64 Kb/s 3. 4 X to 26 X at 9. 6 Kb/s Coping with minor re-execution glitches Differences in temp file names • side effect of apps like ar • handled through rename optimization Timestamps in output files • side effect of apps like latex, dvips, etc. • treated like transmission errors • corrected using Reed-Solomon FEC Copyright © 2000 M. Satyanarayanan HPDC August 2000 Aura - 36
Some Research Challenges • Resource discovery, including predictive ability • Preserving security in foreign environments • Design of API for resource opportunism • Fault-tolerance mechanisms to cope with disconnection • Rapid re-creation of execution environments Copyright © 2000 M. Satyanarayanan HPDC August 2000 Aura - 37
Closing Thoughts Copyright © 2000 M. Satyanarayanan HPDC August 2000 Aura - 38
Aura as an Expedition Well-defined goal: Conserve human attention through Moore’s Law But getting there will be an adventure! And a lot of valuable research will happen along the way Copyright © 2000 M. Satyanarayanan HPDC August 2000 Aura - 39
- Slides: 39