อ่าน 4 นาที
โปรเซสเซอร์หลายคอร์
โปรเซสเซอร์แบบหลายคอร์ (Manycore processors) เป็น โปรเซสเซอร์แบบมัลติคอร์ ชนิดพิเศษ ที่ออกแบบมาเพื่อ การประมวลผลแบบขนาน ในระดับสูง โดยประกอบด้วย คอร์ประมวลผล...
โปรเซสเซอร์หลายคอร์
โปรเซสเซอร์แบบหลายคอร์ (Manycore processors) เป็น โปรเซสเซอร์แบบมัลติคอร์ชนิดพิเศษ ที่ออกแบบมาเพื่อ การประมวลผลแบบขนานในระดับสูง โดยประกอบด้วย คอร์ประมวลผลอิสระจำนวนมาก(ตั้งแต่ไม่กี่สิบคอร์ไปจนถึงหลายพันคอร์ขึ้นไป) โปรเซสเซอร์แบบหลายคอร์ถูกนำไปใช้อย่างแพร่หลายในคอมพิวเตอร์ฝังตัวและคอมพิวเตอร์ ประสิทธิภาพสูง
เปรียบเทียบกับสถาปัตยกรรมมัลติคอร์
โปรเซสเซอร์แบบหลายคอร์แตกต่างจากโปรเซสเซอร์แบบหลายคอร์ตรงที่ได้รับการออกแบบมาตั้งแต่เริ่มต้นให้มีประสิทธิภาพใน การประมวล ผลแบบขนาน ที่สูงขึ้น และให้ปริมาณงานที่สูงขึ้น (หรือการใช้พลังงานที่ต่ำลง) โดยแลกกับความหน่วงและ ประสิทธิภาพการ ทำงาน แบบเธรดเดียว ที่ลดลง
ในทางตรงกันข้าม โปรเซสเซอร์แบบมัลติคอร์ นั้น โดยทั่วไปได้รับการออกแบบมาเพื่อประมวลผลทั้ง โค้ด แบบขนานและแบบอนุกรมได้อย่างมีประสิทธิภาพ ดังนั้นจึงให้ความสำคัญกับประสิทธิภาพการทำงานแบบเธรดเดียวสูง (เช่น การจัดสรรซิลิคอนเพิ่มเติมสำหรับการประมวลผลแบบไม่เรียงลำดับการใช้ไปป์ไลน์ที่ลึกกว่า หน่วยประมวลผล แบบซูเปอร์สเกลาร์ ที่ มากขึ้นและแคชขนาดใหญ่และทั่วไปกว่า) และหน่วยความจำที่ใช้ร่วมกันเทคนิคเหล่านี้จัดสรรทรัพยากรขณะทำงานเพื่อค้นหาความขนานโดยปริยายในเธรดเดียว โปรเซสเซอร์เหล่านี้ใช้ในระบบที่ได้รับการพัฒนาอย่างต่อเนื่อง (พร้อมความเข้ากันได้แบบย้อนหลัง) จากโปรเซสเซอร์แบบคอร์เดียว โดยปกติจะมีคอร์จำนวน "น้อย" (เช่น 2, 4, 8) และอาจเสริมด้วยตัวเร่งความเร็ว แบบหลายคอร์ (เช่นGPU ) ในระบบ แบบผสมผสาน
แรงจูงใจ
ความสอดคล้องของแคชเป็นปัญหาที่จำกัดการขยายขนาดของโปรเซสเซอร์มัลติคอร์ โปรเซสเซอร์หลายคอร์อาจหลีกเลี่ยงปัญหานี้ได้ด้วยวิธีการต่างๆ เช่นการส่งข้อความ[ 1 ] หน่วยความจำชั่วคราวDMA [ 2 ]พื้นที่แอดเดรสทั่วโลกที่แบ่งส่วน [ 3 ] หรือแคชแบบอ่านอย่างเดียว/ไม่สอดคล้อง โปรเซสเซอร์หลายคอร์ที่ใช้เครือข่ายบนชิป และหน่วยความ จำ ภายในทำให้ซอฟต์แวร์มีโอกาสปรับแต่งเค้าโครงเชิงพื้นที่ของงานได้อย่างชัดเจน (เช่น ดังที่เห็นในเครื่องมือที่พัฒนาขึ้นสำหรับTrueNorth ) [ 4 ]
โปรเซสเซอร์หลายคอร์อาจมีลักษณะร่วมกันมากขึ้น (ในเชิงแนวคิด) กับเทคโนโลยีที่มาจากการประมวลผลประสิทธิภาพสูงเช่นคลัสเตอร์และโปรเซสเซอร์เวกเตอร์[ 5 ]
อาจพิจารณาได้ว่า GPU เป็นรูปแบบหนึ่งของโปรเซสเซอร์แบบหลายคอร์ที่มีหน่วยประมวลผลเชเดอร์ หลายหน่วย และเหมาะสำหรับโค้ดที่มีการประมวลผลแบบขนานสูงเท่านั้น (อัตราการประมวลผลสูง แต่ประสิทธิภาพการทำงานแบบเธรดเดียวต่ำมาก)
แบบจำลองการเขียนโปรแกรม
- อินเทอร์เฟซการส่งข้อความ
- OpenCL [ 6 ]หรือ API อื่นๆ ที่รองรับเคอร์เนลการคำนวณ
- พื้นที่แอดเดรสทั่วโลกแบบแบ่งส่วน
- นักแสดง นายแบบ
- OpenMP [ 7 ]
- การไหลของข้อมูล
ประเภทของระบบปฏิบัติการแบบหลายคอร์
- จีพียูซึ่งสามารถอธิบายได้ว่าเป็นโปรเซสเซอร์เวกเตอร์ แบบหลายคอร์
- อาร์เรย์โปรเซสเซอร์แบบขนานขนาดใหญ่
- อาร์เรย์แบบอะซิงโครนัสของโปรเซสเซอร์แบบง่าย
- สถาปัตยกรรมเชิงพื้นที่
สถาปัตยกรรมหลายคอร์เฉพาะ
- ZettaScaler [1] โมดูล ประมวลผล PEZYของญี่ปุ่น2,048 คอร์
- โคโปรเซสเซอร์ Xeon Phiซึ่งมีสถาปัตยกรรม MIC ( Many Integrated Cores )
- ทิเลร่า
- สถาปัตยกรรม Adapteva Epiphany เป็นชิปแบบหลายคอร์ที่ใช้หน่วยความจำแบบ PGAS scratchpad
- โปรเซสเซอร์Coherent Logix hx3100 เป็นโปรเซสเซอร์ DSP/GPP 100 คอร์ ที่ใช้สถาปัตยกรรม HyperX
- Movidius Myriad 2 หน่วยประมวลผลภาพ (VPU) แบบหลายคอร์
- Kalrayคือ ตัวเร่งความเร็ว PCI-e แบบหลายคอ ร์สำหรับงานที่ต้องใช้การประมวลผลข้อมูลจำนวน มาก
- ชิปวิจัยเทราฟลอปส์ (Teraflops Research Chip)คือโปรเซสเซอร์แบบหลายคอร์ที่ใช้การส่งข้อความ (message passing)
- TrueNorthคือตัวเร่งความเร็ว AIที่มีสถาปัตยกรรมเครือข่ายแบบหลายคอร์บนชิป
- หน่วยประมวลผลแบบหลาย คอร์สีเขียว (Green arrays ) ที่ใช้การส่งข้อความ (message passing) มุ่งเป้าไปที่แอปพลิเคชันที่ใช้พลังงานต่ำ
- Sunway SW26010เป็นโปรเซสเซอร์แบบหลายคอร์ 260 คอร์ ที่ใช้ในซูเปอร์คอมพิวเตอร์อันดับ 1 ในขณะนั้นอย่าง Sunway TaihuLight
- SW52020ซึ่งเป็นรุ่นปรับปรุงของ SW26010 ที่มี 520 คอร์[ 8 ] [ 9 ]พร้อม SIMD 512 บิต (และยังเพิ่มการรองรับความแม่นยำครึ่งหนึ่ง) ใช้ในต้นแบบที่ออกแบบมาสำหรับระบบระดับเอ็กซาสเกล (และในอนาคตระบบระดับ 10 เอ็กซาสเกล) และตามรายงานของ datacenterdynamics มีข่าวลือว่าจีนมีระบบระดับเอ็กซาสเกลแยกกันสองระบบอย่างลับๆ อยู่แล้ว
- Eyerissโปรเซสเซอร์หลายคอร์ที่ออกแบบมาเพื่อใช้งานโครงข่ายประสาทเทียมแบบคอนโวลูชันสำหรับแอปพลิเคชันการมองเห็นแบบฝังตัว[ 10 ]
- Graphcore ตัวเร่งความเร็ว AIแบบหลายคอ ร์
คอมพิวเตอร์แบบหลายคอร์โดยเฉพาะที่มีซีพียูมากกว่า 1 ล้านคอร์
คอมพิวเตอร์จำนวนมากที่สร้างจากโปรเซสเซอร์มัลติคอร์มีคอร์ CPU แต่ละตัวตั้งแต่หนึ่งล้านคอร์ขึ้นไป ตัวอย่างเช่น:
- เกียวโค ( ภาษาญี่ปุ่น : 暁光Hepburn : gyōkō , แสงรุ่งอรุณ) เป็นซูเปอร์คอมพิวเตอร์ที่พัฒนาโดย ExaScaler และPEZY Computingมีหน่วยประมวลผลทั้งหมด 20,480,000 หน่วย บวกกับโปรเซสเซอร์หลัก Intel Xeon D จำนวน 1,250 ตัว
- SpiNNakerคือโปรเซสเซอร์แบบขนานขนาดใหญ่ (ซีพียู 1 ล้านคอร์) ที่มีหลายคอร์ (ใช้สถาปัตยกรรม ARM) ซึ่งสร้างขึ้นเป็นส่วนหนึ่งของโครงการHuman Brain Project
คอมพิวเตอร์เฉพาะรุ่นที่มีซีพียู 5 ล้านคอร์ขึ้นไป
ซูเปอร์คอมพิวเตอร์หลาย เครื่อง มีคอร์ CPU มากกว่า 5 ล้านคอร์ และหากมีการใช้หน่วยประมวลผลร่วม เช่น GPU ร่วมด้วย คอร์เหล่านั้นจะไม่ถูกนับรวมในจำนวนคอร์ทั้งหมด ก็จะมีคอมพิวเตอร์อีกหลายเครื่องที่มีจำนวนคอร์ถึงระดับนั้น
- ชายแดน
- ฟูกากุ (Fugaku ) เป็น ซูเปอร์คอมพิวเตอร์ของญี่ปุ่นที่ใช้ หน่วยประมวลผล Fujitsu A64FX ARM จำนวน 7,630,848 หน่วย
- ซันเวย์ ไท่หูไลท์ (Sunway TaihuLight) ซูเปอร์คอมพิวเตอร์แบบขนานขนาดใหญ่ (ซีพียู 10 ล้านคอร์) ของจีนซึ่งครั้งหนึ่งเคยเป็นหนึ่งในซูเปอร์คอมพิวเตอร์ที่เร็วที่สุดในโลก ใช้สถาปัตยกรรมแบบหลายคอร์ที่ออกแบบเอง ณ เดือนพฤศจิกายน 2018 มันเป็นซูเปอร์คอมพิวเตอร์ที่เร็วที่สุดอันดับสามของโลก (ตามการจัด อันดับ TOP500 ) โดยได้ประสิทธิภาพมาจาก โปรเซสเซอร์ SW26010แบบหลายคอร์จำนวน 40,960 ตัว แต่ละตัวมี 256 คอร์
ดูเพิ่มเติม
- ตัวประมวลผลเวกเตอร์
- ซิมดี
- การประมวลผลประสิทธิภาพสูง
- กลุ่มคอมพิวเตอร์
- ระบบมัลติโปรเซสเซอร์บนชิป
- หน่วยประมวลผลภาพ
- รูปแบบการเข้าถึงหน่วยความจำ
- ความสอดคล้องของแคช
- ขนานกันอย่างน่าอับอาย
- ขนานกันอย่างมหาศาล
- คูดา
ลิงก์ภายนอก
- การออกแบบสถาปัตยกรรมโซลูชันสำหรับอนาคตของ Manycoreเผยแพร่เมื่อวันที่ 19 กุมภาพันธ์ 2553 (มีลิงก์เสียมากกว่าหนึ่งลิงก์ในสไลด์)
- สถาปัตยกรรมเอียริส
สรุปเนื้อหา
ข้อมูลสำคัญจากบทความ
ข้อมูลสำคัญเกี่ยวกับ โปรเซสเซอร์หลายคอร์
โปรเซสเซอร์แบบหลายคอร์ (Manycore processors) เป็น โปรเซสเซอร์แบบมัลติคอร์ ชนิดพิเศษ ที่ออกแบบมาเพื่อ การประมวลผลแบบขนาน ในระดับสูง โดยประกอบด้วย คอร์ประมวลผล...
เปรียบเทียบกับสถาปัตยกรรมมัลติคอร์
โปรเซสเซอร์แบบหลายคอร์แตกต่างจาก โปรเซสเซอร์แบบหลายคอร์ตรง ที่ได้รับการออกแบบมาตั้งแต่เริ่มต้นให้มีประสิทธิภาพใน การประมวล ผลแบบขนาน ที่สูงขึ้น และให้ปริมาณงานที่สูงขึ้น (หรือการใช้พลังงานที่ต่ำลง) โดยแลกกับความหน่วงและ ประสิทธิภาพการ ทำงาน แบบเธรดเดียว...
แรงจูงใจ
ความสอดคล้องของแคช เป็นปัญหาที่จำกัดการขยายขนาดของโปรเซสเซอร์มัลติคอร์ โปรเซสเซอร์หลายคอร์อาจหลีกเลี่ยงปัญหานี้ได้ด้วยวิธีการต่างๆ เช่นการ ส่งข้อความ [ 1 ] หน่วย ความจำชั่วคราว DMA [ 2 ] พื้นที่แอดเดรสทั่วโลกที่แบ่งส่วน [ 3 ] หรือ...
แบบจำลองการเขียนโปรแกรม
อินเทอร์เฟซการส่งข้อความ OpenCL [ 6 ] หรือ API อื่นๆ ที่รองรับ เคอร์เนลการคำนวณ พื้นที่แอดเดรสทั่วโลกแบบแบ่งส่วน นักแสดง นายแบบ OpenMP [ 7 ] การไหลของข้อมูล