1 / 12

Application Grading Metrics

Application Grading Metrics. Outline. What information can we get? TOP CPU Memory Our calculation Threats to validity. TOP. We analyzed TOP's source code CPU percentage calculation Memory calculation. CPU Percent. Process “ticks” = utime + stime (both from /proc/[pid]/stat)

npayne
Download Presentation

Application Grading Metrics

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. Application Grading Metrics

  2. Outline • What information can we get? • TOP • CPU • Memory • Our calculation • Threats to validity

  3. TOP • We analyzed TOP's source code • CPU percentage calculation • Memory calculation

  4. CPU Percent • Process “ticks” = utime + stime(both from /proc/[pid]/stat) • Total “ticks” = utime + ntime + stime + itime + iowtime + irqtime + sirqtime(all from /proc/stat) • CPU Percent = (process ticks) / (total ticks)

  5. Memory • rss field in /proc/[pid]/proc • rss = Resident Set Size • Gives number of pages process has in real memory

  6. Outline • What information can we get? • Our calculation • Peak? • Resource consumption * time • Resource expenditure / service provided • Our current metric • Threats to validity

  7. Peak? No! Inaccurate: program using memory on right is obviously worse.

  8. Consumption * Time Much better: calculate area under curves. Much like KW-Hours.

  9. Divide by service provided • When grading, we can't do a simplistic calculation like TOP does • Applications used more often shouldn't be graded more poorly • Divide consumption by amount of service provided • Measure service provided in seconds of foreground time (obtained via ActivityManager)

  10. Our current metric • If an application always runs in the background, it shouldn't have an infinitely bad grade, so give BG time some weight. • CPU: • CPU-Mins/(0.9*FG-Mins + 0.1*BG-Mins) • Memory • MB-Mins/(0.9*FG-Mins + 0.1*BG-Mins)

  11. Outline • What information can we get? • Our calculation • Threats to validity • CPU variance • Memory approximation

  12. Threats to validity • Not all CPU-minutes are created equal! • Memory consumption is coarsely approximated using Riemann sums

More Related