สำหรับผู้ที่ (หลง) เข้ามาอ่านบทความนี้ ทุกคนน่าจะรู้จัก หน่วยประมวลผลกลาง CPU กับ หน่วยประมวลผลกราฟิก GPU กันเป็นอย่างดีมาแล้ว ไม่มากก็น้อย แต่หลายคนอาจเคยได้ยินคำว่า NPU หรือ Neural Processing Unit มาก่อน
NPU เป็นเทคโนโลยีชิปประมวลผลรูปแบบใหม่ ที่กำลังมีบทบาทสำคัญอย่างมากในวงการฮาร์ดแวร์อิเล็กทรอนิกส์ โดยเฉพาะวงการ สมาร์ทโฟนที่เราจะได้เห็นกันบ่อย ๆ และอาจแพร่หลายมากขึ้นในอนาคต ซึ่งบทความนี้เราจะมาศึกษากันว่า NPU คืออะไร แตกต่างจาก CPU หรือ GPU ตรงไหน ? ถ้าพร้อมแล้วมาอ่านกันเลย
NPU หรือที่ย่อมาจากคำว่า "Neural Processing Unit" หากแปลเป็นไทยคือ "หน่วยประมวลผลแบบเส้นประสาท" เป็นชิปไมโครโปรเซสเซอร์ ที่มีประสิทธิภาพสูง ทำงานในลักษณะเหมือนการจำลองเซลล์ประสาทมนุษย์ ทำให้สามารถรองรับข้อมูลพร้อมกันครั้งละมาก ๆ และประมวลข้อมูลเชิงลึกได้ ถ้าเทียบกันแล้วมันมีประสิทธิภาพมากกว่า GPU หลายเท่า โดยจะใช้ทำหน้าที่หลัก ๆ ในอุปกรณ์คือ การประมวลผลข้อมูลที่มาจากอัลกอริทึมของ เทคโนโลยี AI (Artificial Intelligence) หรือระบบ Machine Learning บนอุปกรณ์นั่นเอง
ยกตัวอย่างเช่น การใช้งาน Voice Assistant บนมือถือ, การถ่ายภาพด้วยกล้อง AI, การเรนเดอร์และปรับปรุงความลื่นไหลของเกม, การจดจำข้อมูลทางทางชีวภาพ และใช้งานในด้านต่าง ๆ เล่น ปลดล็อกมือถือด้วยใบหน้า หรือ สแกนลายนิ้วมือ และอีกมากมาย
อย่างไรก็ตามผู้พัฒนาอาจไม่ได้เรียกหน่วยประมวลผลประเภทนี้ว่า NPU เสมอไป เช่น Apple จะเรียกว่า "Neural Engine" หรือหน่วยประมวลผล AI ของอุปกรณ์ Apple นั่นเอง
นอกเหนือจากนี้ ยังมีอีกชื่อ ที่ใช้เรียกว่า Tensor Processing Unit (TPU) หรือหน่วยประมวลผล Cloud TPU ที่เป็นบริการชิปโปรเซสเซอร์สำหรับ Deep learning ให้เช่าผ่านคลาวด์ของ Google โดยผู้ที่ใช้บริการส่วนมาจะเป็นนักวิจัยที่กำลังพัฒนาระบบ Machine learning หรือสร้าง AI โดยใช้ Cloud TPU มาช่วยประมวลผลในการฝึกนั่นเอง
สำหรับชื่อเรียกอื่น ๆ เช่น Neural Network Processor (NNP), Intelligence Processing Unit (IPU) หรือ Vision Processing Unit (VPU) เป็นต้น
จริงๆ แล้วไม่ใช่แค่หน้าที่เฉพาะด้านจะแตกต่างกัน แต่ลักษณะการทำงานของทั้ง 3 ประเภท ก็แตกต่างกันอย่างสิ้นเชิง ตามหัวข้อต่อไปนี้
NPU ออกแบบมาเพื่อรองรับการประมวลผลกับ ระบบ AI ที่มีการจำลองและทำงานเหมือนเซลล์สมองของมนุษย์ โดยจะเก็บข้อมูลและประมวลผลด้วยกระบวนการที่เรียกว่า "Synaptic Weights" หรือการส่งผ่านข้อมูลไปในชั้นเลเยอร์วงจรที่จำลองเหมือนเซลล์ประสาท และก็ให้น้ำหนักข้อมูลพร้อมกับประมวลผลตามประสบการณ์ที่เคยเรียนรู้มา
มีประโยชน์ในด้านการประมวลข้อมูลขนาดใหญ่และมีประสิทธิภาพสูงในการให้ผลลัพธ์สำหรับข้อมูลเชิงลึก และถนัดในด้านการประมวลผลภาพ เช่น กล้อง AI บนมือถือ เป็นต้น
GPU หรือ "หน่วยประมวลผลกราฟิก" มีลักษณะของการทำงานแบบขนาน สามารถรับข้อมูลเข้ามาพร้อมกันครั้งละมาก ๆ และประมวลผลลัพธ์ออกมาพร้อมกันได้ จึงใช้รองรับการประมวลภาพกราฟิกของอุปกรณ์นั่นเอง
ส่วน CPU หรือ "หน่วยประมวลผลกลาง" มีหน้าที่ รับคำสั่งจาก ฮาร์ดแวร์คอมพิวเตอร์, โปรแกรม, แอปพลิเคชัน และระบบต่าง ๆ ทั้งมวล มาประมวลผล เรียกว่ารับงานหลายทาง และระบบสำคัญเกือบทั้งหมดของอุปกรณ์ต้องผ่าน CPU เพื่อให้ทำงานได้
โดยลักษณะการทำงานของ CPU นั้นเป็นแบบเชิงเส้น หมายถึง ข้อมูลคำสั่งจะต่อแถวเรียงรายเข้าสู่ CPU เป็นเส้นเดียวและรอการประมวลผลตามลำดับ ความสมูทของการทำงานนอกจากจะขึ้นอยู่กับความเร็วของ CPU แล้วก็ยังมี เรื่องของข้อมูลที่ใช้ป้อนเข้าไป ว่าจะเกินกำลังของ CPU หรือไม่ นี่เป็นเหตุผลที่จำเป็นต้องมี NPU และ GPU มาช่วยรันข้อมูลที่จำเป็นต้องใช้การประมวลผลที่รวดเร็ว และ ทำพร้อม ๆ กัน
ภาพตัวอย่างเปรียบเทียบ CPU และ GPU
ปัจจุบันการใช้งาน NPU นิยมมากบน สมาร์ทโฟน เนื่องจากศักยภาพที่สูง แถมเป็นชิปขนาดเล็ก ทำให้ใส่ลงไปเพื่อเพิ่มประสิทธิภาพในการทำงานทดแทนในส่วนที่ CPU และ GPU ของมือถือไม่สามารถทำได้ โดยเฉพาะในเรื่องของการประมวลผลข้อมูล AI เพราะสมัยนี้ เรามีแอปพลิเคชัน และ ระบบมากมายที่นำ เทคโนโลยี AI มาประยุกต์ใช้บนมือถือ ลำพังแค่ CPU ทำงานอย่างเดียว หรือใช้ GPU อันเล็ก ๆ บนมือถือ ก็อาจจะหนักหน่วงเกินไป ดังนั้น NPU ก็เลยช่วยแบ่งเบาภาระ
สำหรับในฝั่งของคอมพิวเตอร์ตั้งโต๊ะ (Desktop Computer) หรือ โน้ตบุ๊กเอง ก็มีการเปิดตัวชิป NPU ออกมาบ้างแล้ว ที่เห็นก็คือ M1 บนเครื่อง Mac และชิป NPU ของเครื่อง Surface Pro X เป็นต้น
|
งานเขียนคืออาหาร ปลายปากกา ก็คือปลายตะหลิว |