1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

76
1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University

Transcript of 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

Page 1: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

1

Ashish Gupta

Bin Lin

Peter Dinda

Department of Computer Science

Northwestern University

Page 2: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

3

Outline

• Motivation behind Resource Borrowing

• Measuring user comfort

• System Design for Measuring User Comfort

• Controlled User Study

• Its Results

• Conclusions

Page 3: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

4

New Models of Distributed Computing

BreakScreenSaver time

Working

9 am 11 am 1 pm 3 pm 4 pm 5 pm 9 am

Page 4: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

5

Observation and ideas

Idea: Why not borrow the unused resources ?

Unused Resources

Problem: Performance Slowdown

Page 5: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

6

Effect of performance slowdown

Page 6: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

7

Effect of performance slowdown

Page 7: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

8

The question we want to answer

Depends on Other Factors as well…

What level of resource borrowing leads to user

discomfort for significant fraction of users ?

Page 8: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

9

CPU RAM Disk

Page 9: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

10

Context Person Hardware

Others ?

Page 10: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

11

Power Users Typical Users Beginners

Page 11: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

12

Page 12: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

13

Outline

• Motivation behind Resource Borrowing

• Measuring user comfort

• System Design for Measuring User Comfort

• Controlled Study

• Its Results

• Conclusions

Page 13: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

14

How can we find this out ?

Actually test it with user feedback

A system for emulating resource borrowing and measuring user discomfort using direct feedback

http://comfort.cs.northwestern.edu

Page 14: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

15

How can we find this out ?

1Measure existing contention

Page 15: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

16

How can we find this out ?

Emulate Resource Borrowing

Real Contention

Borrowed Contention

Final Contention

2 % CPU Usage vs. Time

Page 16: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

17

How can we find this out ?

Allow User Feedback

3

F11

Page 17: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

18

How can we find this out ?

Find MAX Level of tolerable contention

Borrowed Contention

Final Contention4

MAX

% CPU Usage vs. Time

Page 18: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

19

How is it useful ?

Comfort = f (Contention)

To find a quantitative relationship between resource borrowing and user comfort

Page 19: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

20

How is it useful ?

Enhances the degree of workstation sharing

Page 20: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

21

Interactivity Aware Scheduling

Interactive

More intelligent scheduling of interactive tasks possible

via user feedback and our results

Page 21: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

22

Outline

• Motivation behind Resource Borrowing

• Measuring user comfort

• System Design for Measuring User Comfort

• Controlled Study

• Its Results

• Conclusions

Page 22: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

24

The client design

Page 23: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

25

Testcases

• Each testcase stores details of resource borrowing• Testcase consists of exercise functions for each resource

• Exercise function is a vector of contention values• Example:

CPU contention: [0,0.5,1.0,1.5,2.0] at 1 Hz

Page 24: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

27

Flowchart of Testcase Execution

No Testcase running

Resource Borrowing Phase Begins

(Testcase Runs)

No user feedback User expressed discomfort

Testcase Exhaustsafter some time

Testcase Ends immediately

User feedback

Page 25: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

28

Resource Exercisers

• CPU Exerciser– Contention describes the expected extra number of

threads in ready queue– Fractional resource borrowing using stochastic scheduling

methods– Validated to contention level of 10

• Disk Exerciser– Random seek and read/write in a large file (twice the

memory)– Validated to contention level of 7

• Memory Exerciser– Borrows a fraction of physical memory: from 0 to 1

Page 26: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

29

Outline

• Motivation behind Resource Borrowing

• Measuring user comfort

• System Design for Measuring User Comfort

• Controlled Study

• Its Results

• Conclusions

Page 27: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

30

The control study description

• 33 undergrad and grad students

• 1.5 hrs each

• Each user was assigned 4 popular tasks to do– MS Word– MS Powerpoint– MS Explorer searching and saving information– Quake III

Page 28: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

31

Machine Configuration

Page 29: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

32

Testcases for the Control Study

Three types of testcases: step, ramp and blank

• Ramp allows us to know the point of discomfort for each resource• Step and Ramps: comparing the manner of borrowing resources• Blank: To test the background level of discomfort

Page 30: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

34

Testcases for the Control Study

• Testcases different for each application–Some apps more intensive than

others

• Example : Word and Quake

• Requires Calibration

Page 31: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

35

Outline

• Motivation behind Resource Borrowing

• Measuring user comfort

• System Design for Measuring User Comfort

• Controlled Study

• Its Results

• Conclusions

Page 32: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

36

Resource borrowing vs User Discomfort

• CDFs for discomfort contention level

• Not all contentions cause discomfort: exhausted region

Page 33: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

37• C0.05 = 0.35 ( aggregated over all applications)

Exhausted Region

Discomfort Region

Aggregated Results

Page 34: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

38

Resource borrowing vs User Discomfort

• CDFs for discomfort contention level

• Not all contentions cause discomfort: exhausted region

• CDFs allow us to read %age of people discomforted for a given contention

–Metric c0.05 : At what contention do we

discomfort only 5% of the people ?

Page 35: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

39

Results overview

Aggregated Results

Dependence on Resource

Dependence on Context

Dependence on Users

Dependence on Step/Ramp

Page 36: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

40

Aggregated Results

Page 37: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

41• C0.05 = 0.35 ( aggregated over all applications)

Exhausted Region

Discomfort Region

Aggregated Results

Page 38: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

42

• Can borrow a lot, discomforting only a small fraction\

• C0.05=0.33

Aggregated Results

Exhausted Region

Discomfort Region

Page 39: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

43

• Can borrow a lot, discomforting only a small fraction• C0.05 = 1.11

Aggregated Results

Exhausted Region

Discomfort Region

Page 40: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

44

Dependence on Resource

Page 41: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

45

An overview of factors Dependenceon Resource

User sensitivity by task and resource (Low, Medium, High)

Users more tolerant for disk and memory borrowing, than CPU

Results Qualitative , but the testcase range is wide

Page 42: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

46CPU

Dependenceon Resource

Page 43: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

47Memory

Dependenceon Resource

Page 44: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

48Disk

Dependenceon Resource

Page 45: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

49

Dependence on Context

Page 46: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

50

Comparison of CPU discomfort

WordIE

Powerpoint

Quake

Dependenceon Context

Page 47: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

51

Dependence On Context - CPU

Word

Powerpoint

IE

Quake

Dependenceon Context

Page 48: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

52

Dependence on Context - Memory

Word

Powerpoint

IE

Quake

Dependenceon Context

Page 49: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

53

Dependence on Context - Disk

Word

Powerpoint

IE

Quake

Dependenceon Context

Page 50: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

55

Internet Wide-Area Study

• No controls here, hope to get more general and complete data

• Users can download a client from http://comfort.cs.northwestern.edu

• Clean installation/un-installation and privacy options

Join us !

Page 51: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

56

Outline

• Motivation behind Resource Borrowing

• Measuring user comfort

• System Design for Measuring User Comfort

• Controlled Study

• Its Results

• Conclusions

Page 52: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

57

Conclusion

Comfort = f(contention)

Disk and memory can be borrowed more aggressively, CPU less so

A throttle for resource borrowing very useful

CDFs can be used to set the throttle

Page 53: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

58

Conclusion

Comfort = f(contention)

Knowing the user context helps

Using Direct user feedback can be useful

Page 54: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

59

Current and Future Work

User feedback for interactive VM Scheduling

Real time Scheduling to give exact resources to VMs

Minimal resources required to keep the user happy

Page 55: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

60

Acknowledgements

http://comfort.cs.northwestern.edu

Special Thanks to:

Don Norman

Andrew Ortony

Ben Watson

Jack Tumblin

Leslie Lamport

and

All our beta testers

Study participants

Page 56: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

61

Conclusion

Comfort = f(contention)

Disk and Memory surprisingly easy to borrow, CPU borrowing also liberal

Set of empirical CDFs provided

Depends of other factors: Resource, Context and Users

Page 57: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

62

Dependence on User

Page 58: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

63

Dependence on User

Power

Typical

Beginner

Dependenceon User

Page 59: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

67

The placebo effect

• Users express discomfort even when no testcase is running• Can never guarantee that the user will never express

feedback

Page 60: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

68

Memory Exerciser

• Contention indicates fraction of total memory allocated in addition to occupied memory

• Pages are touched frequently to keep them in physical memory

0MB 1024 MB

Occupied Mem. 0.5

Memory Contention

Clipping Point

Page 61: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

69

Page 62: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

70

Related Work

• User Frustration in HCI• Computer Response to User Frustration [K99]• Sensing and measurement of frustration with

computers [R01]

• Impact of latency of user utility• Behavioral aspects of text editors [EN81]• Psychological Upper and lower limits of

system response time and user’s preference on skill level [K97]

Page 63: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

71

Virtual Machine Scheduling

• Virtuoso: Distributed Computing with Virtual Machines

• User pays for the resources he uses

• Need to know minimal resources needed to keep an interactive VM user happy

Page 64: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

72

Questions and Answers• Other types of irritation• Bursty natures of Desktop Computing, bursts indicate sudden action-response tasks• Large number of factors for irritation• Since there is usually a power law for process run times, why do we need this model ? (CPU

is idle most of the time)• Why can’t we just run the bg app at a lower priority ? It may benefit much more than just

running at a fixed contention.• Memory exerciser: What does contention mean ? How do you find out free physical memory

?• How do you avoid thrashing ? Why do you avoid thrashing ?• How does the CPU exerciser work ? • Why do you disable buffering in the Disk exerciser ?• The aggregated graphs are not useful. Memory usage may be much more dynamic then in

your tests due to user multitasking etc. So this may not represent reality ?– Our study is a start in this direction and we realize that there are limitations to the data we have

collected. But we expect to collect and analyze more results from the Internet Wide area study and generalize our results to more real environments. There are no controls in the internet wide area study. The control study was meant to specifically answer the questions we have posed, like the affect of other factors in user discomfort and resource borrowing.

Page 65: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

73

• Lower priority ?– Disk and memory ?

– There is a limit (max) possible amount of cycles stolen. Our goal is to s=estimate that. Seperately, there are many possible sched mech that would get closer to that max. Lower priority is an example. Linger longer is an example. Screen saver is an example.

– Quake example

– Don’t argue for/against a particular scheduling scheme

– It is a step in the right direction… (for results)

Page 66: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

74

Testcase Transfer

Results Transfer

Server

Client

Resource borrowing using testcase profile

Page 67: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

75

The client-server system

• Data Exchange• Hotsync

– Results transfer– Testcase update

• Testcase Tools

Page 68: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

76

Page 69: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

77

Page 70: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

78

An irritating Interface

Page 71: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

79

Interactive Computation

Bursty Nature of Interactive Computation

Page 72: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

80

Page 73: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

81

Page 74: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

82

Understanding Testcases

CPU

ramp 1ramp 2ramp 3step 1step 2

…..

MEM

ramp 1ramp 2ramp 3step 1step 2

…..

Ramp Step

Page 75: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

83

Combination of Resources

• CPU Usage• Memory Usage• Hard Disk activity• Network Traffic

Comfort Zone surface

Page 76: 1 Ashish Gupta Bin Lin Peter Dinda Department of Computer Science Northwestern University.

85