1 / 15

Towards Resource Aware Applications and Systems

Towards Resource Aware Applications and Systems . Michael B. Jones Microsoft Research. Goal: Coexisting Independent Real-time Applications. Independently developed Predictable concurrent execution of real-time and non-real-time apps Meeting all apps’ timing needs

amy
Download Presentation

Towards Resource Aware Applications and Systems

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Towards Resource Aware Applications and Systems Michael B. Jones Microsoft Research

  2. Goal: Coexisting Independent Real-time Applications • Independently developed • Predictable concurrent execution of • real-time and non-real-time apps • Meeting all apps’ timing needs • Informing apps when not possible

  3. Overview • Need for Resource Management • Motivating Examples • Resource Awareness • Call to Action

  4. Case for Explicit Resource Allocation and Accounting • Time-Sensitive applications need: • different resources • at different rates • in different amounts • Even infinite resources insufficient if not given to apps in timely fashion

  5. Assumption: Multiple Tasks • Assumption: • Multiple concurrent tasks • At least one time sensitive • Many such tasks to choose from: • Media input, output • Speech, vision-based UIs • Software modems, sound cards, ... • Industrial device control • etc.

  6. One Real-Time Task Enough • Time aware resource management needed even if just one real-time task • Competing normal tasks can still cause real-time task to fail • Round-robin with to large a period • Fair share with too small a proportion

  7. Motivation: User Interfaces • User interfaces can use all the resources, all the time! • Speech, vision understanding, implicit queries, etc. can use as much as they get • Must manage background activities’ resource usage so real work gets done • Low-latency responses required • Camera-based head motion parallax driving 3D virtual environment needs< 200ms response — 50-100ms ideal • Simple timesharing, priority schemes won’t get the right tasks done at the right times

  8. Motivation: Reducing Costs • PC industry wants lower prices points • Buying choice different below ~$400 • “Soft Migration” one means • Remove “extra” CPUs, such as modem DSP • $15 parts cost => ~$45 retail cost • Soft modems work well on 200MHz MMX • Sample processing rates • ~12ms in normal operation • ~1.5ms during training • Infeasible without appropriate scheduling

  9. Motivation: Reliability • Denial of Service attacks steal resources • Resource management can guarantee resources to “good” clients • Example: Resource Container results protecting web servers from SIN attacks (Banga, Druschel, & Mogul: OSDI ’99)

  10. Motivation: Consumer Real-Time Applications • Enable consumers to purchase or download applications • some of which have real-time needs • just like current shrink-wrapped & Internet applications today • with expectation independently developed apps will successfully coexist.

  11. Resource Awareness • Only apps know their timing requirements • must have a vocabulary for expressing them • Only system can enforce resource guarantees • must do resource accounting • to fulfill negotiated resource guarantees • Both must be Resource Aware

  12. Determining Application Resource Needs • Adaptive approach: 1. Observe own resource usage 2. Compute expected needs from past observations 3. Reserve appropriate resource amounts • Resource self-aware applications key • Only apps have knowledge to make appropriate resource tradeoffs • Uncertainty in amounts inherent • Caches, busses, CPU speeds, contention

  13. Missing Information Paths In current general-purpose systems: • Apps can’t tell system: • when code needs to be executed • amounts of resources they need • System can’t tell apps: • whether deadlines will be met • amounts of resources available to them • Both flying blind

  14. Call To Action • Future systems must provide: • Explicit resource management interfaces • Predictable low-latency scheduling • Enabling technology for: • User interface advances • Reduced cost computing • More reliable computing • Consumer real-time applications

  15. Towards Resource Aware Applications and Systems Discussion

More Related