ההבדלים בין SIMD ל-MIMD

מחשוב מקביל עובד על ידי חלוקת בעיות גדולות לבעיות קטנות יותר שנפתרות לאחר מכן באותו זמן. SIMD ו-MIMD הן שתי ארכיטקטורות מחשוב מקבילות שונות המשתמשות במספר מעבדים ולפעמים במספר מחשבים לעיבוד נתונים. SIMD מייצג זרם הוראות מרובות זרם נתונים מרובים, ואילו MIMD מייצג זרם הוראות מרובות זרם נתונים מרובים. ארכיטקטורות SIMD ו-MIMD מבצעות פונקציות בסיסיות דומות, אך הן שונות מבחינה מעשית וטכנית.

SIMD מוגדר

ארכיטקטורת ה- SIMD מבצעת פעולה בודדת וזהה בו-זמנית על מספר חלקי נתונים, כולל אחזור, חישוב או אחסון מידע. דוגמה אחת היא אחזור קבצים מרובים בו זמנית. מעבדים עם זיכרון מקומי המכיל נתונים שונים מבצעים את אותה הוראה בצורה מסונכרנת, עם תקשורת בין מעבדים להקצאת משמרות.

סרטון היום

MIMD מוגדר

ארכיטקטורת MIMD מבצעת מספר פעולות בו-זמנית במספר חלקי נתונים. דוגמה אחת היא ביצוע חישובים מתמטיים שונים - כגון חיבור וכפל - בו-זמנית על מנת לפתור בעיה מתמטית מורכבת עם הרבה רכיבים נפרדים. מחשוב MIMD עשוי להיות מסונכרן או לא והוא נפוץ יותר ויותר ממחשוב SIMD.

הבדלים מעשיים

SIMD משמש בדרך כלל לבעיות הדורשות הרבה חישובים עם מעבדים המבצעים את אותה פעולה במקביל. MIMD משמש לעתים קרובות לבעיות שמפרקות אלגוריתמים לחלקים נפרדים ובלתי תלויים, כאשר כל חלק מוקצה למעבד אחר לפתרון בו זמנית.

הבדלים טכניים

SIMD ו-MIMD גם שונים מבחינה טכנית. מעבדי SIMD הם בדרך כלל פשוטים יותר, קטנים יותר, זולים ומהירים יותר ממעבדי MIMD, אך MIMD מסוגל לבצע פעולות מורכבות הרבה יותר. פעולות MIMD שגם SIMD יכול לבצע נוטות לקחת יותר זמן עם SIMD. מעבדי SIMD חייבים לבצע פעולות מורכבות ברצף, בעוד שמעבדי MIMD יכולים לעשות זאת במקביל.