1 / 19

CS 5204 Operating Systems Lecture 9

CS 5204 Operating Systems Lecture 9. Godmar Back. Announcements. Still working on project proposals Look for reply email from me with word “approved” in it Out of town Oct 2-6, Oct 16-18: No class on Oct 3 & 5 ; Presentations move back; I’ve updated reading list with new tentative dates

Download Presentation

CS 5204 Operating Systems Lecture 9

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. CS 5204Operating SystemsLecture 9 Godmar Back

  2. Announcements • Still working on project proposals • Look for reply email from me with word “approved” in it • Out of town Oct 2-6, Oct 16-18: • No class on Oct 3 & 5; • Presentations move back; I’ve updated reading list with new tentative dates • Midterm: Oct 17 CS 5204 Fall 2005

  3. Plan for Today • Techniques for scalability • Consistency models • Openness & Flexibility • Discussion on End-to-End argument CS 5204 Fall 2005

  4. Continuing on Scalability • Recall: main problem that limited scalability was centralization (in services, in data, in centralized algorithms) • Aside from using decentralized algorithms (where possible), what else can be done to increase scalability? CS 5204 Fall 2005

  5. Scaling Techniques • Hide communication latencies • Use asynchronous communication whenever possible Sender REQUEST REPLY Receiver synchronous vs. asynchronous CS 5204 Fall 2005

  6. Deferred synchronous RPC • Combines two asynchronous RPC. CALL, WAIT FOR ACCEPTANCE, CONTINUE Client REQUEST ACK RESULTS ACK Server ACCEPT CALL LOCAL PROCEDURE CS 5204 Fall 2005

  7. Scaling Techniques (cont’d) • Minimize communication • Through distribution • Through piggybacking • Through careful placement of computation • Examples of these? • Note shift in focus over time • as bandwidth becomes cheaper stronger focus on avoiding relative latency penalty CS 5204 Fall 2005

  8. Latency lagsBandwidth • Patterson [2004] • Answers: • Caching • Replication • Prediction CS 5204 Fall 2005

  9. Workload & Data Distribution • DNSZones com edu gov de stanford vt utah banner registrar cs eng cs www www fbox www flux gradlab CS 5204 Fall 2005

  10. Consistency Models • Scalability goal when using caching/replication: • minimize synchronization requirements • use relaxed consistency models when possible • Consistency Models • Strict consistency • Sequential consistency; linearizability • Causal consistency • FIFO consistency • Weak consistency • Refinements: Release consistency, Entry consistency CS 5204 Fall 2005

  11. Strict Consistency • Any read on a data item x returns the value most recently written to x. • Ideal model for programmers • Requires global clock (example: leases) CS 5204 Fall 2005

  12. Sequential Consistency • The result of the execution is the same as if reads and writes were executed in some sequential order; reads and writes of each process are executed in program order within that sequence CS 5204 Fall 2005

  13. Sequential Consistency (cont’d) • Note that sequential consistency requires • Maintaining constraints by program order • Data coherence within global sequence (“history”) • Updates must be synchronous • Write update vs. write invalidate • Performance: it has been shown that r+w > t where r: read time, w: write time, t: message time • Optimizing writes makes reads slower & vice versa CS 5204 Fall 2005

  14. Causal Consistency • Not all processes need to see all writes in the same order • Causal consistency – only if writes are causally related (as in happens before relship) This sequence is causally consistent, but not sequentially or strictly consistent CS 5204 Fall 2005

  15. Causal Consistency (II) • Example of a violation: W(x)a happens before W(x)b, so P3 and P4 must see results in same order CS 5204 Fall 2005

  16. Weaker Consistency Models • Idea: don’t propagate all updates, only propagate consistent state between updates to distributed synchronization variables • Provide sequential consistency, but only with respect to sync points Sync Sync Sync Sync CS 5204 Fall 2005

  17. Release Consistency • Propagate writes when releasing a distributed synchronization variable • Can be done eagerly or lazily • Also possible: entry consistency • Only update those that will be accessed after entry Acquire Release Acquire Release CS 5204 Fall 2005

  18. E2E (cont’d) • Note that endpoint != application • Endpoint can also be a layer • How to identify the endpoints? • Reasons for violating E2E: • Performance • Cost • Software engineering/Code Reuse (?) • E2E is only a guiding principle, a type of “Occam’s Razor” CS 5204 Fall 2005

  19. Summary • Transparency goal • Techniques for scalability • Consistency models • Fault tolerance approaches & results CS 5204 Fall 2005

More Related