Map-Reduce Input: a collection of scientific articles on different topics, each marked with a field of science –Mathematics, Computer Science, Biology, Chemistry, Geology, etc. Output: the field of science where the longest word occurs (in all the articles) –Nicotinamideadeninedinucleotidephosphate
Answer: First round –map(field,paper) –reduce(field, {longest words in each paper}) Second round (distributed sort) –map(field, longest word) –reduce(word size, field) Do nothing
מבוא נתונים 4 תהליכים בלתי תלויים שרוצים להריץ על מחשב עם מעבד אחד (שיכול להריץ רק חוט אחד בו-זמנית). ביצוע סדרתי מריץ את התהליכים אחד אחרי השני. ביצוע "מקבילי" מריץ את כל התהליכים בו-זמנית. ה-speedup של הביצוע "המקבילי" ביחס לביצוע סדרתי בהכרח: –גדול או שווה ל-1 –קטן או שווה ל-1 –אין שינוי בזמן ריצה –לא ניתן לדעת
Answer לא ניתן לדעת The reason is that the run can be faster ( because of better caching, for example) And can be slower ( because of context switches) And can be the same
Race Detection נתון הקוד הבא: B1 = FALSE, B2 = FALSE Thread 1 Thread 2 X++ IF (B2 == TRUE) B1 = TRUEIF (B1 == TRUE) B2 = TRUEX-- כמה Apparent data-races יש בקוד? 3 כמה Feasible data-races יש בו? 1
Answer Feasible data races are also apparent, but not vice versa So there is only one feasible (semantically possible) data race for B2 (written and read simultaneously by t1 and t2 There are 3 apparent data races (B2, B1, X), since they are not protected by any lock
Java Synchronization
Vector clocks תשובות נכונות: ג
Lockset תשובות נכונות: ב, ג
OpenMP + Lockset תשובות נכונות: א
BSPLib
Arithmetic Intensity תשובות נכונות: ג