เหตุใด x86 จึงตาม Apple M Series ไม่ทัน?
(news.ycombinator.com)- ประสิทธิภาพด้านแบตเตอรี่ ไม่ได้เกิดจากสถาปัตยกรรม CPU เพียงอย่างเดียว แต่เกิดจาก การปรับจูนทั้งสแตกอย่างละเอียด รวมถึงการปรับแต่ง OS, การรวมหน่วยความจำ·GPU และวิธีจัดการพลังงาน
- Apple พัฒนาประสิทธิภาพอย่างไม่ลดละตลอดหลายทศวรรษใน กระบวนการพัฒนา iPhone และต่อยอดด้วยการนำชิป ARM มาใช้กับ Mac จนสร้าง ช่องว่างที่คู่แข่งไล่ตามได้ยาก
- ด้วย การบูรณาการแนวดิ่ง (Vertical Integration) Apple จึงสามารถปรับแต่งได้ตั้งแต่ฮาร์ดแวร์·OS·แอป แต่ ฝั่ง Wintel แยกผู้ผลิต·MS·ผู้ขายฮาร์ดแวร์ออกจากกัน ทำให้มีข้อจำกัดด้านการเพิ่มประสิทธิภาพ
- ความต่างด้านการออกแบบ CPU ก็มีผลมากเช่นกัน โดย Apple ใช้โครงสร้าง big.LITTLE ที่มีประสิทธิภาพ, ความกว้างการดีโค้ดที่มากกว่า, และการใช้หน่วยความจำรวม·แบนด์วิดท์อย่างคุ้มค่า จนมี ประสิทธิภาพการใช้งานจริงเหนือกว่า 2~4 เท่า
- สรุปแล้ว x86 มี ภาระจากระบบเดิมและระบบนิเวศที่กระจัดกระจาย ทำให้พัฒนาได้ช้ากว่า และหากไม่มีการปรับแต่งเฉพาะทางแบบ Apple พร้อมการเปลี่ยนผ่านสถาปัตยกรรมอย่างกล้าหาญ ก็ ยากจะไปถึงระดับแบตเตอรี่/ความร้อนที่เทียบเท่าได้
ประเด็นสำคัญโดยสรุป
1. สาเหตุของประสิทธิภาพแบตเตอรี่
- ไม่สามารถอธิบายได้ด้วยความต่างของ process node หรือ ISA(x86 vs ARM) เพียงอย่างเดียว
- หากรัน CPU ที่โหลดสูงสุด ความต่างระหว่าง AMD/Intel กับ Apple จะลดลง
- แต่ในการใช้งานจริง ความต่างของ การปรับแต่งสถานะ idle และวิธีจัดการพลังงาน ส่งผลอย่างมาก
- ในสภาพแวดล้อม Linux มักมีปัญหา ขาด hardware acceleration (โดยเฉพาะการถอดรหัสวิดีโอ) ทำให้เกิดความร้อนและเสียงพัดลมโดยไม่จำเป็น
2. มรดกจาก iPhone ของ Apple
- Apple ขยายประสบการณ์การออกแบบแบบประหยัดพลังงานที่สั่งสมจาก mobile SoC มาสู่ Mac
- ด้วย การลงทุน R&D มหาศาลและการดึงตัวบุคลากร จึงมีทีมออกแบบระดับแนวหน้าของโลก
- ในทางกลับกัน Intel/AMD มุ่งเน้น ประสิทธิภาพเดสก์ท็อป/เซิร์ฟเวอร์ ทำให้ประสิทธิภาพพลังงานเป็นเรื่องรอง
3. การบูรณาการแนวดิ่งและการปรับแต่ง
- Apple ออกแบบ OS และฮาร์ดแวร์พร้อมกัน จึงปรับแต่งได้ครอบคลุมถึงแอป·ไดรเวอร์·เฟิร์มแวร์
- ระบบนิเวศ Windows/ลินุกซ์ มี ความขัดแย้งระหว่าง OEM·ผู้ผลิตชิป·ผู้ให้บริการ OS ทำให้ความไม่มีประสิทธิภาพสะสม
- ตัวอย่าง: ปัญหาโหมดสลีปของโน้ตบุ๊ก Windows ที่ล้มเหลว (โยนความรับผิดชอบกันระหว่างผู้ผลิต·MS·ผู้ผลิตฮาร์ดแวร์)
4. ความต่างเชิงสถาปัตยกรรม
- Apple Silicon นำ โครงสร้าง big.LITTLE มาใช้กับการออกแบบแบบประหยัดพลังงานจริง
- E-core ของ Intel เน้น การเพิ่มประสิทธิภาพด้านพื้นที่มากกว่าประสิทธิภาพพลังงาน ทำให้ประสิทธิภาพการใช้งานจริงต่ำกว่า
- ด้วย หน่วยความจำรวม (400GB/s ขึ้นไป), Out-of-Order buffer ที่กว้าง, และความกว้างการดีโค้ดที่มากกว่า (M4 รุ่นล่าสุดเป็น 10-wide) ทำให้เหนือกว่า x86
- ผลลัพธ์คือ ทำงานได้เร็วขึ้นด้วยพลังงานที่น้อยกว่า → กลับเข้าสู่โหมดสลีปได้เร็ว (race-to-sleep)
5. ระบบนิเวศและโครงสร้างตลาด
- x86 ยากที่จะละทิ้ง ความเข้ากันได้กับระบบเดิม (รองรับโค้ดตั้งแต่ยุค DOS)
- Apple เปลี่ยนผ่านอย่างเด็ดขาดด้วยกลยุทธ์ ตัดความเข้ากันได้ + emulation (Rosetta)
- ตลาด OEM มีแรงกดดันด้านราคาและความต้องการที่หลากหลาย จึงไม่สามารถทำ การออกแบบประสิทธิภาพสูงอย่างสม่ำเสมอ ได้เท่า Apple
- กรณีของ Chromebook แสดงให้เห็นว่า x86 ก็อาจเข้าใกล้ระดับของ Apple ได้ หากมีการปรับแต่งอย่างดี (OS+เฟิร์มแวร์+Coreboot)
6. การตอบสนองล่าสุดของฝั่ง x86
- ชิปบางรุ่น เช่น AMD Ryzen AI Max 395+ เริ่ม เข้าใกล้ระดับ M4 Pro
- แต่ก็ยัง ด้อยกว่าในด้านความร้อนและระยะเวลาการใช้งานแบตเตอรี่
- Intel Lunar Lake พยายามเพิ่มประสิทธิภาพด้วยการลดคล็อกลง แต่ ประสิทธิภาพสูงสุดโดยรวมยังไม่เพียงพอ
- โดยรวมแล้วแม้ช่องว่างกับ Apple จะแคบลง แต่หากไม่มี นวัตกรรมด้านสถาปัตยกรรม/แพ็กเกจจิ้งที่เป็นมิตรกับอุปกรณ์พกพา ก็ยากจะไล่ทันอย่างสมบูรณ์
บทสรุป
- จุดแข็งของ Apple ไม่ได้มาจากปัจจัยเดียว แต่คือ การจัดแนว (alignment) ของทุกชั้น
- เป็นผลลัพธ์จากการผสาน นวัตกรรมสถาปัตยกรรม + หน่วยความจำรวม + การปรับแต่ง OS + การลงทุน R&D ฝั่งโมบายล์
- ฝั่ง x86 ไม่อาจปิดช่องว่างนี้ได้ด้วยการปรับปรุงกระบวนการผลิตเพียงอย่างเดียว และจำเป็นต้องมี การเปลี่ยนทิศทางในระดับรากฐาน
14 ความคิดเห็น
ไม่ใช่สิ เหมือนต้นฉบับจะพูดถึงความแตกต่างของโปรเซสเซอร์มากกว่านะ...
หรือว่ามีคนอ่านหัวข้อผิดแล้วเข้ามากันเหรอ 555
ถ้าจะสรรเสริญ Apple ก็ไปอยู่ที่นั่นซะก็ได้ แต่ Apple ก็แทรกแซงทุกอย่าง แล้วอย่างมากก็ทำได้แค่พัฒนาแอปพลิเคชันที่รันอยู่บน Cocoa framework เท่านั้นแหละ.. 555
ตั้งแต่ M1 เป็นต้นมา ชิปของ Apple ให้ความรู้สึกเหมือนมุ่งไปที่ประสิทธิภาพสูงสุดโดยตรง
ส่วน x86 ในช่วงเวลาใกล้เคียงกันก็ให้ความรู้สึกเหมือนมุ่งเน้นประสิทธิภาพต่อพลังงาน
มีคู่แข่งก็ดีครับ หวังว่าจะมีการแข่งขันกันมากขึ้นอีก 555
ผู้บริโภคได้ประโยชน์ครับ
ความต่างอยู่ที่มีหรือไม่มีผู้ใช้สายมโนที่ยังสรรเสริญต่อให้ตัดขาดความเข้ากันได้ก็ตาม
กรุณางดใช้ถ้อยคำที่ไม่เหมาะสม
เกณฑ์ตัดสินว่าดีหรือแย่คืออะไร? คำว่าโดนหลอกก็มีบริบทที่เหมาะจะใช้ จึงได้มีคำนี้อยู่ อย่าเข้าใจผิดว่าโลกนี้เป็นที่ที่เต็มไปด้วยความรักสีชมพูไปหมด
มันก็แค่เรื่องมุมมองไม่ใช่เหรอ จะมีใครบ้างที่เป็นคนโง่ให้โดนหลอก? คุณไม่ได้กำลังเหมารวมด่าคนที่ใช้เพียงเพราะอยากด่า ว่าเป็นพวกโง่โดนหลอกอยู่ใช่ไหม?
ทั้งที่ตัวเองก็ไม่ได้มีอะไรเป็นพิเศษ แต่พูดเหมือนกำลังจะบอกอะไรยิ่งใหญ่ ฟังดูเด็กมากจนเอาจริง ๆ ก็อึ้งเลย
Apple M ฮ่าๆๆ
ก็คงเป็นแค่ RISC นั่นแหละ
เป็นบทความที่มีเจตนาแอบแฝงชัดเจน
ต้นฉบับคือ
แต่เนื้อหากลับกลายเป็นเหมือนสรุปบทความบล็อกอะไรสักอย่างไปแล้ว
ฝั่ง Ask ดูเหมือนว่ายังจัดการสรุปด้วย AI ได้ไม่ค่อยดีนักครับ เดี๋ยวจะค่อย ๆ ปรับแก้ไปครับ
ถ้าจะอัปเกรด RAM ของ M4 ผม/ฉันขอเอาเงินก้อนนั้นไปซื้อ x86 เลยดีกว่า...
Apple สามารถบังคับให้นักพัฒนาย้ายไปอยู่ในสภาพแวดล้อมที่ชิปของตัวเองทำงานได้ดี จึงยิ่งทำให้ดูเหมือนว่าประสิทธิภาพออกมาดีกว่าหรือเปล่าครับ
ให้ประสิทธิภาพสูงเฉพาะตอนทำงานบางประเภทเท่านั้น
ความเห็นจาก Hacker News
มีคอมเมนต์ดี ๆ มากมายที่พูดถึงแต่ละบริษัท เช่น Apple สร้างระบบนิเวศแบบปิดและบูรณาการแนวดิ่งโดยมีมือถือเป็นศูนย์กลาง ขณะที่ Microsoft ใช้แนวทางแบบเปิดและแนวราบโดยมีเดสก์ท็อปเป็นศูนย์กลาง ตลอดหลายสิบปีมี “การปรับแต่งเล็ก ๆ” จำนวนมหาศาลที่ผู้คนหลายพันคนช่วยกันสะสมไว้ Intel ยึดแนวคิดว่า “ยิ่งมากยิ่งดี” มาโดยตลอด ส่วน ARM มีปรัชญาว่า “ยิ่งใช้น้อยยิ่งได้เปรียบ” Intel ครองความเหนือกว่าอยู่นานมาก และพูดตามตรงก็นึกไม่ออกเลยว่าสถาปัตยกรรมที่ไม่ใช่ x86 จะมาแข่งด้าน single-core integer performance ได้ ย้อนกลับไปไกลกว่านั้น ชิป 6502 ที่ 1MHz ซึ่งแทบจะเป็น 8 บิตเต็มตัว ยังเคยทำผลงานได้เกือบสูสีกับ Z80 ที่ 4MHz ด้วยซ้ำ ทำให้เกิดคำถามค้างคาอยู่เสมอว่า “มันเป็นไปได้ยังไง?”
ประสิทธิภาพการใช้แบตเตอรี่มาจากการปรับแต่งเล็ก ๆ จำนวนมากตลอดทั้งเทคสแตก และท้ายที่สุดหัวใจสำคัญคือการลดการใช้ CPU ให้น้อยที่สุด ดังนั้น ISA หรือกระบวนการผลิตจึงไม่ได้ส่งผลต่ออายุแบตเตอรี่มากนัก เมื่อใช้ CPU เต็มที่เพื่อทำงานคงที่งานหนึ่ง AI340 และ M1 ให้ประสิทธิภาพพลังงานใกล้เคียงกัน สถานการณ์แบบนี้จะกระทบอายุแบตเตอรี่ก็ต่อเมื่อเป็นงานโหลดหนักอย่างเรนเดอร์ Blender คอมไพล์ขนาดใหญ่ หรือเล่นเกม ตัวอย่างเช่น benchmark เกมบนแบตเตอรี่ M1 Air อยู่ได้ 2.5 ชั่วโมงในวิดีโอนี้ ซึ่งใกล้เคียงหรืออาจสั้นกว่าโน้ตบุ๊ก x86 เสียอีก ถ้าลดการตั้งค่าให้ CPU และ GPU อยู่ในสถานะว่างเป็นส่วนใหญ่ เวลาก็เพิ่มเป็นเกิน 10 ชั่วโมงได้ทันที ชิป Qualcomm อายุราว 5 ปีนั้นช้ากว่าและมีประสิทธิภาพน้อยกว่าเยอะ แต่ก็ร้อนน้อยและกินไฟน้อยมาก สรุปคือ M1 เร็วจริง แต่เหตุผลที่ประสิทธิภาพแบตเตอรี่ดูเหนือชั้นนั้นมาจากองค์ประกอบนอก CPU อย่างเข้มข้น ซึ่งเป็นจุดที่ AMD กับ Intel ยังพลาดอยู่ อ้างอิงจากประสบการณ์ ถ้าเปิดแท็บใน Chrome เยอะ ๆ ใต้เครื่องโน้ตบุ๊กจะร้อน และเปิด YouTube ก็มักทำให้พัดลมหมุน นี่มักเกิดจากการที่ Linux ยังไม่ได้เปิด hardware acceleration โดยเฉพาะ video decoding และหลังจากเปิดการถอดรหัสวิดีโอบน GPU เองใน fw16 แล้ว ก็ไม่เคยได้ยินเสียงพัดลมตอนดู YouTube อีกเลย
เหตุผลใหญ่ที่ Apple กินไฟต่ำมาจาก iPhone Apple ค่อย ๆ ปรับปรุงทั้งประสิทธิภาพและความแรงของชิปสำหรับ iPhone มาหลายปี Intel กับ AMD เน้นเดสก์ท็อปจึงไม่ได้โฟกัสเรื่องประสิทธิภาพพลังงาน พอชิปของ Apple ดีพอ ก็ขยายมาสู่โน้ตบุ๊กได้ ในขณะที่ x86 ไปไม่ถึงระดับแข่งขันได้อีกต่อไป และเพราะ iPhone เป็นสินค้าที่ทำกำไรได้มากที่สุดในประวัติศาสตร์ Apple จึงสามารถทุ่มงบ R&D และดึงคนเก่งเข้ามาได้มหาศาล จนสร้างทีมวิศวกรเซมิคอนดักเตอร์ระดับท็อปขึ้นมาได้
Apple บูรณาการทั้งฮาร์ดแวร์, OS และแอปของตัวเองในแนวดิ่ง จึงปรับแต่งทั้งอุปกรณ์ได้ครบวงจร ฝั่ง Wintel กลับเอาแต่โยนความรับผิดชอบกันไปมา พอเกิดปัญหาก็มักแก้ไม่ชัดเจน เช่น อาการ sleep ของโน้ตบุ๊กทำงานผิดพลาดที่ผู้ผลิต, Microsoft และผู้ขายฮาร์ดแวร์ต่างผลักภาระกันอยู่บ่อยครั้ง
เพราะทำงานด้านส่งวิดีโอมานาน ถ้ามีคนตัดสินใจบังคับใช้ software decoding ทั้งที่เปิด hardware acceleration ได้ ผมอยากให้มีกฎหมายบังคับให้คนนั้นมานั่งบน CPU เปล่า ๆ ดูสักที ผมคิดว่าความเสียหายที่ผลักให้ผู้ใช้นั้นมีอยู่จริงและมากทีเดียว
เหตุผลที่ Apple Silicon มีประสิทธิภาพแบตเตอรี่ยอดเยี่ยม ไม่ได้มีแค่องค์ประกอบนอก CPU แต่รวมถึงประสิทธิภาพภายใต้โหลดของ CPU ด้วย ยิ่ง CPU ทำงานเสร็จเร็วและเข้าสู่โหมดพักได้ไว (
race to sleep) ก็ยิ่งประหยัดไฟ Apple Silicon มีประสิทธิภาพดีกว่า AMD และ Intel ใต้โหลดราว 2~4 เท่า และยังทำความเร็วสูงสุดได้มากกว่า อีกเหตุผลที่ทำให้โน้ตบุ๊ก Apple ดูมีประสิทธิภาพคือการใช้โครงสร้าง big.Little แบบแท้จริง ขณะที่คอร์เล็กของ AMD และ Intel สนใจแค่ประสิทธิภาพต่อพื้นที่ ทำให้การใช้งานจริงได้ประโยชน์น้อย Intel เพิ่มจำนวนคอร์เล็กเพื่อคะแนน benchmark แต่แอปพลิเคชันจริงกลับชอบคอร์ใหญ่ที่เร็วหลายคอร์มากกว่าดูที่ Android kernel แล้วความต่างชัดมาก เมื่อเทียบกับ Linux kernel ปกติ จะเห็นว่ามีการจูนละเอียดมากทั้งซับซิสเต็มต่าง ๆ รวมถึง scheduler เพื่อการจัดการพลังงานโดยเฉพาะ
ตอนนี้ AMD มีชิป Max 395+ ที่ประสิทธิภาพและประสิทธิภาพพลังงานแทบเท่า M4 Pro แล้ว (ใช้ใน Framework Desktop เป็นต้น) ยังไม่ได้แซง Apple แบบสมบูรณ์ แต่ AMD ก็ทำตัวเลือกที่แข่งขันได้จริงขึ้นมาแล้ว
M4 Pro กลับถอยหลังจาก M3 Pro ในแง่ performance per watt ตอนนี้ยังไม่มีการเปิดเผย die shot ของ M4 Max จึงมีการคาดเดากันมาก แต่ดูเหมือนว่าเพราะปัญหา yield ทำให้ M4 Pro กลายเป็นรุ่นลดสเปกของ M4 Max โดยพฤตินัย ส่งผลให้เกิดปัญหาอย่าง leakage current และ trade-off อื่น ๆ ลองดูรีวิวเวอร์ชันมือถือของชิป 395 (Asus ROG Flow F13) จาก Hardware Canucks ได้เช่นกัน ถ้าให้ 395 ทำงานที่ TDP 70W จะได้อัตราส่วนประสิทธิภาพต่อพลังงานที่ดีที่สุด ตาม Cinebench R24 นั้น M4 Pro ได้คะแนนสูงกว่าและกินไฟน้อยกว่าประมาณ 30% ส่วน benchmark single-core ก็ยังนำอยู่ 35% ด้าน GPU ในแอปสาย productivity ถือว่าใกล้เคียงกัน แต่ถ้าเล่นเกมโดยทั่วไปชุด x86+AMD มักดีกว่า อายุแบตเตอรี่สำหรับการท่องเว็บ M4 Pro ดีกว่าราว 50% และถ้าแค่เล่นวิดีโอจะดีกว่าเกิน 2 เท่า ภายใต้โหลดเต็ม 395 อาจนำเล็กน้อย แต่ในทางปฏิบัติก็เป็นผลจากการลด TDP ลงมาก
เพิ่งได้โน้ตบุ๊กใหม่ที่ใช้ AMD Ryzen 9 365 และพอใจทั้งอายุแบตเตอรี่และประสิทธิภาพ ให้ความรู้สึกคล้าย M3 รุ่นธรรมดา
เคยคิดจะซื้อชิปตัวนั้น แต่ตอนนี้มีอยู่ในสินค้าน้อยมาก เช่น Framework Desktop หรือแท็บเล็ตแพงมากบางรุ่น จึงแทบเลือกไม่ได้ในทางปฏิบัติ
ในรุ่น Framework 16 ตอนนี้มี AMD Ryzen AI 9 HX 370 และ AI 7 350 เข้ามาในไลน์อัปแล้ว ลิงก์รายละเอียด
ชิปนี้มีให้ใช้ใน 14" HP Zbook Ultra G1A (ผ่านการรับรอง Ubuntu), Asus Z13 และรุ่นอื่น ๆ ด้วย แต่ Asus Z13 ยังไม่แน่ชัดเรื่องความเข้ากันได้กับ Linux
หลังจากใช้ MacBook Air M1 ปี 2020 (RAM 16GB, SSD 512GB) มา 3 ปี ตอนนี้อัปเกรดเป็น MacBook Pro M3 Pro (RAM 36GB, 2TB) และใช้เป็นเครื่องหลักอยู่ (ต่อจอ 2 ตัวผ่าน TB4 dock) ผมทำงานสาย IT และเป็นคนตรวจรับอุปกรณ์ใหม่ทั้งหมดของบริษัท จุดเด่นที่สุดคือที่ผ่านมาไม่มีโน้ตบุ๊กธุรกิจสักรุ่นที่แข่งกับ M1 Air ได้จริง ไม่ว่าจะ ARM, AMD หรือ Intel ส่วน M3 Pro นั้นเทียบกันไม่ติด แม้จะมีทั้งราคาที่สูงมากและปัญหาความเข้ากันได้ แต่เพื่อนร่วมงานหลายคนก็ติดตั้ง Windows หรือ Linux บน MacBook แล้วรัน VM ผ่าน Parallels สิ่งที่น่าขำคือการรัน Windows 11 หรือ Linux ใน VM กลับเร็วกว่า เงียบกว่า และอยู่ได้นานกว่าการรันแบบ native บนโน้ตบุ๊กธุรกิจจาก Lenovo, HP, Dell เสียอีก อาจแล้วแต่กรณี แต่ IMHO ตอนนี้ Mac คือคำตอบ แม้คุณจะต้องใช้ Linux หรือ Windows ก็ตาม
ผมใช้ MacBook Air M1 8GB ทำงานส่วนตัวอยู่ และทั้ง Docker Desktop กับ VS Code ก็ทำงานได้ดีกว่า T14 Windows ที่มี RAM 32GB มาก (ส่วนใหญ่เพราะข้อจำกัด enterprise ของ Windows) ถ้าเป็น Linux หรือ Windows ที่ล็อกน้อยกว่านี้อาจดีขึ้น เกมก็พอเล่นผ่าน Nvidia Now ได้ แต่ไม่แนะนำถ้าจะเล่นจริงจัง
คำพูดว่า “เดี๋ยวนี้ไม่มีทางเลือกนอกจาก Mac” จะจริงก็ต่อเมื่อใช้แต่โน้ตบุ๊กหรือให้ความสำคัญกับ single-core performance เท่านั้น โลกคอมพิวติ้งไม่ได้มีแค่โน้ตบุ๊ก ยังมีเดสก์ท็อป เวิร์กสเตชัน งานวิดีโอ/ดนตรี/3D design ที่ต้องการ PCI bandwidth สูงมาก การขยาย SSD/GPU หลายตัว และพลังประมวลผลแบบหลายคอร์ ซึ่งล้วนเป็นพื้นที่ที่ Mac ไปไม่ถึงอีกเยอะ
ถ้ามองเรื่องความคุ้มค่าต่อราคา ในฝั่งโน้ตบุ๊ก Apple (โดยเฉพาะ MacBook) แข็งแกร่งที่สุด แต่ในตลาดเดสก์ท็อปไม่ได้สูสี ฮาร์ดแวร์ Apple ให้สัมผัสและความเนี้ยบที่สำคัญมากในหมวดโน้ตบุ๊ก แต่ในเดสก์ท็อปหรือสภาพแวดล้อมที่ไม่ต้องเคลื่อนย้ายก็มีตัวเลือกอื่นอีกมาก
Apple ปรับแต่งทั้งฮาร์ดแวร์และซอฟต์แวร์สแตกได้อย่างสมบูรณ์แบบ บริษัทที่ทำสิ่งนี้ได้มีน้อยเพราะต้องมีขนาดใหญ่มาก และ Apple ใช้ kernel เดียวกันตั้งแต่ Watch ไปจนถึง Mac Studio ฝั่ง x86 มีภาระ legacy มายาวนาน ทำให้ทุกการประมวลผลต้องถูกแปลจากคำสั่ง x86 ไปเป็น micro-operations แบบ RISC ภาระจาก “การแปล” นี้ Apple แบกรับน้อยกว่า และ Rosetta 2 ก็ใช้แนวทางลักษณะนี้เพื่อให้โค้ด x86 ได้ประสิทธิภาพแบบ “เกือบ native” นอกจากนี้ Apple Silicon ยังต่างกันในเชิงโครงสร้างหลายด้าน เช่น การออกแบบ 8-wide superscalar (พร้อม out-of-order buffer ขนาดใหญ่), unified memory และแพ็กเกจจิง AMD Ryzen AI Max 300 ก็พยายามไล่ตามด้วยแนวทางเดียวกัน (unified memory, การรวมแพ็กเกจ) แต่เพราะความต่างพื้นฐานจึงยังตามไม่ทันแบบเฉียดฉิว ถ้าต้องการประสิทธิภาพพลังงานระดับสุดขั้ว Apple คือคำตอบที่ดีที่สุด แต่ถ้าต้องการประสิทธิภาพสูงสุดแบบไม่สนอย่างอื่น Ryzen Threadripper, EPYC และชิป AMD ระดับไฮเอนด์อื่น ๆ ยังตอบโจทย์กว่า
ที่ Apple Silicon มีประสิทธิภาพสูง ไม่ได้เป็นเพราะซอฟต์แวร์สแตกอย่างเดียว ภายใต้ power envelope เดียวกัน ผล benchmark มาตรฐานอุตสาหกรรมอย่าง SPECint, SPECfp, Geekbench, Cinebench แบบ 1T นั้นทิ้งห่างชัดเจน x86 เองก็ใช้ micro-ops อย่างจริงจังเพื่อดันประสิทธิภาพขึ้นมาแล้ว x86 ทุกวันนี้ก็มีโครงสร้าง decode 6~9-wide แล้ว ความเข้าใจว่ามันยังเป็น 4-wide นั้นล้าสมัยไปมาก buffer/L1/L2/L3 cache ขนาดใหญ่เป็นสิ่งที่ microarchitecture ไหนก็ใส่ได้ สิ่งสำคัญคือมันให้ประโยชน์จริงแค่ไหน Ryzen AI Max 300 (Strix Halo) ก็ยังตาม Apple ไม่ทันในด้านประสิทธิภาพต่อพลังงานของ 1 คอร์ ลองดูคะแนน benchmark ของ iPad M4 แบบไม่มีพัดลมเทียบกับ AMD 9950X และ Intel 285K จะเห็นว่า M4 ให้ประสิทธิภาพ 1T ได้ที่ราว 7W แต่ 9950X กับ 285K ต้องใช้เกิน 20W ต่อคอร์ ความต่างระดับนี้อธิบายด้วยข้อได้เปรียบด้านกระบวนการผลิตอย่างเดียวไม่ได้ มันคนละระดับจริง ๆ แหล่งที่มา1, แหล่งที่มา2
CPU ของ Apple ก็ถอดรหัสคำสั่งเป็น micro-ops เช่นกัน รายละเอียดเพิ่มเติม
การอ้างว่าการแปลงคำสั่ง x86 เป็น micro-ops แบบ RISC คือ “ภาระ” นั้นไม่ถูกต้อง เพราะเป็นโครงสร้างมาตรฐานที่ CPU แบบ superscalar ทุกตัวทำกันหมด (รวมถึง ARM และ RISC-V) ตำนานนี้มาจากยุคที่ฝั่ง RISC เชื่อว่า x86 ไม่สามารถทำ superscalar design ได้
Apple ปรับแต่งสแตกซอฟต์แวร์/ฮาร์ดแวร์ของตัวเองมาหลายสิบปีเพื่อตอบโจทย์ความต้องการของผู้ใช้จำนวนมาก ขณะที่ Intel และ AMD ต้องเล็งตลาดที่กว้างกว่ามาก Apple มักกล้าตัดการรองรับ legacy ทิ้ง แต่ Intel/AMD ยังต้องรองรับความต้องการของลูกค้าองค์กรที่ยังยึด backward compatibility ระดับโบราณอย่าง DOS อยู่ อีกทั้งความเป็นมาตรฐานของ x86 และส่วนขยายที่มากมาย ก็ทำให้ชนเพดานด้านประสิทธิภาพ/ความคุ้มค่าค่อนข้างเร็ว จนปรับปรุงแบบก้าวกระโดดได้ยากขึ้น ซอฟต์แวร์บนแพลตฟอร์ม x86 ก็แทบไม่ถูก optimize เพราะทุกคนรอรุ่นถัดไปที่มีคอร์มากขึ้นหรือ clock สูงขึ้นได้อยู่แล้ว สุดท้ายฮาร์ดแวร์ Apple จึงเป็นงานออกแบบที่เหมาะกับวัตถุประสงค์มาก ส่วน x86 เป็นงานอเนกประสงค์แต่ทำให้เฉพาะทางได้ยาก ทำให้นึกถึงยุค SPARC/POWER/Itanium ในช่วงยุค 80~90 ที่ชิปออกแบบเฉพาะทางมักชนะชิปอเนกประสงค์ในงานของมันเองเสมอ (แต่ก็แลกด้วยปัญหาความเข้ากันได้) ซึ่งภาพ Apple ARM vs x86 ตอนนี้ก็คล้ายกัน
Intel เองต่างหากที่เลือกใช้ backward compatibility เป็นกลยุทธ์ของบริษัท จะตัดสินใจแยกสถาปัตยกรรม “สำหรับ legacy” กับ “สำหรับยุคใหม่” คนละแบบตั้งแต่พรุ่งนี้เลยก็ยังได้ แต่ไม่ได้ทำ Apple ประสบความสำเร็จอย่างมากในการเปลี่ยนผ่านสถาปัตยกรรมข้ามยุค และเพราะมี OS เป็นของตัวเอง รวมถึงมีอำนาจพอจะบังคับให้นักพัฒนาอิสระอัปเกรดซอฟต์แวร์ จึงสามารถปล่อยอัปเดตที่ไม่เข้ากันย้อนหลังได้ (รวมถึงการเพิ่มประสิทธิภาพ)
อยากย้ำว่า Apple Silicon ไม่ใช่ชิปเฉพาะทางแบบ SPARC แต่เป็น SoC/SiP แบบใช้งานทั่วไป Intel เองก็มีศักยภาพพอจะลงทุนใน SoC/SiP ได้เหมือนกัน พูดตรง ๆ คือผมคิดว่า x86 ยังมีโอกาสเกิดใหม่ตามความต้องการของตลาดจริงได้ ถ้า Intel จับมือกับ Windows/MS แล้วบอกว่า “เราจะสร้างสถาปัตยกรรมใหม่ที่ล้ำไปอีกทาง” ช่วงแรกอาจมีประสิทธิภาพตกชั่วคราวจากการพึ่ง emulation แต่สุดท้ายอุตสาหกรรมก็น่าจะตามมา Apple ทำการเปลี่ยนผ่านสถาปัตยกรรมแบบนี้มาแล้วถึงสองครั้งใน 20 ปี และตลาดก็ปรับตามได้ดี ที่สำคัญตอนนี้เรารู้เรื่องโปรเซสเซอร์, ISA และคอมไพเลอร์ มากกว่าตอน x86 เกิดใหม่ ๆ มาก RISC, SoC และ SiP ก็พิสูจน์ตัวเองแล้ว ลูกค้าตั้งแต่มือถือจนถึงดาต้าเซ็นเตอร์ก็อยากได้เส้นโค้งพลังงาน/ประสิทธิภาพที่ดีกว่า Intel ควรเร่งโฟกัส R&D ไปตามทิศทางตลาดปัจจุบัน และคงสาย x86 เดิมไว้ด้วย แต่อย่าหยุดนวัตกรรม
จะบอกว่า Apple “ทิ้ง” backward compatibility เสียทีเดียวก็ไม่เชิง เพราะทุกครั้งก็เตรียมโซลูชัน emulation ที่ยอดเยี่ยมไว้เสมอ ทำให้ซอฟต์แวร์หลักยังใช้งานต่อได้อีกหลายปีในช่วงเปลี่ยนผ่าน ผมคิดว่ามันดีกว่าการแบกภาระโค้ดเก่าอายุ 40 ปีไปเรื่อย ๆ
จริงอยู่ที่ Apple ปรับแต่งสแตกฮาร์ดแวร์/ซอฟต์แวร์มาอย่างยาวนานตามความต้องการหลักของผู้ใช้ แต่ก็สงสัยเหมือนกันว่าเวลาสถาปัตยกรรมเปลี่ยน แต่ละครั้งการปรับแต่งเดิมจะกลายเป็นไร้ความหมายไปมากแค่ไหน และซอฟต์แวร์ฝั่ง ARM เองก็ต้องถูก optimize มากพอ ๆ กับ x86 จึงจะแข่งขันได้
ความจริงที่ซับซ้อนแบบนี้นี่เองที่ใกล้เคียงกับความเป็นจริงแท้ ๆ มากกว่าจะเป็นแค่ “ภาพลักษณ์” ของช่องว่างด้านประสิทธิภาพ
ถ้าพัดลมหมุนตอนเล่นวิดีโอ สาเหตุใหญ่คือปัญหาการตั้งค่า GPU บน Linux ส่วน Chrome เองก็ใช้พลังงานสูงมากอยู่แล้วจากทั้ง background process, rendering ที่ไม่มีประสิทธิภาพ และ disk IO การใช้ Chrome เวอร์ชันล่าสุดและเปิดฟีเจอร์ “Memory Saving” อาจช่วยได้ ยังมีการปรับแต่งเพิ่มได้อีก เช่น เปลี่ยน scheduler หรือปรับความถี่ interrupt สำหรับผมบน Windows เคยเจอว่าแบตเตอรี่อยู่ได้นานกว่า Linux ถึง 12 เท่า และหลังปรับแต่งแล้วช่องว่างลดเหลือ 6 เท่า (ซึ่งก็ยังแย่มากอยู่ดี) x86 อาจด้อยกว่า ARM ในแง่พลังงานจริง แต่ผมมองว่าสาเหตุแท้จริงที่แบตหมดเร็วส่วนใหญ่คือการตั้งค่าระบบอย่าง power driver บน Linux ที่ยังไม่ดีพอ
ที่ว่่า x86 มีประสิทธิภาพด้านพลังงานด้อยกว่า ARM โดยเนื้อแท้ เป็นเพียงความเชื่อผิด ๆ x86 กับ ARM แค่ถูกออกแบบมาเพื่อตลาดคนละแบบ และความต่างด้านประสิทธิภาพในอดีตก็มาจากสถานการณ์ตลาดกับกลยุทธ์ผลิตภัณฑ์ ไม่ใช่ ISA เอง
ถ้าอายุแบตเตอรี่ต่างกัน 12 เท่าหรือ 6 เท่า แสดงว่าต้องมีอะไรผิดปกติร้ายแรงแน่ ๆ
ชิปของ Apple มีขนาดใหญ่และราคาแพง แต่ก็ไล่ล่าประสิทธิภาพพลังงานอย่างจริงจัง ส่วน AMD และ Intel ยิ่งเป็นชิปสายแรงก็มัก optimize ให้เหมาะกับกำลังไฟสูง ขณะที่ชิประดับประหยัดไฟจะสนใจเรื่องต้นทุน/พื้นที่มากกว่า ถ้ายอมลงทุนพื้นที่ชิป (ต้นทุน) มากพอ ก็สามารถปรับอีกสองมุมในสามเหลี่ยม Power-Performance-Area ให้ดีขึ้นได้ แต่สำหรับคู่แข่งของ Apple การทำชิปใหญ่และแพงเพื่อใช้กับอุปกรณ์พกพานั้นทำได้ยากมาก
ผมชอบผลิตภัณฑ์อย่าง Framework ในเชิงปรัชญา แต่ยังเลื่อนการซื้อออกไปเพราะ M1 Pro น่าพอใจมาก สมัยก่อนตอนยังใช้ Intel Mac ก็เคยลองซื้อโน้ตบุ๊กที่รีวิวดีอย่าง Asus Zephyrus G14 แต่ใช้งานจริงไม่พอใจจนขายต่อภายในไม่ถึง 6 เดือน และนั่นทำให้ลังเลที่จะออกจาก ecosystem ของ Apple ความประณีตของฮาร์ดแวร์ Apple เป็นสิ่งที่ไม่เคยสัมผัสได้จากโน้ตบุ๊ก x86 เครื่องไหนเลย
ไม่นานมานี้ผมอัปเกรดจาก M1 MacBook Pro 15" ไปเป็น M4 Max Pro 16" และประทับใจมากกับความเร็ว build ที่ดีขึ้นอย่างมหาศาล (4 นาที → 40 วินาที) ในโปรเจกต์ขนาดใหญ่ที่ใช้การประมวลผลขนานและ Docker หนัก ๆ รวมทั้งมีหลาย DB, Redis, Elasticsearch ก็ยังเร็วขึ้นมาก แม้ราคาจะแพง แต่ถ้าเช่าใช้ 3 ปี ตกเดือนละราว 100 ยูโร ก็ถือว่าคุ้มลงทุน ก่อนหน้านี้ผมใช้แล็ปท็อป Linux ที่เป็น Intel i5 ซึ่งช้ามากจนระหว่างรอ build แทบใช้งานเครื่องไม่ได้เลย ทั้งคุณภาพฮาร์ดแวร์, trackpad, หน้าจอ, ระบบระบายความร้อน, แบตเตอรี่ และดีไซน์ ล้วนทำให้พอใจมาก แม้จะแพงแต่ก็คุ้มค่า ผมไม่เข้าใจจริง ๆ ว่าทำไมคนถึงยอมซื้อรถไว้ขับไปทำงานราคาแพงกันง่าย ๆ แต่กลับประหยัดกับฮาร์ดแวร์ที่ต้องใช้งานทั้งวัน
พอมีคนพูดถึงคำว่า 'polish' ก็ต้องบอกว่าหน้าจอแบบ “เงามันวาวเหมือนกระจก” นั้นเงาจริงจนบางทีเห็นหน้าตัวเองชัดกว่าคอนเทนต์เสียอีก
สำหรับผมกลับทนฮาร์ดแวร์ของ Apple ไม่ไหว แต่ก็ไม่ได้สนใจ Asus หรือแล็ปท็อปเกมมิ่งเหมือนกัน
ผู้ผลิตจำนวนมากมักไม่ค่อยใส่ใจคุณภาพ ผมเคยใช้แล็ปท็อป Acer ที่ขายดีมาก่อน แต่มีจุดน่ารำคาญหลายอย่างจนสุดท้ายขายทิ้งแล้วไปใช้ MacBook Air อยู่นาน ส่วน Asus NUC mini PC ก็ปวดหัวเพราะไม่มีไดรเวอร์ติดตั้งมาให้พื้นฐาน แม้เป็นสินค้ารุ่นเดียวกัน แต่ไดรเวอร์ยังต่างกันไปตามฮาร์ดแวร์ย่อยของแต่ละเครื่อง และสำหรับมือใหม่ก็ดูแทบตั้งค่าเองไม่ได้เลย
ผมก็ซื้อ 2020 Zephyrus G14 ตามรีวิวเหมือนกัน ช่วง 2 ปีแรกถือว่าโอเค แต่หลังจากนั้น integrated GPU กลับวิ่งที่ความเร็วสูงสุดตลอด และโหมด sleep ก็กลายเป็นเหมือน “สถานะที่ร้อนโดยไม่จำเป็นและพัดลมหมุนอย่างเดียว” แทน (อาจเป็นปัญหา Windows) ผู้ผลิตเองพอออกรุ่นใหม่แล้วก็มักไม่สนใจ firmware update อีก ตอนนี้ผมใช้ Framework 16 อยู่ ซึ่งซื้อเพราะอยากจัดการหน้าจอ/พอร์ตเองและต้องการการตั้งค่าที่ไม่ใช่กระแสหลัก จึงไม่แนะนำสำหรับผู้ใช้ทั่วไป
ฮาร์ดแวร์/ซอฟต์แวร์ของ Apple ถูก optimize อย่างสุดขีดและใช้ชิ้นส่วนระดับดีที่สุดในอุตสาหกรรม ด้วยยอดขายจำนวนมากและการจัดการซัพพลายเชนที่ดี ราคาจึงแข่งขันได้ Framework เน้นเรื่อง modularity และความยืดหยุ่น และซอฟต์แวร์ก็ไม่ได้ถูก optimize ให้เข้ากับฮาร์ดแวร์เท่าไร การเอาชนะ Apple ในฐานะคอมพิวเตอร์อเนกประสงค์จึงแทบเป็นไปไม่ได้ และคงไม่เปลี่ยนจนกว่าจะเกิดการเปลี่ยนพาราไดม์ครั้งใหญ่ Framework เหมาะกับผู้ใช้เฉพาะทางที่ให้ความสำคัญกับ custom OS หรือความยืดหยุ่นของฮาร์ดแวร์
แม้จะบอกว่า Apple ขายฮาร์ดแวร์ได้ “ถูกกว่าเมื่อเทียบกัน” เพราะยอดขายสูงและมีซัพพลายเชนที่เป็นระบบ แต่ด้านลบอย่าง ecosystem แบบผูกขาด, การตรวจสอบและเก็บค่าธรรมเนียมแอป, รวมถึงการขัดขวางการซ่อม ก็ไม่อาจมองข้ามได้
Apple ควบคุมทั้ง OS และระบบจัดหา ทำให้ถ้าจำเป็นก็สามารถใช้เงินระดับหลายพันล้านดอลลาร์เพื่อออกแบบชิปที่ optimize เพื่อความต้องการของตัวเองล้วน ๆ ได้ ตอนแรกไม่มีใครคาดว่า x86 จะเสียเปรียบ ARM แต่บางทีส่วนหนึ่งก็อาจเป็นเพราะการตลาดอันแข็งแกร่งของ Intel ด้วย
คำพูดว่า “Apple ชนะตลาดโน้ตบุ๊กอเนกประสงค์แบบเลี่ยงไม่ได้” ใช้ได้กับโน้ตบุ๊กที่เน้น single-core เท่านั้น ในงานหนักจริงยังต้องพึ่งเวิร์กสเตชันหรือเซิร์ฟเวอร์ที่ Apple Silicon ไปไม่ถึงอยู่ดี