Wired ได้เผยแพร่เรื่องราวการนำ FPGA มาใช้สร้างอนาคตของ Microsoft ซึ่งทางทีมงาน TechTalkThai อ่านแล้วรู้สึกว่าน่าสนใจดี จึงขอสรุปให้ทุกท่านได้อ่านกันดังนี้ครับ

ปี 2012 เมื่อทีมงานของ Microsoft ได้ร่วมกันประชุมเพื่อทำนายถึงอนาคตวงการเทคโนโลยีและพัฒนาสิ่งที่จะมาตอบโจทย์เหล่านี้ให้ได้ล่วงหน้า Doug Burger ผู้เป็นนักวิจัยทางด้านชิปคอมพิวเตอร์ใน Microsoft ก็ได้นำเสนอโครงการ Project Catapult ซึ่งเป็นการออกแบบ Hardware สถาปัตยกรรมใหม่สำหรับทุกๆ บริการของ Microsoft ขึ้นมา เพราะ Doug Burger นั้นเชื่อว่าในโลกที่ขับเคลื่อนด้วยบริการของ Software นี้ Microsoft จำเป็นจะต้องคิดค้นนวัตกรรมใหม่ๆ มาเปลี่ยนแปลงเทคโนโลยีฝั่ง Server และ Network ให้ทำงานได้อย่างมีประสิทธิภาพสูงยิ่งขึ้นกว่าแต่ก่อน
คำเสนอข้อนี้ออกจะเป็นสิ่งที่แปลกประหลาดสำหรับบริษัทที่พัฒนา Software มาโดยตลอดอย่าง Microsoft แต่ในเวลานั้นทั้ง Google และ Amazon ต่างก็มุ่งไปในทิศทางนี้กันทั้งคู่ และ Microsoft เองก็ไม่สามารถหลีกหนีแนวทางนี้ได้พ้นเพราะผู้ผลิต Hardware ทั่วโลกต่างไม่สามารถตอบโจทย์ของการสร้าง Data Center ขนาดใหญ่อย่างที่ Microsoft กำลังทำอยู่ได้เลย อย่างไรก็ดี Steve Baller กลับไม่เห็นด้วยในแนวทางนี้ แต่ Qi Lu ผู้กุมบังเหียนของ Microsoft Bing กลับเห็นด้วยและผลักดันอย่างเต็มที่ ทำให้ Project Catapult นี้ได้เริ่มต้นกับ Microsoft Bing ก่อนเป็นโครงการแรก
Project Catapult จึงได้เริ่มเดินหน้าพัฒนา Field Programmable Gate Array หรือ FPGA สำหรับการใช้งานภายใน Server โดยเฉพาะขึ้นมา และได้ช่วยให้การทำ Machine Learning และแสดงผลการค้นหาภายใน Bing นั้นมีความเร็วในการค้นหาขึ้นจากเดิมที่เคยต้องใช้เวลาถึง 4 วินาทีนั้น ลดเหลือเพียงแค่ 23 มิลลิวินาทีเท่านั้น อีกทั้งหลังจากที่ได้เข้ามาไปมีส่วนร่วมใน Microsoft Bing แล้ว Project Catapult เองก็ได้มองหาช่องทางที่จะเข้าไปมีบทบาทภายในผลิตภัณฑ์เรือธงของ Microsoft อย่าง Microsoft Office 365 และ Microsoft Azure
แต่ในเวลานั้น เหล่าผู้บริหารของทีม Microsoft Azure กลับไม่เห็นด้วยกับการเสริมความสามารถในการทำ Machine Learning ให้กับ Azure เพราะในเวลานั้น Microsoft Azure ประสบปัญหาทางด้านการประมวลผลข้อมูลและการรับส่งข้อมูล Traffic Network จำนวนมหาศาลอยู่ ซึ่ง CPU เองนั้นก็ไม่สามารถตอบโจทย์เหล่านี้ได้ดีนัก จนกระทั่ง Mark Russinovich ได้เล็งเห็นว่าการนำ FPGA มาใช้จัดการ Network โดยเฉพาะนั้นอาจจะมีผลลัพธ์ที่ดีก็ได้ ทำให้ Project Catapult ได้เริ่มก้าวเข้ามาสู่ Microsoft Azure
หลังจากผ่านการออกแบบไปถึง 3 Prototype ในที่สุด FPGA สำหรับติดตั้งบน Server เพื่อเชื่อมต่อเข้ากับระบบเครือข่ายโดยตรงสำหรับการค้นหาเส้นทาง, การเข้ารหัส และการบีบอัดข้อมูลที่มีค่าใช้จ่ายถูกกว่าส่วนประกอบอื่นๆ บน Server และยังกินพลังงานน้อยกว่า 10% นั้น กลับช่วยให้ Server สามารถประมวลผลข้อมูลได้มากกว่าเดิมถึง 2 เท่าเลยทีเดียว
ก้าวนี้ถือเป็นก้าวที่ยิ่งใหญ่มากสำหรับ Project Catapult และทำให้โครงการนี้ได้เข้าสู่ขั้นถัดไปในการเริ่มหาทางนำไปใช้งานสำหรับบริการ Microsoft Office 365 ด้วยแล้ว และ Project Catapult เองก็จะยังถูกพัฒนาไปสู่การรองรับการทำ Deep Neural Network ซึ่งเป็น AI ตระกูลใหม่ที่กำลังได้รับความนิยมสูงอีกด้วย
ความยากและท้าทายของการใช้ FPGA เป็นหลักในการออกแบบนี้ก็คือการที่ต้องคอย Reprogram ตัว FPGA ใหม่เรื่อยๆ ทุกครั้งที่มีการเปลี่ยนแปลง ซึ่งไม่ใช่งานง่ายเลย แต่ด้วยความโดดเด่นในการประมวลผลงานที่มีความเฉพาะทางสูง FPGA จึงมีความคุ้มค่าที่สูงกว่า GPU และในขณะเดียวกันก็ยังคงมีความยืดหยุ่นที่จะพอจะให้ทำการเปลี่ยนแปลงได้อย่างต่อเนื่องได้ ต่างจากแนวคิดการพัฒนาชิปประมวลผลเฉพาะทางอย่าง TPU ของ Google ที่เปลี่ยนแปลงได้ยากกว่า
FPGA ของ Microsoft นี้เป็น Hardware ที่ซื้อมาจากทาง Altera หนึ่งในกิจการที่ Intel เข้าซื่้อไปแล้ว และทางทีมงานของ Microsoft เองนั้นก็มีหน้าที่ในการพัฒนา Software บน FPGA นี้เพื่อมาตอบโจทย์ต่างๆ ให้ได้ตามความต้องการในอนาคต ซึ่ง FPGA นี้จะกลายเป็นหน่วยประมวลผลที่มีบทบาทสำคัญต่อ Microsoft ไปจนถึงปี 2030 ก่อนที่ Microsoft จะย้ายการประมวลผลไปอยู่บน Quantum Computing แทน
ก็ถือเป็นทิศทางที่น่าสนใจจากยักษ์ใหญ่อย่าง Microsoft นะครับ ใครอยากอ่านบทความฉบับเต็มสามารถอ่านได้ที่ https://www.wired.com/2016/09/microsoft-bets-future-chip-reprogram-fly/ เลยครับ