กลับไปหน้าบทความ

อ่าน 3 นาที

คำสั่งหลายชุด ข้อมูลหลายชุด

ชั้นเรียนของคอมพิวเตอร์/อนุกรมวิธานของฟลินน์/การคำนวณแบบขนาน

ในด้านการคำนวณ เทคนิค การ ประมวล ผลแบบขนานคือ การประมวลผลคำสั่งหลายคำสั่งพร้อมกัน ( MIMD ) เครื่องคอมพิวเตอร์ที่ใช้ MIMD มี...

คำสั่งหลายชุด ข้อมูลหลายชุด

อนุกรมวิธานของฟลินน์สำหรับการออกแบบ MIMD: หลายคำสั่ง หลายข้อมูล แต่ละ "PU" (หน่วยประมวลผล) ไม่จำเป็นต้องตรงกับโปรเซสเซอร์เสมอไป แต่เป็นเพียงหน่วยการทำงานที่สามารถประมวลผลได้ มีการระบุ PU ไว้เพื่อแสดงความสัมพันธ์ระหว่างคำสั่ง ข้อมูล และการประมวลผลข้อมูล

ในด้านการคำนวณ เทคนิค การ ประมวล ผลแบบขนานคือ การประมวลผลคำสั่งหลายคำสั่งพร้อมกัน ( MIMD ) เครื่องคอมพิวเตอร์ที่ใช้ MIMD มี แกนประมวลผลจำนวนมากที่ทำงานแบบไม่พร้อมกันและเป็นอิสระต่อกัน ในเวลาใดเวลาหนึ่ง แกนประมวลผลต่างๆ อาจกำลังประมวลผลคำสั่งที่แตกต่างกันกับข้อมูลที่แตกต่างกันอยู่

สถาปัตยกรรม MIMD สามารถนำไปใช้ในหลายด้าน เช่นการออกแบบโดยใช้คอมพิวเตอร์ช่วย (CAD)และการผลิตโดยใช้คอมพิวเตอร์ช่วย (CMS) การจำลองการสร้างแบบจำลองและเป็นสวิตช์การสื่อสาร เครื่อง MIMD สามารถแบ่งออกได้เป็นสอง ประเภท คือ หน่วยความจำร่วม (Shared Memory)และ หน่วย ความจำแบบกระจาย (Distributed Memory ) การแบ่งประเภทนี้ขึ้นอยู่กับวิธีการที่โปรเซสเซอร์ MIMD เข้าถึงหน่วยความจำ เครื่องที่มีหน่วยความจำร่วมอาจเป็นแบบใช้บัส แบบขยาย หรือ แบบ ลำดับชั้นส่วนเครื่องที่มีหน่วยความจำแบบกระจายอาจมีรูปแบบการเชื่อมต่อ แบบไฮเปอร์คิวบ์หรือ แบบ เมช

ตัวอย่าง

ตัวอย่างของระบบ MIMD คือIntel Xeon Phiซึ่งสืบทอดมาจากสถาปัตยกรรมไมโครLarrabee [ 2 ]โปรเซสเซอร์เหล่านี้มีคอร์ประมวลผลหลายคอร์ (มากถึง 61 คอร์ ณ ปี 2015) ที่สามารถดำเนินการคำสั่งต่างๆ บนข้อมูลที่แตกต่างกันได้

ณ ปี 2013 คอมพิวเตอร์แบบขนานส่วนใหญ่เป็นระบบ MIMD [ 3 ]

โมเดลหน่วยความจำร่วม

ในโมเดลหน่วยความจำร่วม โปรเซสเซอร์ทั้งหมดจะเชื่อมต่อกับหน่วยความจำที่ "พร้อมใช้งานทั่วโลก" ผ่านทางซอฟต์แวร์หรือฮาร์ดแวร์ระบบปฏิบัติการมักจะรักษาความสอดคล้องของหน่วยความจำ[ 4 ]

จากมุมมองของโปรแกรมเมอร์ รูปแบบหน่วยความจำนี้เข้าใจได้ง่ายกว่ารูปแบบหน่วยความจำแบบกระจาย ข้อดีอีกประการหนึ่งคือ ความสอดคล้องของหน่วยความจำได้รับการจัดการโดยระบบปฏิบัติการ ไม่ใช่โปรแกรมที่เขียนขึ้น ข้อเสียที่ทราบกันดีสองประการคือ การขยายขนาดเกินกว่าสามสิบสองโปรเซสเซอร์ทำได้ยาก และรูปแบบหน่วยความจำที่ใช้ร่วมกันมีความยืดหยุ่นน้อยกว่ารูปแบบหน่วยความจำแบบกระจาย[ 4 ​​]

มีตัวอย่างมากมายของหน่วยความจำร่วม (มัลติโปรเซสเซอร์) ได้แก่ UMA ( การเข้าถึงหน่วยความจำแบบสม่ำเสมอ ) และ COMA ( การเข้าถึงหน่วยความจำเฉพาะแคช ) [ 5 ]

อิงตามรถบัส

เครื่อง MIMD ที่มีหน่วยความจำร่วม (Shared Memory หรือ MIMD) มีโปรเซสเซอร์ที่ใช้หน่วยความจำส่วนกลางร่วมกัน ในรูปแบบที่ง่ายที่สุด โปรเซสเซอร์ทั้งหมดจะเชื่อมต่อกับบัสที่เชื่อมต่อพวกมันกับหน่วยความจำ ซึ่งหมายความว่าเครื่องทุกเครื่องที่มีหน่วยความจำร่วมจะใช้ระบบบัสร่วม (Common Bus System หรือ CM) เฉพาะร่วมกันสำหรับไคลเอ็นต์ทั้งหมด

ตัวอย่างเช่น หากเราพิจารณาบัสที่มีไคลเอ็นต์ A, B, C เชื่อมต่ออยู่ด้านหนึ่ง และ P, Q, R เชื่อมต่ออยู่ด้านตรงข้าม ไคลเอ็นต์ใด ๆ ก็จะสื่อสารกับไคลเอ็นต์อื่น ๆ ผ่านทางอินเทอร์เฟซบัสระหว่างกัน

ลำดับชั้น

เครื่อง MIMD ที่มีหน่วยความจำร่วมแบบลำดับชั้นใช้บัสแบบลำดับชั้น (เช่น ใน " แฟตทรี ") เพื่อให้โปรเซสเซอร์เข้าถึงหน่วยความจำของกันและกันได้ โปรเซสเซอร์บนบอร์ดที่แตกต่างกันอาจสื่อสารกันผ่านบัสระหว่างโหนด บัสช่วยสนับสนุนการสื่อสารระหว่างบอร์ด ด้วยสถาปัตยกรรมประเภทนี้ เครื่องอาจรองรับโปรเซสเซอร์ได้มากกว่าเก้าพันตัว

หน่วยความจำแบบกระจาย

ในเครื่อง MIMD (multiple instruction, multiple data) ที่มีหน่วยความจำแบบกระจาย แต่ละโปรเซสเซอร์จะมีตำแหน่งหน่วยความจำของตนเอง โปรเซสเซอร์แต่ละตัวจะไม่รับรู้โดยตรงเกี่ยวกับหน่วยความจำของโปรเซสเซอร์อื่น หากต้องการแบ่งปันข้อมูล ข้อมูลจะต้องถูกส่งจากโปรเซสเซอร์หนึ่งไปยังอีกโปรเซสเซอร์หนึ่งในรูปแบบของข้อความ เนื่องจากไม่มีหน่วยความจำที่ใช้ร่วมกัน ปัญหาการแย่งชิงทรัพยากรจึงไม่รุนแรงนักในเครื่องเหล่านี้ การเชื่อมต่อโปรเซสเซอร์จำนวนมากเข้าด้วยกันโดยตรงนั้นไม่คุ้มค่าทางเศรษฐกิจ วิธีหนึ่งที่จะหลีกเลี่ยงการเชื่อมต่อโดยตรงจำนวนมากนี้คือการเชื่อมต่อโปรเซสเซอร์แต่ละตัวกับโปรเซสเซอร์อื่นเพียงไม่กี่ตัวเท่านั้น การออกแบบประเภทนี้อาจไม่มีประสิทธิภาพเนื่องจากเวลาที่เพิ่มขึ้นในการส่งข้อความจากโปรเซสเซอร์หนึ่งไปยังอีกโปรเซสเซอร์หนึ่งตามเส้นทางข้อความ เวลาที่โปรเซสเซอร์ใช้ในการกำหนดเส้นทางข้อความอย่างง่ายอาจมาก ระบบได้รับการออกแบบมาเพื่อลดการสูญเสียเวลาดังกล่าว และไฮเปอร์คิวบ์และเมชเป็นสองในรูปแบบการเชื่อมต่อที่ได้รับความนิยม

ตัวอย่างของหน่วยความจำแบบกระจาย (คอมพิวเตอร์หลายเครื่อง) ได้แก่MPP (โปรเซสเซอร์แบบขนานขนาดใหญ่) COW ( คลัสเตอร์ของเวิร์กสเตชัน)และ NUMA ( การเข้าถึงหน่วยความจำที่ไม่สม่ำเสมอ ) แบบแรกมีความซับซ้อนและมีราคาแพง: ซูเปอร์คอมพิวเตอร์จำนวนมากเชื่อมต่อกันด้วยเครือข่ายบรอดแบนด์ ตัวอย่างเช่น การเชื่อมต่อแบบไฮเปอร์คิวบ์และแบบเมช COW เป็นเวอร์ชัน "ทำเอง" ในราคาที่ถูกกว่ามาก[ 5 ]

เครือข่ายเชื่อมต่อไฮเปอร์คิวบ์

ในเครื่อง MIMD แบบกระจายหน่วยความจำที่มี เครือข่ายเชื่อมต่อระบบ ไฮเปอร์คิวบ์ซึ่งประกอบด้วยโปรเซสเซอร์สี่ตัว โปรเซสเซอร์และโมดูลหน่วยความจำจะถูกวางไว้ที่จุดยอดแต่ละจุดของสี่เหลี่ยมจัตุรัส เส้นผ่านศูนย์กลางของระบบคือจำนวนขั้นตอนขั้นต่ำที่โปรเซสเซอร์หนึ่งใช้ในการส่งข้อความไปยังโปรเซสเซอร์ที่อยู่ไกลที่สุด ตัวอย่างเช่น เส้นผ่านศูนย์กลางของ 2-คิวบ์คือ 2 ในระบบไฮเปอร์คิวบ์ที่มีโปรเซสเซอร์แปดตัวและแต่ละโปรเซสเซอร์และโมดูลหน่วยความจำถูกวางไว้ที่จุดยอดของคิวบ์ เส้นผ่านศูนย์กลางจะเป็น 3 โดยทั่วไป ระบบที่มีโปรเซสเซอร์ 2^N ตัว โดยแต่ละโปรเซสเซอร์เชื่อมต่อโดยตรงกับโปรเซสเซอร์อื่น N ตัว เส้นผ่านศูนย์กลางของระบบจะเป็น N ข้อเสียอย่างหนึ่งของระบบไฮเปอร์คิวบ์คือต้องกำหนดค่าเป็นกำลังของสอง ดังนั้นจึงต้องสร้างเครื่องที่มีโปรเซสเซอร์มากกว่าที่จำเป็นสำหรับแอปพลิเคชันจริง ๆ

เครือข่ายเชื่อมต่อแบบตาข่าย

ในเครื่อง MIMD แบบกระจายหน่วยความจำที่มีเครือข่ายเชื่อมต่อแบบตาข่าย โปรเซสเซอร์จะถูกจัดวางในตารางสองมิติ โดยแต่ละโปรเซสเซอร์จะเชื่อมต่อกับเพื่อนบ้านที่อยู่ติดกัน 4 ตัว อาจมีการเชื่อมต่อแบบวนรอบที่ขอบของตาข่าย ข้อดีอย่างหนึ่งของเครือข่ายเชื่อมต่อแบบตาข่ายเมื่อเทียบกับไฮเปอร์คิวบ์คือ ระบบตาข่ายไม่จำเป็นต้องกำหนดค่าเป็นกำลังของสอง ข้อเสียคือ เส้นผ่านศูนย์กลางของเครือข่ายตาข่ายจะใหญ่กว่าไฮเปอร์คิวบ์สำหรับระบบที่มีโปรเซสเซอร์มากกว่าสี่ตัว

ดูเพิ่มเติม

ดึงข้อมูลมาจาก " https://en.wikipedia.org/w/index.php?title=Multiple_instruction,_multiple_data&oldid=1336781477 "

สรุปเนื้อหา

ข้อมูลสำคัญจากบทความ

ข้อมูลสำคัญเกี่ยวกับ คำสั่งหลายชุด ข้อมูลหลายชุด

ในด้านการคำนวณ เทคนิค การ ประมวล ผลแบบขนานคือ การประมวลผลคำสั่งหลายคำสั่งพร้อมกัน ( MIMD ) เครื่องคอมพิวเตอร์ที่ใช้ MIMD มี...

ตัวอย่าง

ตัวอย่างของระบบ MIMD คือ Intel Xeon Phi ซึ่งสืบทอดมาจากสถาปัตยกรรมไมโคร Larrabee [ 2 ] โปรเซสเซอร์เหล่านี้มีคอร์ประมวลผลหลายคอร์ (มากถึง 61 คอร์ ณ ปี 2015) ที่สามารถดำเนินการคำสั่งต่างๆ บนข้อมูลที่แตกต่างกันได้

โมเดลหน่วยความจำร่วม

ในโมเดลหน่วยความจำร่วม โปรเซสเซอร์ทั้งหมดจะเชื่อมต่อกับหน่วยความจำที่ "พร้อมใช้งานทั่วโลก" ผ่านทาง ซอฟต์แวร์ หรือฮาร์ดแวร์ ระบบปฏิบัติการ มักจะรักษาความสอดคล้องของหน่วย ความจำ [ 4 ]

อิงตามรถบัส

เครื่อง MIMD ที่มีหน่วยความจำร่วม (Shared Memory หรือ MIMD) มีโปรเซสเซอร์ที่ใช้หน่วยความจำส่วนกลางร่วมกัน ในรูปแบบที่ง่ายที่สุด โปรเซสเซอร์ทั้งหมดจะเชื่อมต่อกับบัสที่เชื่อมต่อพวกมันกับหน่วยความจำ...