อะไรคือความแตกต่างระหว่างคอร์และโปรเซสเซอร์?
ฉันได้ค้นหาแล้วบน Google แต่ฉันเพิ่งมีข้อกำหนดแบบ multi-core และ multi-processor แต่ไม่ตรงกับสิ่งที่ฉันกำลังมองหา
อะไรคือความแตกต่างระหว่างคอร์และโปรเซสเซอร์?
ฉันได้ค้นหาแล้วบน Google แต่ฉันเพิ่งมีข้อกำหนดแบบ multi-core และ multi-processor แต่ไม่ตรงกับสิ่งที่ฉันกำลังมองหา
คำตอบ:
แกนกลางมักเป็นหน่วยการคำนวณพื้นฐานของ CPU - มันสามารถเรียกใช้บริบทของโปรแกรมเดียว (หรือหลายรายการถ้ารองรับเธรดฮาร์ดแวร์เช่นการไฮเปอร์เธรดบน CPU ของ Intel) การบำรุงรักษาสถานะโปรแกรมที่ถูกต้องลงทะเบียนและลำดับการดำเนินการที่ถูกต้อง การดำเนินการผ่านALU ALUsเพื่อวัตถุประสงค์ในการปรับให้เหมาะสมคอร์ยังสามารถเก็บแคชบนคอร์พร้อมสำเนาของหน่วยความจำที่ใช้บ่อย
CPU อาจมีคอร์ตั้งแต่หนึ่งคอร์ขึ้นไปเพื่อทำงานในเวลาที่กำหนด งานเหล่านี้มักจะเป็นกระบวนการซอฟต์แวร์และเธรดที่ OS กำหนดเวลา โปรดทราบว่าระบบปฏิบัติการอาจมีหลายเธรดให้ทำงาน แต่ซีพียูสามารถรัน X งานดังกล่าวในเวลาที่กำหนดโดยที่ X = หมายเลขแกน * จำนวนเธรดฮาร์ดแวร์ต่อคอร์ ส่วนที่เหลือจะต้องรอให้ระบบปฏิบัติการกำหนดเวลาว่าจะดำเนินการงานที่กำลังดำเนินอยู่หรือวิธีอื่นใด
นอกเหนือจากหนึ่งคอร์หรือหลายคอร์ซีพียูจะรวมการเชื่อมต่อระหว่างกันที่เชื่อมต่อคอร์กับโลกภายนอกและมักจะเป็นแคชที่แชร์ "ระดับสุดท้าย" ขนาดใหญ่ มีองค์ประกอบสำคัญหลายอย่างที่จำเป็นสำหรับการทำงานของ CPU แต่ตำแหน่งที่แน่นอนอาจแตกต่างกันไปตามการออกแบบ คุณจะต้องใช้ตัวควบคุมหน่วยความจำเพื่อพูดคุยกับหน่วยความจำตัวควบคุม I / O (จอแสดงผล PCIe, USB และอื่น ๆ ) ในอดีตองค์ประกอบเหล่านี้อยู่นอก CPU ใน "ชิปเซ็ต" เสริม แต่การออกแบบที่ทันสมัยส่วนใหญ่ได้รวมไว้ใน CPU
นอกจากนี้ CPU อาจมี GPU ในตัวและทุกอย่างที่นักออกแบบต้องการให้ใกล้เคียงกับประสิทธิภาพการใช้พลังงานและการผลิต การออกแบบ CPU ส่วนใหญ่มีแนวโน้มว่าสิ่งที่เรียกว่าระบบบนชิป (SoC)
นี่คือการออกแบบ "คลาสสิค" ที่ใช้โดยอุปกรณ์ทั่วไปที่ทันสมัยที่สุด (ไคลเอนต์พีซีเซิร์ฟเวอร์และแท็บเล็ตและสมาร์ทโฟน) คุณสามารถค้นหาการออกแบบที่ซับซ้อนมากขึ้นโดยปกติจะอยู่ในสถาบันการศึกษาที่ไม่ได้ทำการคำนวณในหน่วย "แกนเหมือน" พื้นฐาน
/proc/cpuinfo
ผมเห็นสิบหกเส้นแม้ว่ามันจะพูดว่าprocessor:
model: AMD Ryzen 7 2700X Eight-Core Processor
ดังนั้นอย่างน้อยในกรณีนี้ 8 คอร์แต่ละตัวมี "โปรเซสเซอร์" สองตัวซึ่งเทียบได้กับคำตอบอื่น ๆ ที่นี่
รูปภาพอาจพูดได้มากกว่าหนึ่งพันคำ:
* รูปที่อธิบายถึงความซับซ้อนของระบบมัลติโปรเซสเซอร์ที่ทันสมัย, มัลติคอร์
ที่มา:
Open images in new tab
แล้วซูมเข้าใช้cltr
++
เรามาทำความเข้าใจกันก่อนว่า CPU คืออะไรและอะไรคือ core ซึ่งเป็นหน่วยประมวลผลกลาง CPU สามารถมีหลายคอร์ได้แกนเหล่านั้นคือโปรเซสเซอร์โดยตัวมันเองสามารถรันโปรแกรมได้ แต่มันมีอยู่ในชิปตัวเดียวกัน
ในอดีตซีพียูตัวหนึ่งได้รับการแจกจ่ายในจำนวนชิปไม่กี่ตัว แต่เมื่อกฎของมัวร์ดำเนินไปพวกเขาก็ต้องมีซีพียูที่สมบูรณ์ภายในชิปตัวเดียว (ตาย) ตั้งแต่ยุค 90 ผู้ผลิตเริ่มต้นเพื่อให้พอดีกับแกนกลางมากขึ้นในแม่พิมพ์เดียวกัน แนวคิดของ Multi-core
ในวันนี้มีความเป็นไปได้ที่จะมีหลายร้อยคอร์ใน GPU เดียวกัน (Intel) หรือซีพียู เทคนิคอื่น ๆ ที่พัฒนาขึ้นในยุค 90 คือมัลติเธรดแบบหลายเธรดพร้อมกันโดยทั่วไปพวกเขาพบว่าเป็นไปได้ที่จะมีเธรดอื่นในซีพียูแกนเดี่ยวเดียวกันเนื่องจากทรัพยากรส่วนใหญ่ถูกทำซ้ำแล้วเช่น ALU หลาย ๆ รีจิสเตอร์
ดังนั้นโดยทั่วไปซีพียูสามารถมีหลายคอร์แต่ละตัวสามารถรันเธรดหนึ่งเธรดขึ้นไปในเวลาเดียวกันเราอาจคาดว่าจะมีคอร์มากขึ้นในอนาคต แต่ด้วยความยากลำบากในการโปรแกรมอย่างมีประสิทธิภาพ
CPU เป็นหน่วยประมวลผลกลาง ตั้งแต่ปี 2002 เรามีโปรเซสเซอร์แกนเดียวเท่านั้นนั่นคือเราจะทำงานเพียงครั้งเดียวหรือโปรแกรมในเวลาเดียว
สำหรับการที่มีหลายโปรแกรมทำงานในแต่ละครั้งเราจะต้องใช้ตัวประมวลผลหลายตัวในการดำเนินการหลายกระบวนการในแต่ละครั้งดังนั้นเราจึงจำเป็นต้องใช้มาเธอร์บอร์ดตัวอื่นสำหรับเรื่องนี้และนั่นแพงมาก
ดังนั้น Intel จึงแนะนำแนวคิดของการทำไฮเปอร์เธรดนั่นคือมันจะแปลงซีพียูเดี่ยวเป็นซีพียูเสมือนสองตัวนั่นคือเรามีสองคอร์สำหรับงานของเรา ตอนนี้ซีพียูเป็นแบบเดี่ยว แต่มันทำท่า (ปลอม) เพียงอย่างเดียวว่ามันมีซีพียูคู่และทำงานหลายอย่าง แต่การมีหลายคอร์ที่แท้จริงจะดีกว่าดังนั้นผู้คนจึงพัฒนาการทำโปรเซสเซอร์แบบมัลติคอร์เช่นโปรเซสเซอร์หลายตัวในกล่องเดียวคือการคว้าซีพียูหลายตัวบนซีพียูตัวใหญ่ตัวเดียว นั่นคือหลายแกน
ในวันแรก ... เหมือนก่อนยุค 90 ... โปรเซสเซอร์ไม่สามารถทำงานหลายอย่างได้อย่างมีประสิทธิภาพ ... coz โปรเซสเซอร์เดียวสามารถจัดการงานเดียว ... ดังนั้นเมื่อเราเคยบอกว่าฉัน โปรแกรมป้องกันไวรัส, Microsoft word, vlc, ฯลฯ ซอฟต์แวร์กำลังทำงานในเวลาเดียวกัน ... ซึ่งไม่เป็นความจริง เมื่อฉันพูดว่าโปรเซสเซอร์สามารถจัดการกระบวนการเดียวในเวลา ... ฉันหมายถึงมัน จริง ๆ แล้วมันจะประมวลผลงานเดียว ... จากนั้นก็ใช้ในการหยุดงานชั่วคราว ... ใช้งานอื่น ... ทำมันให้สำเร็จถ้างานสั้น ๆ ของมันหยุดทำงานชั่วคราวและเพิ่มลงในคิว ... จากนั้นต่อไป แต่ 'หยุดชั่วคราว' ที่ฉันกล่าวถึงนี้มีขนาดเล็กมาก (appx. 1ns) ที่คุณไม่เข้าใจว่างานนั้นถูกหยุดชั่วคราว เช่น. ใน vlc ขณะฟังเพลงมีแอพอื่น ๆ ทำงานพร้อมกัน แต่อย่างที่ฉันบอกคุณ ... ทีละรายการ ...
แต่นี่เป็นเรื่องเกี่ยวกับโปรเซสเซอร์เก่า ...
โปรเซสเซอร์วันนี้คือชิ้นที่ 3 มีโปรเซสเซอร์หลายคอร์ ตอนนี้ 'คอร์' สามารถเปรียบเทียบกับโปรเซสเซอร์ที่ 1 หรือ 2 ของตัวเอง ... ฝังลงในชิปตัวเดียวซึ่งเป็นโปรเซสเซอร์เดียว ดังนั้นตอนนี้เราเข้าใจว่าแกนประมวลผลคืออะไรคือตัวประมวลผลขนาดเล็กซึ่งรวมกันเป็นโปรเซสเซอร์ และแต่ละคอร์สามารถจัดการกับกระบวนการเดียวในแต่ละครั้งหรือหลายเธรดที่ออกแบบมาสำหรับระบบปฏิบัติการ และพวกเขาก็ทำตามขั้นตอนเดียวกับที่ฉันได้กล่าวไว้ข้างต้นเกี่ยวกับโปรเซสเซอร์เดี่ยว
เช่น. โปรเซสเซอร์ i7 6gen มี 8 คอร์ ... เช่น 8 มินิโปรเซสเซอร์ใน 1 i7 ... นั่นคือความเร็วของมันคือ 8x เท่าโปรเซสเซอร์เก่า และนี่คือวิธีการทำงานหลายอย่างที่สามารถทำได้
อาจมีหลายร้อยคอร์ในโปรเซสเซอร์เดียวเช่น Intel i128
ฉันหวังว่าฉันจะอธิบายเรื่องนี้ได้ดี
รูปภาพของ Intel มีประโยชน์ดังที่แสดงโดยคำตอบที่ดีที่สุดของ Tortuga นี่คือคำอธิบายภาพ
หน่วยประมวลผล : ชิปเซมิคอนดักเตอร์หนึ่งตัวซีพียู (หน่วยประมวลผลกลาง) นั่งในซ็อกเก็ตเดียวประมาณปี 1950 - 2010 เมื่อเวลาผ่านไปฟังก์ชั่นอื่น ๆ อีกมากมายได้ถูกบรรจุลงในชิปซีพียู ก่อนที่จะมีการเปิดตัวโปรเซสเซอร์ชิปเดี่ยวในปี 1950 โปรเซสเซอร์หนึ่งอาจกระจายไปทั่วชิปหลายตัว ในช่วงกลางปี 2010 ชิพระบบบนชิปทำให้การประมวลผลของหน่วยประมวลผลหนึ่ง ๆ กับชิปหนึ่ง ๆ มีความสมบูรณ์มากขึ้น แต่นั่นก็เป็นสิ่งที่ผู้คนทั่วไปเรียกว่าโปรเซสเซอร์เพราะใน "คอมพิวเตอร์นี้มีโปรเซสเซอร์ i7" หรือ "ระบบคอมพิวเตอร์นี้ มีโปรเซสเซอร์สี่ตัว "
แกนหลัก : หนึ่งบล็อกของ CPU ดำเนินการคำสั่งทีละครั้ง (คุณจะเห็นคนพูดหนึ่งคำสั่งต่อรอบสัญญาณนาฬิกา แต่ CPU บางตัวใช้รอบสัญญาณนาฬิกาหลายรอบสำหรับคำแนะนำบางอย่าง)