ผู้ที่เข้าวงการคอมฯ มาใหม่นั้นอาจไม่รู้ว่า CPU และ GPU แตกต่างกันอย่างไร หรือบางท่านอาจจะคิดว่าเข้าใจแล้วแต่ที่เข้าใจมานั้นมันถูกต้องรึเปล่า ในบทความนี้เรามีความจริงมาเผยให้ดูกัน
CPU (Central Processing Unit) คือหน่วยประมวลผลกลางของคอมพิวเตอร์ที่ดำเนินการทางคณิตศาสตร์และตรรกะโดยมีเวลาแฝงขั้นต่ำ(Low Latency) ในทางตรงกันข้าม ชิปกราฟิกหรือ GPU (Graphics Processing Unit) ที่ไม่ว่าจะเป็นหน่วยประมวลผลกราฟิกแบบฝัง(อยู่บนเมนบอร์ดหรือหน่วยประมวลผลเองที่เรียกว่า APU) หรือภายนอก(ซึ่งนิยมเรียกกันว่ากราฟิกการ์ด) ที่สามารถคำนวณเลขทศนิยมเพื่อแสดงพิกัดรูปหลายเหลี่ยมในรูปภาพและวิดีโอที่มีความละเอียดสูง
บทความนี้จะกล่าวถึงความแตกต่างระหว่าง CPU และ GPU ให้ทุกท่านได้รู้กันอย่างท่องแท้ จะเป็นเช่นไรนั้นไปติดตามกันได้เลย
CPU คืออะไร
GPU คืออะไร
11 ความแตกต่างของ CPU และ GPU
CPU คืออะไร
CPU เป็นส่วนประกอบหลักที่ทำให้อุปกรณ์คอมพิวเตอร์แตกต่างกันไปจากระบบเครื่องคำนวณในลักษณะอื่นๆ อย่างไรก็ตาม CPU สามารถทำงานได้โดยได้รับความช่วยเหลือจากส่วนประกอบเพิ่มเติมเช่น ชิปซิลิคอน ซึ่งชิปซิลิคอนนั้นได้รับการติดตั้งในซ็อกเก็ตเฉพาะบนแผงวงจรหลักของอุปกรณ์(เมนบอร์ดหรือ Mainboard)
CPU แตกต่างจากหน่วยความจำที่มีการจัดเก็บข้อมูลชั่วคราว นอกจากนี้ยังแตกต่างจากกราฟิกการ์ดหรือชิปกราฟิกเนื่องจากสิ่งเหล่านี้จะสร้างวิดีโอและภาพ 3 มิติที่แสดงบนหน้าจอและสร้างขึ้นโดยใช้เทคโนโลยีที่อยู่ภายในหน่วยประมวลผลกราฟิก (GPU)
CPU ในปัจจุบันนั้นมีอยู่ในอุปกรณ์ที่ผู้บริโภคใช้งานกันเป็นประจำเกือบจะทั้งหมดไม่ว่าจะเป็น นาฬิกาอัจฉริยะ, คอมพิวเตอร์หรือเทอร์โมสตัทเป็นต้น CPU นั้นจะทำงานในฐานะศูนย์กลางในการปฏิบัติการหลักของอุปกรณ์ใดๆ ก็ตามที่มี CPU ติดตั้งอยู่ อุปกรณ์เหล่านี้มีหน้าที่รับผิดชอบในการดำเนินการและประมวลผลตามคำสั่งเพื่อทำการแสดงผลลัพธ์ที่อุปกรณ์นั้นๆ ต้องการออกมา
CPU ทำงานอย่างไร
CPU หรือหน่วยประมวลผลกลาง(central processing unit) ประกอบด้วยหน่วยควบคุมที่จัดการและประสานการทำงานของอุปกรณ์ทั้งหมดในคอมพิวเตอร์ โดยจะระบุและรวบรวมคำสั่งจากหน่วยความจำหลักตามลำดับของคำสั่งที่ถูกต้อง จากนั้นจะตีความองค์ประกอบเหล่านั้นเพื่อให้ส่วนประกอบของคอมพิวเตอร์สามารถทำการทำงานอื่นๆ ของระบบถูกเปิดใช้งานในเวลาที่เหมาะสมเพื่อให้ฟังก์ชันที่เกี่ยวข้องสมบูรณ์สำหรับแต่ละคำสั่งที่ผู้ใช้ต้องการให้ทำงาน
ข้อมูลอินพุตทั้งหมดจะถูกถ่ายโอนจากหน่วยความจำหลัก(หรือ RAM) ไปยังหน่วยประมวลผลทางคณิตศาสตร์และลอจิก (ที่เรียกกันสั้นๆ ว่า ALU) ซึ่งใช้งานสำหรับการประมวลผล รวมถึงการดำเนินการทางคณิตศาสตร์พื้นฐานสี่รายการได้แก่การบวก, การลบ, การคูณและการหาร ไปจนกระทั่งการดำเนินการทางตรรกะบางอย่าง(เช่นการเปรียบเทียบมากกว่าหรือน้อยกว่าเป็นต้น) นอกไปจากนั้นยังรวมถึงการเปรียบเทียบข้อมูลและการแก้ปัญหาหรือทางเลือกที่เป็นไปได้ตามเกณฑ์การตัดสินใจที่กำหนดไว้ล่วงหน้า
คุณสมบัติที่สำคัญของ CPU นั้นจะสามารถกล่าวได้ดังต่อไปนี้
- คอร์หลายคอร์ที่ฝังอยู่ในชิปตัวเดียวกันหมายถึงมีการใช้โปรเซสเซอร์แบบมัลติคอร์ในพีซีสมัยใหม่ที่โดยแต่ละคอร์(หรืือแกนการประมวลผล) มีฟังก์ชันการทำงานเทียบเท่ากับคอร์อื่นๆ ทว่าแต่ละคอร์มีแคช(Cache) เป็นของตัวเอง ซึ่งทำให้แต่อาจโต้ตอบกับคอร์อื่นเมื่อจำเป็นได้ บางครั้งหน่วยประมวลผลหรือ CPU ก็จะมีแกนการประมวลผลกราฟิกหรือ GPU ของซึ่งเป็นเทคโนโลยีที่เรียกว่า Accelerated Processing Unit (APU) ของ AMD ทำให้ APU นั้นเหนือกว่าแกนประมวลผลทั่วไปในบางแง่มุมของการดำเนินการทางคณิตศาสตร์ อย่างไรก็ตาม GPU และ CPU ก็ยังคงมีความแตกต่างในการทำงานดังที่เราจะอธิบายต่อไปในบทความนี้
- ความสามารถในการสื่อสารกับส่วนประกอบอื่นๆ และควบคุมการจัดสรรทรัพยากร: CPU เป็นส่วนประกอบของแพลตฟอร์มที่ใหญ่กว่า CPU จะต้องมีปฏิสัมพันธ์กับโลกภายนอกโดยรอบโดยใช้บัสข้อมูล(วงจรนำข้อมูล) เพื่อโต้ตอบกับชิปเซ็ตบนเมนบอร์ดโดยที่อัตราการส่งข้อมูลนี้เรียกว่าแบนด์วิธ
- การใช้หน่วยความจำภายในจำนวนเล็กน้อยหรือ (cache) แคชหมายถึงจำนวนนาทีของหน่วยความจำแบบรวดเร็วที่รวมอยู่ในแกน CPU โดยตรง แคชระดับ 1 (L1) เร็วกว่าแต่ครอบคลุมน้อยกว่าระดับ 2 (L2) CPU บางตัวมีระดับที่สามซึ่งมักใช้ร่วมกันโดยคอร์ CPU จำนวนมาก ซึ่งหน่วยความจำนี้แตกต่างจากหน่วยความจำเข้าถึงโดยสุ่ม (RAM)(และเพราะการที่ต้องอยู่ภายใน CPU โดยตรงทำให้มันมีขนาดเล็กกว่า RAM โดยถึงจะมีขนาดน้อยกว่า RAM แต่มันมีราคาสูงมากกว่าเนื่องจากต้องประกอบอยู่ในหน่วยประมวลผลหรือ CPU โดยเฉพาะ)
-
- การวัดความเร็วเป็นเฮิรตซ์: โดยทั่วไป ประสิทธิภาพของโปรเซสเซอร์จะวัดเป็น MHz (เมกะเฮิรตซ์) หรือ GHz (กิกะเฮิรตซ์) ตัวเลขนี้แสดงถึงความถี่ของนาฬิกาภายในของ CPU เป็นรอบต่อวินาที สัญญาณนาฬิกาของโปรเซสเซอร์ 2.5GHz จะหมายถึง CPU สามารถที่จะทำงานตามคำสั่งได้เป็น 2.5 พันล้านครั้งทุกวินาทีเป็นต้น
- การวัดประสิทธิภาพใน IPC: ประสิทธิภาพหรือปริมาณงานที่ CPU สามารถทำได้ในทุกรอบสัญญาณนาฬิกามีความสำคัญพอๆ กับความเร็วของสัญญาณนาฬิกา IPC หรือคำสั่งต่อรอบเป็นตัวย่อทั่วไปที่ใช้วัดประสิทธิภาพของ CPU ทั้งนี้จำเป็นอย่างยิ่งที่จะต้องรู้เอาไว้ว่า IPC ของ CPU นั้นไม่คงที่ มันแตกต่างกันไปขึ้นอยู่กับแอปพลิเคชันที่ทำงานอยู่ ณ เวลานั้นๆ (ยิ่งใช้แอปพลิเคชันมากเท่านั้นก็ต้องใช้ IPC มากขึ้นเรื่อยๆ)
โดยสรุป CPU หรือหน่วยประมวลผลกลางเป็นโปรเซสเซอร์อเนกประสงค์ที่ทำหน้าที่หลายอย่าง ในทางตรงกันข้าม GPU หรือหน่วยประมวลผลกราฟิกเป็นโปรเซสเซอร์เฉพาะทางที่มีความสามารถในการคำนวณทางคณิตศาสตร์มากกว่า ทำให้เหมาะสำหรับการประมวลผลที่เกี่ยวข้องกับกิจกรรมคอมพิวเตอร์กราฟิกและกิจกรรมการเรียนรู้ของเครื่อง(อย่างเช่น AI) เป็นต้น
GPU คืออะไร
หน่วยประมวลผลกราฟิก (GPU หรือ graphics processing unit) คือวงจรไฟฟ้าหรือชิปที่สามารถแสดงกราฟิกบนอุปกรณ์อิเล็กทรอนิกส์ GPU โดยมีสองประเภทหลักๆ ได้แก่
- หน่วยประมวลผลกราฟิกในตัว(Integrated graphics processing units) หมายถึง GPU ในตัวที่ถูกรวมเข้ากับมาเธอร์บอร์ดของคอมพิวเตอร์(หรือรวมอยู่บนตัวของ CPU เลยในตัว) ทำให้โน๊ตบุ๊คมีขนาดกะทัดรัด, น้ำหนักเบาและประหยัดพลังงาน เหมาะสำหรับการเล่นเกม, การตัดต่อวิดีโอขั้นพื้นฐานและการแก้ไขรูปภาพ
- หน่วยประมวลผลกราฟิกแบบแยก(Discrete graphics processing units) หมายถึง GPU ที่แยกเป็นส่วนประกอบแยกต่างหากที่เสียบเข้าไปในคอมพิวเตอร์ผ่านทางเมนบอร์ด ซึ่งจะมาพร้อมกับขนาดใหญ่มากกว่าหน่วยประมวลผลกราฟิกในตัวและใช้พลังงานมากกว่า GPU ในตัว ทว่ามันจะเหมาะสำหรับการตัดต่อวิดีโอและรูปภาพ, การออกแบบกราฟิกและการเล่นเกมที่ต้องใช้การประมวลผลทางด้านกราฟิกหนักๆ นอกจากนี้ยังมีการใช้งานกันอย่างแพร่หลายในการดำเนินงานขององค์กรและการวิจัยทางวิทยาศาสตร์อีกด้วยต่างหาก(เนื่องจากการคำนวณทางด้านตัวเลขนั้นจะเร็วกว่า CPU เป็นอย่างมาก)
GeForce 256 จาก NVIDIA เป็น GPU ตัวแรกที่ใช้กันอย่างแพร่หลาย ถือว่าเป็น CPU ที่ได้รับการออกแบบมาอย่างชัดเจนสำหรับการสร้างกราฟิกแบบเรียลไทม์(เพราะมันมีหน่วยประมวลผลทางด้านแสงโดยเฉพาะ) ซึ่งเป็นแอปพลิเคชันที่ต้องใช้การดำเนินการทางคณิตศาสตร์อย่างกว้างขวางและแบนด์วิธหน่วยความจำสูง ด้วยวิวัฒนาการของกราฟิกแบบเรียลไทม์ทำให้ GPU สามารถตั้งโปรแกรมได้ด้วยอีกต่างหาก
หน่วยประมวลผลกราฟิก(GPU) ที่ทันสมัยที่สุดขับสามารถที่จะขับเคลื่อนซูเปอร์คอมพิวเตอร์สมัยใหม่และทำหน้าที่เป็นรากฐานหลักสำหรับการเรียนรู้เชิงลึก นอกจากนี้ยังนำเสนอข้อมูลอัจฉริยะสำหรับยานยนต์ไร้คนขับ, หุ่นยนต์และกล้องอัจฉริยะต่างๆ อีกด้วย
GPU ทำงานอย่างไร
- หน่วยลอจิกทางคณิตศาสตร์จำนวนมาก (ALUs หรือ A large number of arithmetic logic units): GPU สามารถจัดการข้อมูลจำนวนมหาศาลในหลายสตรีมได้ นี่เป็นเพราะ ALU จำนวนมหาศาลที่ถูกบรรจุเอาไว้บน GPU เป็นผลให้ GPU สามารถทำงานทางคณิตศาสตร์ที่ยากลำบากจำนวนมหาศาลได้ นอกจากนี้ GPU ยังมีคอร์หลายร้อยคอร์ที่สามารถจัดการเธรดการประมวลผลหลายเธรดพร้อมกันอีกด้วยได้
- การเชื่อมต่อผ่านพอร์ต: อาจใช้หลายพอร์ตเพื่อเชื่อมโยง GPU แยกกับจอแสดงผล อย่างไรก็ตาม พอร์ตจะต้องมีอยู่บนจอภาพและอุปกรณ์ของ GPU เองอย่างเช่น VGA, HDMI หรือ DVI เป็นตัวอย่างของพอร์ตการเชื่อมต่อยอดนิยมที่ถูกใช้งานในปัจจุบัน(แต่ VGA นั้นถูกเริ่มลดบทบาทความสำคัญไปแล้วเนื่องจากความสามารถในการส่งภาพที่ต่ำกว่าในปัจจุบันเป็นอย่างมาก)
- ความสามารถในการคำนวณจุดลอยตัว(The ability to perform floating-point arithmetic): GPU สามารถคำนวณเวกเตอร์และจุดลอยตัวได้เช่น การดำเนินการทางคณิตศาสตร์ในการแสดงจำนวนจริงโดยประมาณ กราฟิกการ์ดล่าสุดที่มาพร้อม GPU ในตัวสามารถจัดการค่าจุดทศนิยมที่มีความแม่นยำสองเท่าได้เป็นอย่างดีมากๆ (และดีมากขึ้นเรื่อยๆ)
- ความเหมาะสมกับการประมวลผลแบบขนาน: GPU มีจุดประสงค์หลักสำหรับงานหรือกิจกรรมที่สามารถทำงานแบบขนานได้อย่างมาก
ก่อนที่จะมีการเปิดตัว GPU ในทศวรรษ 1990 การเรนเดอร์ภาพได้ดำเนินการโดยหน่วยประมวลผลกลาง (CPU) เมื่อใช้ร่วมกับ GPU แล้วตัว GPU อาจปรับปรุงความเร็วของคอมพิวเตอร์โดยการทำงานที่ต้องใช้การคำนวณสูงเช่นการเรนเดอร์ ซึ่ง CPU ต้องรับผิดชอบก่อนหน้านี้ จะถูกส่งไปให้ GPU ทำแทนทำให้เพิ่มความเร็วในการประมวลผลของโปรแกรมเนื่องจาก GPU สามารถทำการคำนวณหลายอย่างพร้อมกันได้ การเปลี่ยนแปลงดังกล่าวยังเป็นหัวหอกในการสร้างซอฟต์แวร์ที่มีความซับซ้อนและความต้องการทรัพยากรมากขึ้นอีกด้วยต่างหาก
11 ความแตกต่างของ CPU และ GPU
หน่วยประมวลผลทั้ง CPU และ GPU มีความโดดเด่นในด้านต่างๆ ในระบบคอมพิวเตอร์ CPU เหมาะกว่าในการอุทิศพลังงานเพื่อดำเนินงานเดี่ยวๆ ในขณะที่ GPU เหมาะกับการคำนวณชุดข้อมูลที่ซับซ้อนพร้อมกันมากกว่า โดยต่อไปนี้เป็นกรรมวิธีที่เราจะเผยว่าการทำงานอื่นๆ ที่ทำให้ CPU และ GPU แตกต่างกันนั้นเป็นอย่างไร
1. ฟังก์ชั่นที่ตั้งใจไว้ในการคำนวณ
CPU หมายถึงหน่วยประมวลผลกลาง CPU เป็นโปรเซสเซอร์ทั่วไปที่มีความสำคัญต่อระบบคอมพิวเตอร์สมัยใหม่ทั้งหมด เนื่องจาก CPU ดำเนินการคำสั่งและกระบวนการที่จำเป็นสำหรับคอมพิวเตอร์และระบบปฏิบัติการเพื่อให้ทำงานได้อย่างมีประสิทธิภาพ ดังนั้นจึงมักเรียกกันว่าสมองของคอมพิวเตอร์
ตามที่กล่าวไว้ก่อนหน้านี้ CPU ประกอบด้วยหน่วยลอจิกทางคณิตศาสตร์ (ALU) หน่วยควบคุม (CU) และหน่วยความจำ(ภายในหรือแคช) หน่วยควบคุมจะจัดการการด้านการไหลของข้อมูลในขณะที่ ALU ดำเนินการทางตรรกะและทางคณิตศาสตร์กับข้อมูลที่มาจากหน่วยความจำ CPU กำหนดความเร็วที่โปรแกรมสามารถทำงานได้
GPU หมายถึงหน่วยประมวลผลกราฟิกหรือที่เรียกว่าการ์ดแสดงผลหรือการ์ดกราฟิก GPU เป็นโปรเซสเซอร์พิเศษที่ออกแบบและปรับให้เหมาะสมเพื่อประมวลผลข้อมูลกราฟิกโดยเฉพาะ ดังนั้นการแปลงข้อมูลเช่นรูปภาพจากรูปแบบกราฟิกหนึ่งไปยังอีกรูปแบบหนึ่ง นอกจากนี้ยังสามารถเรนเดอร์รูปภาพด้วยการสร้างรูปภาพ 2 มิติหรือ 3 มิติ ซึ่งใช้กันอย่างแพร่หลายในเวิร์กโฟลว์การพิมพ์ 3 มิติเป็นต้น
2. การมุ่งเน้นการดำเนินงาน
CPU มุ่งเน้นไปที่การทำงานที่มีเวลาแฝงต่ำ(Low Latancy) โดยปกติแล้วคอมพิวเตอร์ที่มีความหน่วงต่ำจะได้รับการปรับปรุงให้ประมวลผลคำสั่งหรือการถ่ายโอนข้อมูลในปริมาณมากโดยมีความล่าช้าน้อยที่สุด ใน CPU เวลาแฝงหมายถึงการหน่วงเวลาระหว่างอุปกรณ์ที่ส่งคำขอกับเวลาที่ CPU ตอบสนองความต้องการนั้นและความล่าช้านี้วัดเป็นรอบสัญญาณนาฬิกา
ระดับเวลาในการตอบสนองใน CPU อาจเพิ่มขึ้นอันเป็นผลมาจากการความผิดพลาดของข้อมูลที่ถูกเก็บแคชและการวางแนวที่ไม่ตรงกับคำสั่งที่จะต้องปฏิบัติงาน โดยปกติแล้วเวลาแฝงที่สูงจะสัมพันธ์กับเวลาในการโหลดหน้าเว็บที่เพิ่มขึ้นและความล้มเหลวของแอปพลิเคชัน
ในทางตรงกันข้าม GPU มุ่งเน้นไปที่ปริมาณงานสูง ปริมาณงานหมายถึงจำนวนสูงสุดของคำสั่งที่คล้ายกันที่สามารถดำเนินการได้ต่อรอบสัญญาณนาฬิกา เมื่อตัวถูกดำเนินการของแต่ละคำสั่งไม่ขึ้นอยู่กับคำสั่งก่อนหน้า ปริมาณงานต่ำอาจเป็นผลมาจากข้อจำกัดแบนด์วิดท์หน่วยความจำ(บนกราฟิกการ์ด), ความแตกต่างของสาขาอัลกอริธึมและเวลาแฝงในการเข้าถึงหน่วยความจำ
3. ฟังก์ชั่นการดำเนินงาน
CPU ทำหน้าที่หลักสี่อย่างได้แก่ ดึงข้อมูล, ถอดรหัส, ดำเนินการและเขียนกลับ(fetch, decode, execute, and write back)
- Fetch หมายถึงการดำเนินการที่ CPU รับคำสั่งจากหน่วยความจำโปรแกรม
- Decode หรือการถอดรหัสหมายถึงการแปลงคำสั่งโดยตัวถอดรหัสคำสั่งเพื่อพิจารณาว่าส่วนอื่นๆ ของ CPU ที่จำเป็นในการดำเนินการต่อไป
- Execute หมายถึงการปฏิบัติตามคำแนะนำ
- Writeback หมายถึงเทคนิคการแคชที่คัดลอกข้อมูลไปยังแคชหรือหน่วยความจำระดับที่สูงกว่า
หน้าที่หลักของ GPU คือการจัดการและปรับปรุงประสิทธิภาพวิดีโอและกราฟิก โดยมีคุณสมบัติต่างๆ เช่น การทำแผนที่พื้นผิว(Texture), การซ้อนทับด้วยฮาร์ดแวร์, การถอดรหัสไฟล์ Moving Picture Experts Group (MPEG) และเอาต์พุตดิจิทัลไปยังจอภาพสิ่งเหล่านี้ได้รับการออกแบบมาเพื่อลดภาระงานและสร้างกราฟิกที่เร็วขึ้น GPU ยังทำการคำนวณที่เกี่ยวข้องกับการดำเนินการ 3 มิติและจุดลอยตัวได้อีกด้วยต่างหาก
4. การใช้แกน
CPU สมัยใหม่มีคอร์อันทรงพลังระหว่าง 2 ถึง 24 คอร์ และแต่ละคอร์สามารถทำงานที่จะทำงานแตกต่างกันไปในขณะทำงานพร้อมกันได้ แกนสามารถแบ่งออกเป็นแกนเสมือนที่เรียกว่าเธรดผ่านกระบวนการที่เรียกว่ามัลติเธรดพร้อมกัน ตัวอย่างเช่น CPU ที่มีสี่คอร์สามารถแยกออกเป็นแปดเธรดได้
ประสิทธิภาพของ CPU จะเพิ่มขึ้นตามจำนวนคอร์ที่เพิ่มขึ้น เนื่องจากสามารถรันโปรแกรมต่างๆ พร้อมกันได้มากขึ้นและจัดการกับงานได้หลากหลาย ดังนั้นแกน CPU จึงได้รับการปรับให้เหมาะสมสำหรับการประมวลผลแบบอนุกรมและการรันระบบจัดการฐานข้อมูล (DBMS)
แกน GPU จะช้ากว่า CPU สำหรับการประมวลผลแบบอนุกรม แต่เร็วกว่ามากสำหรับการประมวลผลแบบขนาน เนื่องจากมีคอร์ที่ที่ความสามารถในการประมวลผลน้อยกว่าแต่ว่ามีอยู่เป็นหลายๆ พันคอร์ซึ่งเหมาะที่สุดสำหรับปริมาณงานแบบขนาน แกน GPU นั้นจึงถูกนิยมใช้งานเป็นโปรเซสเซอร์พิเศษสำหรับการจัดการการปรับแต่งกราฟิกโดยเฉพาะ
5. การประมวลผลคำสั่งแบบอนุกรมและแบบขนาน
ในการประมวลผลแบบอนุกรมนั้นลักษระงานเดียวจะดำเนินการในแต่ละครั้ง ในขณะที่การประมวลผลแบบขนานนั้นงานหลายงานจะดำเนินการพร้อมกัน
ในการประมวลผลแบบอนุกรม ทุกงานจะเสร็จสิ้นโดยใช้เวลาเฉลี่ยเท่ากัน การทำงานจะเสร็จสิ้นโดยใช้เทคนิคเข้าก่อนออกก่อน (FIFO, First IN First Out หรือมาก่อนก็ได้รับการประมวลผลก่อน) CPU เหมาะสำหรับการประมวลผลคำสั่งแบบอนุกรมมากกว่า เนื่องจากสามารถใช้คอร์เดียวเพื่อดำเนินการงานหนึ่งหลังจากเสร็จสิ้นอีกงานหนึ่งแล้วโดยที่ตัวนับโปรแกรมจะกำหนดลำดับการดำเนินการตามคำสั่ง
ในขณะเดียวกันนั้นงานจะถูกแบ่งระหว่างโปรเซสเซอร์หลายตัวในการประมวลผลแบบขนานเพื่อลดเวลาในการรันโปรแกรม GPU จึงเหมาะสำหรับการประมวลผลคำสั่งแบบขนานมากกว่า สถาปัตยกรรมของ GPU ช่วยให้ทำการคำนวณจำนวนมากข้ามสตรีมข้อมูลได้พร้อมๆ กัน จึงเป็นการเพิ่มความเร็วของระบบคอมพิวเตอร์ การประมวลผลแบบขนานมีจุดมุ่งหมายเพื่อเพิ่มความเร็วในการคำนวณของระบบคอมพิวเตอร์และเพิ่มปริมาณงาน
6. ความคล่องตัวและการโต้ตอบกับส่วนประกอบอื่นๆ
CPU มีความสามารถหลากหลายมากกว่าเมื่อเปรียบเทียบกับ GPU โดยที่ CPU นั้นมีคำสั่งที่หลากหลายและสามารถดำเนินงานได้หลายอย่าง(ตามเทคโนโลยีใหม่ที่เปลี่ยนแปลงไปเรื่อยๆ ในแต่ละสถาปัตยกรรมของหน่วยประมวลผล) เมื่อดำเนินการตามคำสั่ง CPU ยังโต้ตอบกับส่วนประกอบคอมพิวเตอร์เพิ่มเติมอื่นๆ ได้อีกเช่น RAM, ROM, ระบบอินพุต/เอาท์พุตพื้นฐาน (BIOS) และพอร์ตอินพุต/เอาท์พุต (I/O)
ในการเปรียบเทียบนั้น GPU สามารถรับชุดคำสั่งที่จำกัดและดำเนินการเฉพาะงานที่เกี่ยวข้องกับกราฟิกเท่านั้น GPU โต้ตอบกับส่วนประกอบคอมพิวเตอร์น้อยลงเมื่อดำเนินการตามคำแนะนำ บ่อยครั้งที่ GPU ต้องการเพียงการโต้ตอบกับจอแสดงผลและหน่วยความจำ(ของกราฟิกการ์ดเองและหน่วยความจำของตัวเครื่อง) เมื่อพิจารณาวิธีแสดงพิกเซลบนหน้าจอ
7. การปฏิบัติงาน
CPU สามารถจัดการงานระดับผู้บริโภคส่วนใหญ่ได้ แม้แต่งานที่ซับซ้อน โดยถึงแม้ว่าจะมีความเร็วค่อนข้างช้าก็ตาม CPU ยังสามารถจัดการงานการจัดการกราฟิกได้ด้วยแต่ประสิทธิภาพที่ได้จะลดลงอย่างมาก อย่างไรก็ตาม CPU ทำได้ดีกว่า GPU เมื่อพูดถึงการเรนเดอร์ 3D เนื่องจากความซับซ้อนของงาน นอกจากนี้ CPU ยังมีความจุหน่วยความจำมากขึ้น ดังนั้นผู้ผลิตสามารถขยายหน่วยความจำได้ถึง 128GB อย่างรวดเร็วโดยไม่กระทบต่อประสิทธิภาพการทำงาน
GPU ปรับปรุงรูปภาพและเรนเดอร์กราฟิกได้เร็วกว่า CPU เป็นหลัก การรวม GPU เข้ากับส่วนประกอบคอมพิวเตอร์ระดับไฮเอนด์สามารถเรนเดอร์กราฟิกได้เร็วกว่า CPU ถึง 100 เท่า แม้จะมีความเร็วสูงแต่ GPU มักได้รับการออกแบบมาเพื่อทำงานที่เรียบง่ายและไม่ซับซ้อน นอกจากนี้ GPU ยังมีหน่วยความจำกราฟิกการ์ดที่จำกัดสูงสุด 16GB ซึ่งไม่ซ้อนกันและไม่สามารถขยายได้อย่างง่ายดายโดยไม่ทำให้ประสิทธิภาพและปัญหาคอขวดลดลง
8. ข้อจำกัดด้านฮาร์ดแวร์
ผู้ผลิต CPU เผชิญกับอุปสรรคสำคัญเนื่องจากข้อจำกัดด้านฮาร์ดแวร์ ในปีพ.ศ. 2508 กฎของมัวร์ถูกสร้างขึ้นจากการสังเกตและการคาดคะเนแนวโน้มในอดีต ซึ่งเป็นการกำหนดก้าวสำหรับการปฏิวัติดิจิทัลสมัยใหม่ กฎของมัวร์นี้ระบุว่าจำนวนทรานซิสเตอร์บนชิปซิลิคอนเพิ่มขึ้นสองเท่าทุกๆ สองปี ในขณะที่ต้นทุนของคอมพิวเตอร์ลดลงครึ่งหนึ่ง อย่างไรก็ตาม 57 ปีต่อมา กฎของมัวร์น่าจะใกล้จะสิ้นสุดแล้ว เนื่องจากปัจจุบันมีการจำกัดจำนวนทรานซิสเตอร์ที่สามารถเพิ่มลงในชิ้นส่วนซิลิคอนได้อย่างไรก็ตาม ผู้ผลิตพยายามเอาชนะข้อจำกัดด้านฮาร์ดแวร์เหล่านี้โดยใช้การประมวลผลแบบกระจาย, คอมพิวเตอร์ควอนตัม และการเปลี่ยนซิลิคอน
ในทางกลับกัน ผู้ผลิต GPU ยังไม่มีข้อจำกัดด้านฮาร์ดแวร์จนถึงขณะนี้ กฎของ Huang ตั้งข้อสังเกตว่าอัตราความก้าวหน้าของ GPU นั้นเร็วกว่าของ CPU มาก นอกจากนี้ยังระบุด้วยว่าประสิทธิภาพของ GPU เพิ่มขึ้นสองเท่าทุก ๆ สองปี
9. ข้อจำกัดของ API
Application Programming Interface (API) เป็นอินเทอร์เฟซซอฟต์แวร์ที่ให้วิธีสำหรับโปรแกรมคอมพิวเตอร์ในการสื่อสารระหว่างกัน ผู้ผลิต CPU ไม่มีข้อจำกัด API บน CPU ของตน Data API ทำงานได้อย่างราบรื่นกับ CPU โดยไม่จำกัดฟังก์ชันการทำงาน อย่างไรก็ตาม GPU มี API กราฟิกที่จำกัดซึ่งสิ่งเหล่านี้ยังแก้ไขจุดบกพร่องได้ยากอีกด้วย
OpenCL และ Compute Unified Device Architecture (CUDA) เป็น API การเรนเดอร์กราฟิกที่ได้รับความนิยมมากที่สุดสำหรับ GPU โดยเฉพาะอย่างยิ่งกับ OpenCL ซึ่งเป็น API แบบโอเพ่นซอร์สที่ทำงานได้ดีกับฮาร์ดแวร์ GPU ของ AMD แต่ทำงานได้ช้ามากบนฮาร์ดแวร์ของ NVIDIA จนกระทั่ง CUDA เป็น API ที่เป็นกรรมสิทธิ์ของ NVIDIA และได้รับการปรับให้เหมาะกับการใช้งานกับ NVIDIA GPU อย่างไรก็ตาม การออกแบบเฉพาะของผู้ใช้ CUDA ในระบบนิเวศทำให้ยากต่อการเปลี่ยนแปลงในอนาคต
10. เวลาแฝงของ Context switch
Context switch latency หรือเวลาแฝงของสวิตช์บริบทหมายถึงเวลาที่หน่วยประมวลผลในการดำเนินการกระบวนการ เมื่อมีการร้องขอพร้อมคำแนะนำ ห่วงโซ่การพึ่งพาจะเริ่มต้นโดยอัตโนมัติ โดยที่กระบวนการหนึ่งจะขึ้นอยู่กับกระบวนการก่อนหน้าจนกว่าคำขอจะบรรลุผล CPU จะสลับช้ากว่าระหว่างหลายเธรดอันเป็นผลมาจากการจัดเก็บข้อมูลในรีจิสเตอร์ ในทางตรงกันข้าม งานของ GPU จะดำเนินการพร้อมกัน(ตามเหตุผลที่ได้อธิบายเอาไว้ในตอนต้น) ซึ่งหมายความว่าจะไม่มีการสลับบริบทระหว่างวาร์ป โดยที่รีจิสเตอร์จะต้องถูกบันทึกลงในหน่วยความจำและกู้คืน
11. วิธีการใช้งานแคช
CPU ดึงข้อมูลจากหน่วยความจำแคชอย่างมีประสิทธิภาพโดยใช้แคชเพื่อประหยัดเวลาและพลังงาน แคชเป็นหน่วยความจำที่เล็กกว่าและเร็วกว่า ถูกติดตั้งใกล้กับ(และมักฝังอยู่ใน) CPU ที่เก็บสำเนาข้อมูลจากตำแหน่งหน่วยความจำหลัก(RAM) ที่ใช้บ่อย แคช CPU ประกอบด้วยหลายระดับ มักจะสูงถึงระดับ 3 และบางครั้งเป็นระดับ 4 โดยแต่ละระดับจะตัดสินใจว่าควรเก็บหรือลบหน่วยความจำเฉพาะหรือไม่ โดยขึ้นอยู่กับความถี่ในการเข้าถึง CPU สมัยใหม่จะทำการจัดการแคชโดยอัตโนมัติ
ถึงแม้ว่าโครงสร้างของหน่วยความจำภายในของ GPU นั้นคล้ายคลึงกับโครงสร้างของ CPU อย่างไรก็ตาม หน่วยความจำ GPU มีสถาปัตยกรรมการเข้าถึงหน่วยความจำแคชที่ไม่สม่ำเสมอ ทำให้โปรแกรมเมอร์สามารถเลือกหน่วยความจำที่จะเก็บไว้และหน่วยความจำที่จะลบออกจากหน่วยความจำหลักของ GPU ได้ยากกว่าแต่สิ่งนี้ก็ทำให้สามารถเพิ่มประสิทธิภาพการใช้งานหน่วยความจำของ GPU สามารถทำได้ดีขึ้นกว่าเดิมเป็นอย่างมากหากเทียบกับในอดีต
ที่มา : electricaltechnology, spiceworks