Presentation is loading. Please wait.

Presentation is loading. Please wait.

Time & Space Lower Bounds for Non- Blocking Implementations.

Similar presentations


Presentation on theme: "Time & Space Lower Bounds for Non- Blocking Implementations."— Presentation transcript:

1 Time & Space Lower Bounds for Non- Blocking Implementations

2  נדבר על increment object ונראה שסיבוכיות הזמן שלו במימוש אקראי היא לכל הפחות n-1, כאשר n הוא מספר התהליכים הרצים.  Increment object תומך בפעולת read המחזירה את מצבו של האובייקט ; ופעולת increment המוסיפה 1 למצבו של האובייקט.

3  במימוש אקראי, תהליך מטיל מטבע לפני כל צעד שהוא מבצע ופועל בהתאם.  התהליך מקבל כקלט רשימת פעולות אינסופית op-list-i, המורכבת מן הפעולות הנתמכות ע " י האובייקט המדובר, כאשר comp-i מסמן את רשימת הפעולות שהושלמו ו -rem-i את היתר.  כתוצאה מכל צעד שביצע התהליך הוא יקבל בחזרה ack או return value.  מצבו של תהליך במימוש אקראי מאופיין ע " י ה -PC, comp-i והערכים שקיבל כתוצאה מפעולותיו.

4  " ריצה " היא רצף כלשהו של [p,t] כאשר p הינו תהליך הנמצא על סף ביצוע צעד כלשהו ו -t הינה תוצאת הטלת המטבע.  מה ניתן לומר על היחס בין מרחב הריצות הדטרמיניסטיות למרחב הריצות האקראיות ?

5  קונפיגורציה C הינה וקטור : (st-1,…,st-n,rem-1,…,rem-n, O-1,…,O-m).  C1 ו -C2 תקראנה " דומות " אם מצבם הפנימי של כל התהליכים זהה ומצבם של האובייקטים המשותפים זהה.  C1 ו -C2 תקראנה " דומות מבחינת Pi" אם מצבו הפנימי של Pi זהה בשתיהן ומצב האובייקטים המשותפים זהה.  קונפיגורציה C הינה ברת - השגה אם קיימת קונפיגורציה התחלתית וריצה כך ששרשור הריצה לקונפיגורציה זו, תביא את המערכת לקונפיגורציה C.

6  נניח שהאובייקט הממומש הינו counter, ותהינה שתי הריצות הבאות : ,C 1 =C 0 (p1.inc,p1.read ) C 2 =C 0 (p1.inc,p1.read,p2.read)  בהנחה שפעולת read אינה משנה את מצב האובייקט, מה ניתן לומר על שתי הקונפיגורציות הללו ?  מה תהיה התשובה ללא הנחה זו ?

7  Wait-free  Lock-free  " סיום יחידני " (Obstruction-free) תהליך pi יסיים את פעולתו באם ירוץ לבד החל מכל קונפיגורציה. במקרה האקראי – קיימת סדרת תוצאות מטבע כך שהתהליך יסיים את פעולתו.

8  המטרה היא להוכיח שכל מימוש אקראי של increment object המקיים את התנאי " סיום יחידני ", זקוק לפחות ל - (n-1) אובייקטי בסיס. בתום ההוכחה נגלה שקיבלנו גם חסם תחתון על סיבוכיות זמן הריצה.  נוכיח טענה זאת תחת הדרישה שאובייקטי הבסיס הם : register, swap register & resettable consensus

9  Register – תומך בקריאה וכתיבה, כך שכתיבה מחזירה ack וקריאה מחזירה את מצב הרגיסטר.  Swap register – תומך בקריאה וכתיבה, כך שכתיבה מחזירה את הערך שהוחלף.

10

11

12  אובייקט הקונצנזוס תומך בפעולת ה -decide / propose ומקיים שני תנאים :  הסכמה  ערכיות

13  תומך באיפוס וב -propose. מצבו של אובייקט מאופס הוא ֲ ואילו שאר המצבים האפשריים הם ערכי מספרים טבעיים.  פעולת איפוס מחזירה ack ופעולת propose(v) מחזירה v אם האובייקט מאופס, ואת w אם לא.

14  עבור כל מימוש אקראי של increment object המקיים obstruction-freedom, יש צורך לפחות ב -n-1 אובייקטי בסיס.  נוכיח זאת באינדוקציה על...

15  תהיינה הריצות Λ k, Σ k, Π k, קבוצת אובייקטי הבסיס S k ו -C 0 קונפיגורציה התחלתית. 1) הריצות Λ k,Σ k אינן כוללות את Pn. 2) עבור k=0, מתקיים ש - Σ k הינה הריצה הריקה. עבור k≥1 מתקיים ש - Σ k הינה הריצה [Pi k, Tk], [Pi k-1,T k-1 ],…,[Pi 1,T 1 ] כאשר כל התהליכים שונים אחד מהשני. 3) Π k הינה ריצה יחידנית של Pn. 4) |S k | = k, כאשר הקבוצה מסמנת אובייקטי בסיס. 5) S k הינה קבוצת כל אובייקטי הבסיס ש -Pn ניגש אליהם בריצה C 0 (Λ k Σ k Π k ). 6) בריצה C 0 (Λ k Σ k Π k ), הפעולה הראשונה של Pn (OP) על האובייקט הממומש (O) טרם הסתיימה, או בדיוק הסתיימה. 7) נסמן Free-k להיות הקבוצה {P 1,…,P n-1 } – Process-Set(Σ k ). תהי γ ריצה כלשהי בה רק תהליכי Free-k לוקחים צעדים. ה -state של כל אובייקטי הבסיס שב -S k זהה בתום הריצות C 0 (Λ k Σ k ) ו - C 0 (Λ k γΣ k ).


Download ppt "Time & Space Lower Bounds for Non- Blocking Implementations."

Similar presentations


Ads by Google