การคำนวณแบบคู่ขนานทำงานโดยแบ่งปัญหาใหญ่เป็นปัญหาเล็ก ๆ ซึ่งแก้ไขได้ในเวลาเดียวกัน SIMD และ MIMD เป็นสถาปัตยกรรมการประมวลผลแบบขนานสองแบบที่แตกต่างกันซึ่งใช้โปรเซสเซอร์หลายตัวและบางครั้งคอมพิวเตอร์หลายเครื่องในการประมวลผลข้อมูล SIMD ย่อมาจาก Single Instruction Stream Multiple Data stream ในขณะที่ MIMD ย่อมาจาก Multiple Instruction Stream Multiple Data stream สถาปัตยกรรม SIMD และ MIMD ทำหน้าที่พื้นฐานที่คล้ายคลึงกัน แต่แตกต่างกันทั้งในทางปฏิบัติและทางเทคนิค
SIMD กำหนด
สถาปัตยกรรม SIMD ดำเนินการเพียงครั้งเดียวที่เหมือนกันในหลายส่วนข้อมูล รวมถึงการดึงข้อมูล การคำนวณ หรือจัดเก็บข้อมูล ตัวอย่างหนึ่งคือการดึงข้อมูลหลายไฟล์พร้อมกัน โปรเซสเซอร์ที่มีหน่วยความจำภายในที่มีข้อมูลต่างกันดำเนินการคำสั่งเดียวกันในลักษณะซิงโครไนซ์ด้วยการสื่อสารระหว่างโปรเซสเซอร์สำหรับการจัดสรรกะ
วิดีโอประจำวันนี้
MIMD กำหนด
สถาปัตยกรรม MIMD ดำเนินการหลายอย่างพร้อมกันกับข้อมูลจำนวนมาก ตัวอย่างหนึ่งคือการคำนวณทางคณิตศาสตร์ต่างๆ -- เช่น การบวกและการคูณ -- พร้อมกัน เพื่อแก้ปัญหาทางคณิตศาสตร์ที่ซับซ้อนด้วยส่วนประกอบต่างๆ ที่แยกจากกัน การคำนวณ MIMD อาจหรือไม่ซิงโครไนซ์และพบได้บ่อยกว่าการคำนวณแบบ SIMD
ความแตกต่างในทางปฏิบัติ
โดยทั่วไปแล้ว SIMD จะใช้สำหรับปัญหาที่ต้องใช้การคำนวณจำนวนมากกับโปรเซสเซอร์ที่ทำงานแบบขนานกัน MIMD มักใช้สำหรับปัญหาที่แบ่งอัลกอริทึมออกเป็นส่วนๆ และแยกจากกัน โดยแต่ละส่วนถูกกำหนดให้กับโปรเซสเซอร์ที่แตกต่างกันสำหรับการแก้ปัญหาพร้อมกัน
ความแตกต่างทางเทคนิค
SIMD และ MIMD นั้นแตกต่างกันในทางเทคนิคเช่นกัน โปรเซสเซอร์ SIMD มักจะง่ายกว่า เล็กกว่า ถูกกว่า และเร็วกว่าโปรเซสเซอร์ MIMD แต่ MIMD มีความสามารถในการดำเนินการที่ซับซ้อนกว่ามาก การดำเนินการ MIMD ที่ SIMD สามารถทำได้มักจะใช้เวลากับ SIMD มากขึ้น โปรเซสเซอร์ SIMD ต้องดำเนินการที่ซับซ้อนตามลำดับ ในขณะที่ตัวประมวลผล MIMD สามารถทำได้พร้อมกัน