คุณสามารถแยกความแตกต่างของตัวประมวลผลแบบมัลติโปรเซสเซอร์และ Asymmetric แบบหลายจุดบนจุดอื่น ๆ ที่กล่าวถึงในตารางเปรียบเทียบที่แสดงด้านล่าง
แผนภูมิเปรียบเทียบ
พื้นฐานสำหรับการเปรียบเทียบ | การประมวลผลหลายส่วนแบบสมมาตร | การประมวลผลหลายส่วนแบบไม่สมมาตร |
---|---|---|
ขั้นพื้นฐาน | โปรเซสเซอร์แต่ละตัวจะทำงานในระบบปฏิบัติการ | ตัวประมวลผลหลักเท่านั้นที่รันงานของระบบปฏิบัติการ |
กระบวนการ | ตัวประมวลผลใช้กระบวนการจากคิวพร้อมทั่วไปหรืออาจมีคิวพร้อมส่วนตัวสำหรับแต่ละโปรเซสเซอร์ | ตัวประมวลผลหลักกำหนดกระบวนการให้กับตัวประมวลผลสลาฟหรือมีกระบวนการที่กำหนดไว้ล่วงหน้า |
สถาปัตยกรรม | โปรเซสเซอร์ทั้งหมดใน Symmetric Multiprocessing มีสถาปัตยกรรมเดียวกัน | โปรเซสเซอร์ทั้งหมดใน Asymmetric Multiprocessing อาจมีสถาปัตยกรรมที่เหมือนกันหรือแตกต่างกัน |
การสื่อสาร | โปรเซสเซอร์ทั้งหมดสื่อสารกับโปรเซสเซอร์อื่นโดยหน่วยความจำที่ใช้ร่วมกัน | โปรเซสเซอร์ไม่จำเป็นต้องสื่อสารเนื่องจากถูกควบคุมโดยตัวประมวลผลหลัก |
ความล้มเหลว | หากตัวประมวลผลล้มเหลวความสามารถในการคำนวณของระบบจะลดลง | หากตัวประมวลผลหลักล้มเหลวสลาฟจะถูกเปลี่ยนเป็นตัวประมวลผลหลักเพื่อดำเนินการต่อ หากตัวประมวลผล Slave ล้มเหลวงานของมันจะถูกเปลี่ยนเป็นตัวประมวลผลอื่น |
ความสะดวก | Symmetric Multiprocessor นั้นซับซ้อนเนื่องจากโปรเซสเซอร์ทั้งหมดจำเป็นต้องซิงโครไนซ์เพื่อรักษาสมดุลของโหลด | Asymmetric Multiprocessor นั้นง่ายเนื่องจากตัวประมวลผลหลักเข้าถึงโครงสร้างข้อมูล |
ความหมายของการประมวลผลหลายส่วนแบบสมมาตร
Symmetric Multiprocessing เป็นตัวประมวลผลทั้งหมดที่ทำงานในระบบปฏิบัติการ มัน ไม่มี ความสัมพันธ์ระหว่าง ทาส กับ มาสเตอร์ อย่างระบบมัลติโพรเซสเซอร์แบบอสมมาตร โปรเซสเซอร์ทั้งหมดที่นี่สื่อสารโดย ใช้หน่วยความจำที่แชร์
โปรเซสเซอร์เริ่มต้นการดำเนินการกระบวนการจากคิวพร้อมทั่วไป โปรเซสเซอร์แต่ละตัวอาจมีคิวส่วนตัวของกระบวนการพร้อมที่จะดำเนินการ จะต้องได้รับการดูแลโดยตัว กำหนดตารางเวลา ว่าไม่มีตัวประมวลผลสองตัวที่ประมวลผลกระบวนการเดียวกัน
Symmetric Multiprocessing มีความ สมดุลของโหลด ที่เหมาะสม ทนต่อความผิดพลาดได้ ดีขึ้นและยังช่วยลดโอกาส เกิดปัญหาคอขวด ของ CPU มี ความซับซ้อน เนื่องจากหน่วยความจำมีการใช้ร่วมกันระหว่างโปรเซสเซอร์ทั้งหมด ใน Symmetric Multiprocessing ความล้มเหลวของโปรเซสเซอร์ทำให้ความสามารถในการ คำนวณลดลง
คำจำกัดความของ Asymmetric Multiprocessing
Asymmetric Multiprocessing มีความสัมพันธ์ระหว่าง master-slave ระหว่างโปรเซสเซอร์ มีตัวประมวลผลหลักหนึ่งตัวที่ควบคุมตัวประมวลผล Slave ที่เหลืออยู่ ตัวประมวลผลหลักจัดสรรกระบวนการให้กับหน่วยประมวลผลสลาฟหรืออาจมีงานที่กำหนดไว้ล่วงหน้าให้ทำงาน
ตัวประมวลผลหลักควบคุม โครงสร้างข้อมูล การ กำหนดเวลา ของกระบวนการการประมวลผล I / O และกิจกรรมระบบอื่น ๆ จะถูกควบคุมโดย ตัวประมวลผลหลัก
ในกรณีที่ตัวประมวลผลหลักล้มเหลวตัวประมวลผลหนึ่งตัวซึ่งอยู่ระหว่างตัวประมวลผล Slave จะทำให้ตัวประมวลผลหลักดำเนินการต่อไป ในกรณีที่หน่วยประมวลผล Slave ล้มเหลวหน่วยประมวลผล Slave ตัวอื่นจะเข้ามาแทนที่ Asymmetric Multiprocessing นั้น ง่าย เนื่องจากมีโปรเซสเซอร์เพียงตัวเดียวที่ควบคุมโครงสร้างข้อมูลและกิจกรรมทั้งหมดในระบบ
ความแตกต่างที่สำคัญระหว่างการประมวลผลหลายส่วนแบบสมมาตรและแบบอสมมาตร
- จุดที่สามารถแยกแยะได้มากที่สุดระหว่าง symmetric และ asymmetric multiprocessing คืองานใน OS นั้นจัดการโดยตัวประมวลผลหลักใน Asymmetric Multiprocessing เท่านั้น ในทางกลับกันโปรเซสเซอร์ทั้งหมดในมัลติโพรเซสเซอร์แบบสมมาตรจะทำงานในระบบปฏิบัติการ
- ในการประมวลผลหลายตัวแบบสมมาตรแต่ละโปรเซสเซอร์อาจมีคิวส่วนตัวของกระบวนการพร้อมหรือพวกเขาสามารถใช้กระบวนการจากคิวพร้อมทั่วไป แต่ในมัลติโพรเซสเซอร์แบบอสมมาตรตัวประมวลผลหลักจะกำหนดกระบวนการให้กับตัวประมวลผลสลาฟ
- โปรเซสเซอร์ทั้งหมดใน Symmetric Multiprocessing มีสถาปัตยกรรมเดียวกัน แต่โครงสร้างของโปรเซสเซอร์ในระบบมัลติโปรเซสเซอร์แบบอสมมาตรอาจแตกต่างกัน
- โปรเซสเซอร์ในการประมวลผลมัลติโพรเซสเซอร์แบบสมมาตรสื่อสารซึ่งกันและกันโดยหน่วยความจำที่แชร์ อย่างไรก็ตามตัวประมวลผลใน Asymmetric Multiprocessing ไม่จำเป็นต้องสื่อสารซึ่งกันและกันเนื่องจากถูกควบคุมโดยตัวประมวลผลหลัก
- ในกรณีที่ตัวประมวลผลหลักล้มเหลวตัวประมวลผล Slave จะเปลี่ยนเป็นตัวประมวลผลหลักเพื่อดำเนินการต่อ แต่ถ้าตัวประมวลผลในการประมวลผลหลายตัวแบบสมมาตรล้มเหลวความสามารถในการคำนวณของระบบจะลดลง
- Asymmetric Multiprocessor นั้นง่ายเหมือนตัวประมวลผลหลักเท่านั้นที่เข้าถึงโครงสร้างข้อมูลในขณะที่ symmetric multiprocessor นั้นซับซ้อนเนื่องจากโปรเซสเซอร์ทั้งหมดจำเป็นต้องทำงานในการซิงโครไนซ์
สรุป:
ตัวประมวลผลหลายตัวเพิ่มความเร็วของระบบเนื่องจากสามารถประมวลผลหลายกระบวนการพร้อมกันได้ การประมวลผลหลายตัวแบบไม่สมมาตรเป็นเรื่องง่ายมีเพียงโปรเซสเซอร์ (มาสเตอร์) เดียวเท่านั้นที่สามารถเข้าถึงโครงสร้างข้อมูลได้ ในขณะที่ Symmetric Multiprocessing นั้นซับซ้อนเนื่องจากโครงสร้างข้อมูลนั้นถูกใช้ร่วมกันระหว่างโปรเซสเซอร์ทั้งหมดและโปรเซสเซอร์ทั้งหมดจำเป็นต้องทำงานในการซิงโครไนซ์