หากพูดถึงยุคกลางของสังคมยุโรป จะหมายถึงยุคที่สภาพสังคมอยู่ในจุดตกต่ำ ด้วยการครอบงำของศาสนาและความไม่รู้ของประชาชน ทำให้เป็นที่รู้จักในอีกชื่อว่า ยุคมืด และในประวัติศาสตร์คอมพิวเตอร์ของเรานั้น ก็มียุคมืดอยู่เหมือนกัน ซึ่งเรื่องที่ผมจะเขียนในวันนี้ คือยุคมืดของ AMD นั่นเองครับ
หลังจากการเอาชนะแบบไร้ที่ติของซีพียู Athlon ในการต่อสู้กับซีพียู Pentium สถาปัตยกรรม Netburst ทำให้ AMD เริ่มกลายเป็นที่รู้จักมากขึ้น อย่างไรก็ตาม จุดเปลี่ยนที่ทำให้ Intel สามารถตอบโต้กลับได้ คือการละทิ้งสถาปัตยกรรมที่ตนเองคิดค้นขึ้นใหม่ แล้วย้อนกลับไปใช้สถาปัตยกรรมแบบเดิมเหมือนใน Pentium III จนเกิดเป็นซีพียูตระกูล Core ขึ้นมานั่นเองครับ (สามารถย้อนอ่านบทความเรื่องนี้ได้จาก ลิ้งก์นี้ เลย)
ทีนี้สิ่งที่ทำให้ AMD ประสบปัญหาหลาย ๆ อย่าง เริ่มต้นจากการบริหารเงินที่ผิดพลาด ด้วยการเข้าซื้อบริษัท ATI Technologies (ใช่แล้ว มันคือชื่อเดิมของการ์ดจอค่ายแดงนั่นแหละ) เมื่อวันที่ 24 กรกฎาคม 2006 ในจำนวนเงินที่สูงถึง 5,400 ล้านดอลลาร์ ซึ่งถือว่าเป็นเม็ดเงินที่มากจนเกินไป ทั้ง ๆ ที่ ATI ไม่ได้มีโรงงานผลิตเป็นของตนเอง สิ่งที่ AMD ได้มาเป็นเพียงลิขสิทธิ์ทางปัญญาเท่านั้น หนำซ้ำยังมีการกู้เงินมาซื้ออีก ส่งผลให้การเงินของ AMD เริ่มไม่เพียงพอสักเท่าไร
ทางด้านการพัฒนาซีพียู ต้องเรียกว่าเป็นมุมมองที่ผิดพลาดของฝ่ายบริหาร หลัง Intel Core 2 Duo เปิดตัวได้ 2 สัปดาห์ Dirk Meyer ฝ่ายการตลาดของ AMD ประเมินประสิทธิภาพของ Intel Core ต่ำไป แล้วเร่งเปิดตัวสถาปัตยกรรมรุ่นถัดมานั่นคือ K10 ในปี 2007 โดยเริ่มต้นในตลาดเซิร์ฟเวอร์กับซีพียูตระกูล Opteron ที่มีแกนประมลผล 4-Core ในขณะที่ Intel Xeon มีแค่ 2-Core เท่านั้น
Opteron K10 ตอนนั้นต้องบอกว่าแรงในระดับหนึ่ง อย่างไรก็ตาม แทนที่มันจะชิงตำแหน่งไปจาก Intel ได้ ดันเกิดบั๊กร้ายแรงขึ้นมา ใครทันสมัยนั้นจะรู้จักกันในชื่อว่า TLB bug ถึงขนาดที่ต้องหยุดการผลิตซีพียู K10 แล้วออกแพตช์ไบออสมาแก้ ซึ่งแพตช์ช่วยอุดช่องโหว่ให้แต่กลับส่งผลลดประสิทธิภาพของซีพียูลงถึง 10% หนำซ้ำแพตช์ยังออกมาช้าถึง 6 เดือนหลัง Opteron วางขาย เหตุการณ์นี้กระทบต่อชื่อเสียงของ AMD พอสมควรเลยครับ
ในปลายปี 2007 ตอนนี้ K10 เริ่มสงบเสงี่ยมแล้ว AMD จึงย้ายมาลงบนเดสก์ทอป และใช้ชื่อซีพียูตัวนั้นว่า Phenom ซึ่งสาเหตุที่ต้องเปลี่ยนชื่อ อย่างหนึ่งมาจาก Intel ถอดยศ Pentium ให้กลายเป็นซีพียูรุ่นล่าง แล้วเดิม Athlon จะตีสู้ Pentium มาตลอด AMD จึงขอย้าย Athlon ลงเป็นซีพียูรุ่นล่างตามด้วย
ใน Phenom 9500 ที่ออกมาสู้กับ Core 2 Quad 6600 ทาง AMD โหมกระแสว่า นี่คือซีพียู 4-Core ที่ดีกว่าของคู่แข่ง เพราะการออกแบบของ Phenom เป็นแบบ Monolith แท้ ๆ ในขณะที่ Core 2 Quad เป็นการนำชิป 2-Core มาต่อกัน อย่างไรก็ตาม ผลทดสอบที่ออกมาพบว่า Phenom ก็ยังสู้ Core 2 Quad ไม่ได้ แถมความเร็วต่ำกว่า Core 2 Quad ราว ๆ 100MHz และขายแพงกว่าด้วย นั่นทำให้ Intel เริ่มนำหน้าทิ้งห่างไปเรื่อย ๆ อย่างไม่มีใครหยุดยั้งได้เลยครับ
นอกจากนี้ยังมีประเด็นเรื่องการตลาดที่ AMD ไม่ค่อยสนใจเท่าไร อีกทั้งแผนการตลาด Intel Inside! ซึ่งหลายคนน่าจะทราบกันดีถึงประเด็นฟ้องร้อง ที่ Intel ร่วมมือกับกลุ่ม OEM ผูกขาดการค้าในการซื้อขายซีพียู Intel แต่เพียงผู้เดียว ด้วยเหตุการณ์นี้ทำให้ AMD มีผลประกอบการลดลงและมีส่วนแบ่งการตลาดตกลงเรื่อย ๆ ครับ
เรื่องแย่ ๆ ยังไม่จบแค่นั้นครับ ในยุคมืดนี้จะมีสิ่งที่ AMD หลงผิดอยู่ 2 ประเด็นใหญ่ คือการฝากความหวังไว้กับสถาปัตยกรรมซีพียู และเรื่องการเพิ่ม Clock speed ของซีพียู สำหรับประเด็นที่ 2 นั้น เป็นเหตุการณ์ที่เคยเกิดขึ้นกับ Intel ในสมัย Netburst ที่ผมกล่าวไว้ต้นเรื่องแล้วล่ะ เพราะตอนนั้นมันมีความเชื่อว่าซีพียูที่ดี ต้องมี Clock speed สูง ๆ แต่นั่นมันคือเรื่องเมื่อปี 2001-2006 ไง ซึ่ง AMD ยังนำแนวคิดนี้กลับมาใช้ในปี 2010 นี่แหละที่ผมถึงเปรียบเทียบว่ามันเหมือนยุคกลางที่โดนครอบงำด้วยแนวคิดบางอย่าง จนทำให้ไม่เกิดการพัฒนาที่ก้าวหน้าเสียที
ข้อผิดพลาดต่อจาก K10 ตามมาในปี 2011 เมื่อ AMD ตัดสินใจโละโครงสร้างสถาปัตยกรรมซีพียูใหม่เสียหมด ด้วยการละทิ้ง K10 แล้วแทนที่ด้วยสถาปัตยกรรม Bulldozer พร้อมหยิบชื่ออันโด่งดังในอดีตมาใช้ คือ FX-series ครับ สำหรับตัวผมเองมองว่ามันคือสถาปัตยกรรมที่แย่พอ ๆ กับ Netburst เลยล่ะ (สมัยนั้น Hype กันไว้แรงมากว่า Bulldozer จะแรงกว่าซีพียูรุ่นเก่าถึง 50%)
อย่างที่ผมบอกว่า AMD ต้องการให้ซีพียูของตนเองปั่น Clock speed ได้สูง ๆ เพราะเชื่อว่ามันจะดึงดูดใจลูกค้าได้ อีกทั้งด้วยการประสบปัญหาทางการเงิน AMD จึงต้องออกแบบโครงสร้างซีพียูใหม่ที่มีขนาด Die เล็กลงกว่าเดิม (ประมาณว่าเวลาผลิตชิปซีพียู เขาจะทำออกมาเป็นชิปแผ่นกลมใหญ่เรียกว่าเวเฟอร์ แล้วค่อยมาตัดแบ่งเป็น Die หรือชิปชิ้นเล็กแปะลงที่วงจรของซีพียูอีกที ถ้า Die เล็กลง เวเฟอร์หนึ่งชิ้นจะตัดแบ่งได้มากขึ้นนั่นเองครับ)
เรามาดูกันที่ความแตกต่างของ Bulldozer กับสถาปัตยกรรมแบบเดิม ๆ กันบ้าง ในซีพียูแบบเดิม ๆ รวมถึง Intel Sandy Bridge (Gen 2 ในสมัยนั้น) จะมีแกนประมวลผลแยกกันระหว่าง Integer Unit และ FPU รวมถึงแยก Fetcher/Decoder ออกจากกัน ทำให้ข้อมูลที่ประมวลผลของหน่วยประมวลผล 2 ประเภทนี้แยกจากกันโดยสิ้นเชิง
แต่พอมาเป็น Bulldozer มีการใช้โครงสร้างที่เรียกว่า Clustered Multithreading (CMT) คราวนี้ AMD ไม่เรียกแกนประมวลผลเหมือนกับซีพียูรุ่นเก่าแล้วนะ เขาใช้คำว่า โมดูล (Module) เพื่ออธิบายจำนวนแกนประมวลผลแทน ใน 1 โมดูล มีโครงสร้างดังนี้
จะเห็นว่ามันประกอบด้วย 2-integer unit และ 1-FPU แต่จะแชร์ Fetcher/Decoder และแคชให้ใช้ร่วมกัน โครงสร้างแบบนี้ชวนให้นึกถึงสมัย Netburst ขึ้นมาในทันที โดย AMD กล่าวว่า การมี FPU เพียงตัวเดียวและมีไปป์ไลน์ยาวขึ้นจะช่วยเพิ่มประสิทธิภาพในการ Overclock และช่วยในการประหยัดพลังงาน แต่นั่นมันเป็นแค่ทฤษฎี มาดูความเป็นจริงกันหน่อยนะ
ปัญหาของเรื่องนี้เกิดจาก Windows 7 ไม่เก่งพอที่จะแยกประเมินการส่งข้อมูลให้ 2-integer unit แยกกันโดยสิ้นเชิง เพราะโครงสร้าง Bulldozer แตกต่างไปจากโครงสร้างซีพียูแบบดั้งเดิมพอสมควร ทำให้ตัวส่งข้อมูลไม่สามารถแบ่งงานให้ Integer unit พร้อมกัน 2 ฝั่งได้ เมื่อคำสั่งเข้าไปที่ Integer unit ฝั่งหนึ่งและ Floating unit แล้ว Integer unit อีกตัวจะไม่ถูกใช้งาน !!
เอ้อ งั้นมันก็ทำงานเหมือนใน Intel Sandy Bridge ที่เข้า Integer unit และ Floating unit อย่างละทางน่ะสิ ประสิทธิภาพไม่น่าจะต่างกันใช่ไหม? ผิดถนัดเลยครับ เพราะ Integer unit แต่ละฝั่งของ Bulldozer จะมี 2 ไปป์ไลน์เท่านั้น (พอรวมกัน 2 ฝั่งจะกลายเป็น 4 ไปป์ไลน์เท่ากับ Sandy Bridge) แล้วถ้าข้อมูลเข้าได้แค่ฝั่งเดียว แสดงว่าประสิทธิภาพมันจะต้องตกต่ำกว่า Intel อย่างแน่นอน
ประกอบกับเรื่องของซอฟต์แวร์ในสมัยนั้น โดยเฉพาะเกมที่ยังใช้ API ของ OpenGL และ DirectX 10/11 ซึ่งเป็นที่ทราบกันดีว่ามันทำงานร่วมกับซีพียูหลายแกนได้ไม่ดีนัก จนต้องรอถึงยุค DirectX 12 และ Vulkan ที่ช่วยเพิ่มประสิทธิภาพของ Bulldozer ได้ แต่มันก็สายไปเสียแล้ว เพราะ Intel รุดหน้าไปไกลกว่ามากครับ (พูดง่าย ๆ ถ้าเป็น Single-threaded performance ซีพียู AMD FX คือเละ !!)
นอกจากนี้ถ้าใครใช้ซีพียู FX จะเคยเห็นว่า CPU-Z รายงานว่าซีพียูมีแค่ 4 Cores/8 Threads ทั้งที่สเปคบนกล่องเขียนว่า 8 Cores/8 Threads นั่นเป็นเพราะ AMD นิยามว่า 1 โมดูล มี 2-Core โดยนับตาม Integer unit เพราะฉะนั้น ถ้า FX 8000-series มี 4 โมดูลก็จะมี 8-Core ตามที่ AMD กล่าว แต่จากกรณีปัญหาการส่งผ่านข้อมูลที่สามารถทำงานได้เพียง 1-Integer unit ในแต่ละครั้ง ทำให้ Windows มองเห็นว่ามันมีแค่ 4-Core ส่วน 8-Thread ก็นับตาม Integer unit ที่มีทั้งหมด ประเด็นนี้กลายเป็นเรื่องฟ้องร้องที่ทำให้ AMD ต้องชดใช้ค่าเสียหายกับผู้ใช้ซีพียู FX-series ด้วยครับ
พูดง่าย ๆ คือ Windows มันงงว่าจะจัดการกับซีพียูใหม่ยังไงดี แล้วยังมีประเด็นอีกหลาย ๆ เรื่อง ไม่ว่าจะเป็นแคชที่น้อยเกินไป Latency ที่เยอะเกินไป การใช้พลังงานที่เยอะเกินไป แล้วแทนที่ AMD จะลองหวนกลับไปปรับใช้สถาปัตยกรรม ใน K10 เหมือนกับที่ Intel เคยแก้ปัญหาของ Netburst เจ้าค่ายแดงกลับทำแค่ปรับปรุง Bulldozer แล้วเข็น Piledriver, Steamroller และ Excavator ออกมา ทั้งหมดนี้คือสถาปัตยกรรมของ Bulldozer ทั้งหมด แล้วยืดมานานถึง 6 ปีเต็มเลยทีเดียว
เชื่อว่าสาเหตุหนึ่งที่ AMD ยังไม่ทิ้ง Bulldozer อาจมาจากปัญหาทางการเงิน ที่ขาดกำลังด้าน R&D (มันก็สืบเนื่องมาจากตอนที่เข้าซื้อ ATI นั่นแหละ) แล้วเข้าใจไหมว่า พอซีพียูอย่าง FX-series มันมีแต่ “ชื่อเสีย” ไปแล้ว จะขายมันก็ขายไม่ค่อยออก ยอดขายตกต่ำ กำไรมันก็ร่อยหรอ เงินที่จะนำมาพัฒนาต่อมันก็ไม่เพียงพอ
แต่ไม่ใช่ว่า AMD ไม่ได้วางแผนจะแก้ทางนะครับ คือในปี 2012 สงสัยตอนนั้นคงมองเห็นแล้วว่า Bulldozer ไม่น่าจะไปรอดจริง ๆ จึงนำทีมพัฒนาคนสำคัญ 3 คน คือ Jim Keller (ยุค K8), Mike Clark (ยุค Bulldozer) และ Lisa Su (CEO มากฝีมือ) เข้ามาช่วยกันระดมสมองนำพาบริษัทให้รอดพ้นจากวิกฤต กระทั่งในปี 2016 ในงาน E3 ได้มีการโชว์ประสิทธิภาพของซีพียู Ryzen เป็นครั้งแรก ก่อนจะวางจำหน่ายในปี 2017 ทำให้ AMD ผ่านพ้นยุคมืดเข้าสู่ยุคฟื้นฟูศิลปวิทยาเป็นที่เรียบร้อย
ขอขอบคุณข้อมูลจาก
https://www.techspot.com/article/2043-amd-rise-fall-revival-history/
https://www.extremetech.com/computing/100583-analyzing-bulldozers-scaling-single-thread-performance
You must be logged in to post a comment.