ทำไมโปรแกรมเมอร์ต้องเข้าใจว่า AI Chips คืออะไร
หลายคนคิดว่างานของโปรแกรมเมอร์จบแค่การเขียนโค้ดลงใน AI Chips (ชิปประมวลผลสำหรับปัญญาประดิษฐ์) โดยไม่ต้องสนใจว่าข้างในมันทำงานอย่างไร แต่ในความเป็นจริง Hardware (อุปกรณ์ที่เป็นชิ้นส่วนจับต้องได้ของคอมพิวเตอร์) คือรากฐานที่ทำให้ซอฟต์แวร์ของคุณรันได้จริง ยิ่งคุณเข้าใจว่าชิปเหล่านี้ถูกสร้างมาอย่างไร คุณจะยิ่งเขียนโปรแกรมได้มีประสิทธิภาพมากขึ้น
ลองนึกภาพว่าคุณเป็นเชฟทำอาหาร ถ้าคุณรู้ว่าเตาแก๊สของคุณให้ความร้อนแบบไหน หรือกระทะเหล็กเก็บความร้อนได้ดีอย่างไร คุณก็จะปรับสูตรอาหารให้รสชาติออกมาดีที่สุดได้ การเป็นโปรแกรมเมอร์ก็เหมือนกันครับ ถ้าเรารู้ว่าชิปประมวลผลถูกจำกัดด้วยพลังงานหรือความร้อนแบบไหน เราจะเขียนโค้ดให้มันประมวลผลได้เร็วและกินทรัพยากรน้อยลง
วันนี้เราจะมาแกะรอยการเดินทางของ AI Chip ตั้งแต่เป็นแค่ทรายซิลิคอนจนกลายเป็นสมองของระบบ Data Center (ศูนย์รวมเซิร์ฟเวอร์ขนาดใหญ่ที่เก็บข้อมูลและรันแอปพลิเคชัน) นี่ไม่ใช่เรื่องไกลตัวสำหรับโปรแกรมเมอร์ยุคใหม่ เพราะการเข้าใจเรื่องชิปจะช่วยให้คุณมองเห็นภาพรวมของระบบที่คุณกำลังพัฒนาอยู่ได้ชัดเจนขึ้น
รู้จักกับขั้นตอนการออกแบบชิปด้วย EDA
ก่อนจะกลายเป็นชิปตัวจริง ทุกอย่างเริ่มต้นที่ซอฟต์แวร์ที่เรียกว่า EDA (ชุดโปรแกรมช่วยออกแบบวงจรอิเล็กทรอนิกส์) โปรแกรมเมอร์อย่างเราคุ้นเคยกับการเขียนโค้ดภาษา Python หรือ JavaScript แต่การออกแบบชิปเริ่มจาก RTL (โค้ดระดับภาษาที่อธิบายพฤติกรรมของวงจรดิจิทัล) เพื่อบอกว่าสัญญาณไฟฟ้าในชิปควรวิ่งอย่างไร
ลองดูตัวอย่างเปรียบเทียบการเขียนโค้ดทั่วไปกับโค้ดที่ใช้ในฮาร์ดแวร์ครับ
// ตัวอย่างโค้ด Verilog (ภาษาที่ใช้เขียนวงจร)
module simple_gate(input a, input b, output out);
assign out = a & b; // ถ้า a และ b เป็นจริง ผลลัพธ์ถึงจะเป็นจริง
endmodule
จากโค้ดด้านบน ส่วน module คือการกำหนดกรอบของวงจร ส่วน assign คือการสั่งให้ลอจิกทำงานเหมือนกับตัวดำเนินการในโปรแกรมปกติ ผลลัพธ์ที่ได้คือการจำลองวงจรไฟฟ้าจริงๆ ในระดับพื้นฐานที่ซอฟต์แวร์ EDA จะนำไปเปลี่ยนเป็นแผนผังการวางสายไฟนับพันล้านเส้นบนแผ่นชิป
จุดที่มือใหม่มักพลาดคือการคิดว่าโค้ดฮาร์ดแวร์ทำงานเหมือนโปรแกรมทั่วไปที่รันทีละบรรทัด แต่จริงๆ แล้วมันทำงานแบบ Parallel (การทำงานหลายอย่างพร้อมกันขนานไปกับเวลา) ทุกบรรทัดในโค้ดฮาร์ดแวร์จะทำงานตลอดเวลาเหมือนกับวงจรไฟฟ้าที่เปิดสวิตช์ทิ้งไว้ตลอดนั่นเองครับ
จากทรายสู่แผ่นเวเฟอร์ด้วยกระบวนการ Fabrication
ขั้นตอนต่อมาคือ Fabrication (กระบวนการผลิตชิปในโรงงานเฉพาะทาง) หรือที่เรียกสั้นๆ ว่า Fab ชิปคอมพิวเตอร์ผลิตมาจากซิลิคอนซึ่งสกัดมาจากทราย การผลิตต้องทำในห้องที่สะอาดกว่าห้องผ่าตัดหลายเท่า เพื่อป้องกันฝุ่นแม้เพียงชิ้นเดียวที่จะทำให้วงจรขนาดจิ๋วเสียหายได้
กระบวนการนี้เปรียบเหมือนการพิมพ์ภาพถ่ายลงบนแผ่นซิลิคอนกลมๆ ขนาดใหญ่ที่เรียกว่า Wafer (แผ่นซิลิคอนบางๆ ที่ใช้เป็นฐานรองชิป) โดยใช้แสงความเข้มสูงฉายผ่านหน้ากากลวดลายที่ออกแบบไว้ เพื่อสร้างวงจรขนาดเล็กระดับ Nanometer (หนึ่งในพันล้านเมตร) ลงบนแผ่นซิลิคอนนั้น
ความยากของขั้นตอนนี้คือ Yield (อัตราส่วนของชิปที่ใช้งานได้จริงเทียบกับที่ผลิตทั้งหมด) ถ้าเราคุมคุณภาพไม่ดี ชิปส่วนใหญ่จะเสียและใช้งานไม่ได้ ซึ่งเป็นสาเหตุว่าทำไมชิป AI ถึงมีราคาสูงมาก เพราะการผลิตแต่ละครั้งมีความเสี่ยงสูงที่จะได้ของเสียออกมาด้วย
Lithography หัวใจสำคัญของการย่อส่วน
Lithography (กระบวนการพิมพ์ลวดลายลงบนแผ่นชิปด้วยแสง) คือเทคโนโลยีที่ล้ำที่สุดในโลกปัจจุบัน โดยเฉพาะเครื่องของบริษัท ASML ที่ใช้แสง EUV (แสงความยาวคลื่นสั้นมากที่ใช้สร้างลวดลายระดับนาโน) สะท้อนกับกระจกที่เรียบเนียนที่สุดเพื่อวาดลวดลายวงจรที่เล็กจนตาเปล่ามองไม่เห็น
ลองจินตนาการว่าคุณต้องเขียนหนังสือทั้งเล่มลงบนเมล็ดข้าวสารโดยใช้เพียงเข็มเล่มเล็กๆ นั่นคือความละเอียดที่วิศวกรต้องเจอในการสร้าง AI Accelerator (ชิปที่ถูกออกแบบมาเพื่อเร่งความเร็วในการประมวลผลงานด้าน AI โดยเฉพาะ) ยิ่งวาดลายได้เล็กเท่าไหร่ เราก็ยิ่งยัดจำนวนทรานซิสเตอร์เข้าไปได้มากขึ้นเท่านั้น
สำหรับโปรแกรมเมอร์ นี่หมายความว่าเรามี "พื้นที่" ในการประมวลผลมากขึ้นเรื่อยๆ ตามกฎของมัวร์ แต่ปัจจุบันการย่อขนาดเริ่มถึงขีดจำกัดทางฟิสิกส์แล้ว ทำให้วิศวกรต้องเปลี่ยนวิธีออกแบบจากการทำให้เล็กลง เป็นการวางโครงสร้างแบบ 3 มิติแทน เพื่อให้ชิปยังคงความแรงได้โดยไม่ร้อนจนเกินไป
Memory และ Advanced Packaging การรวมร่างชิป
ชิป AI ในปัจจุบันไม่ใช่แค่ก้อนซิลิคอนก้อนเดียว แต่เป็น Advanced Packaging (เทคโนโลยีการรวมชิปหลายชิ้นเข้าด้วยกันเป็นหน่วยเดียว) ที่นำเอาหน่วยประมวลผลหลักมาวางรวมกับ HBM (หน่วยความจำความเร็วสูงพิเศษ) เพื่อให้การส่งข้อมูลทำได้รวดเร็วที่สุดโดยไม่เกิดคอขวด
การเชื่อมต่อชิปเหล่านี้เข้าด้วยกันทำผ่าน TSV (ช่องทางเชื่อมต่อไฟฟ้าที่เจาะทะลุแผ่นซิลิคอน) เปรียบเสมือนการสร้างทางด่วนหลายชั้นระหว่างตึก เพื่อให้ข้อมูลวิ่งจากหน่วยความจำไปสู่สมองของชิปได้โดยไม่เสียเวลา การทำแบบนี้ช่วยลดระยะทางที่ไฟฟ้าต้องเดินทางและลดพลังงานที่ใช้ไปได้มหาศาล
ถ้าคุณเคยสงสัยว่าทำไมเวลาเขียนโปรแกรมดึงข้อมูลจำนวนมากแล้วช้า นั่นเพราะการดึงข้อมูลจาก RAM ภายนอกมันไกลกว่าการดึงข้อมูลภายในชิปแบบนี้มาก ความเข้าใจเรื่องนี้ช่วยให้คุณเลือกใช้โครงสร้างข้อมูล (Data Structures) ที่เหมาะสมกับหน่วยความจำของคอมพิวเตอร์ในอนาคตได้ดีขึ้นครับ
สรุป: การประยุกต์ใช้ความรู้เรื่องฮาร์ดแวร์
การเข้าใจว่า How AI Chips Are Made (วิธีการผลิตชิป AI) ไม่ใช่แค่การเรียนรู้เรื่องฟิสิกส์ แต่เป็นการเห็นภาพว่า "ขีดจำกัด" ของซอฟต์แวร์เราอยู่ที่ไหน เมื่อคุณรู้ว่าชิปมีราคาแพงและผลิตยาก คุณจะเริ่มเขียนโค้ดที่ประหยัดทรัพยากรมากขึ้น คุณจะเริ่มแคร์เรื่องการจัดการ Memory และการส่งข้อมูลที่ฟุ่มเฟือย
ตัวอย่างเช่น เมื่อคุณเขียนโปรแกรมจัดการข้อมูลขนาดใหญ่ (Big Data) แทนที่จะดึงข้อมูลทั้งหมดมาไว้ที่เดียว คุณอาจจะใช้เทคนิคการประมวลผลแบบ Batching (การแบ่งข้อมูลเป็นกลุ่มเล็กๆ ส่งเข้าชิปทีละรอบ) เพื่อให้สอดคล้องกับธรรมชาติของชิปที่ต้องมีการรับส่งข้อมูลผ่านทางด่วนเหล่านี้
จงเป็นโปรแกรมเมอร์ที่มองเห็นทะลุไปถึงฮาร์ดแวร์ เพราะคนที่เข้าใจทั้งระดับโค้ดและระดับเครื่องจักร คือคนที่จะสร้างซอฟต์แวร์ที่เปลี่ยนโลกได้อย่างแท้จริงครับ เริ่มจากวันนี้ ลองศึกษาข้อมูลเพิ่มเติมจากแหล่งเรียนรู้ฟรีอย่าง freeCodeCamp เพื่อต่อยอดความเข้าใจในโลกของเซมิคอนดักเตอร์ให้ลึกซึ้งยิ่งขึ้นครับ
ที่มา: How AI Chips Are Made — freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More