เซิร์ฟเวอร์ ARM: สถาปัตยกรรม CPU มือถือสำหรับศูนย์ข้อมูล?
เผยแพร่แล้ว: 2022-03-11ฉันกำลังแก่ ย้อนกลับไปในสมัยของฉัน ถ้าคุณต้องการประสิทธิภาพของ CPU ระดับบน คุณต้องใช้ชิป x86 ระดับไฮเอนด์ หรือถ้าคุณมีกระเป๋าที่ลึกกว่า คุณอาจจะได้สิ่งที่แปลกใหม่ เช่น ระบบ PowerPC การพึ่งพาโปรเซสเซอร์ x86 ของอุตสาหกรรมดูเหมือนจะเพิ่มขึ้นไม่ลดลง
10 ปีที่แล้ว Apple เข้าร่วมคลับ x86 และสิ่งนี้กระตุ้นให้ผู้สังเกตการณ์หลายคนสรุปว่ายุคของโปรเซสเซอร์ที่ไม่ใช่ x86 ในตลาดมวลชนได้สิ้นสุดลงแล้ว ไม่กี่ปีต่อมา พวกเขาต้องกินคำพูดของพวกเขา และอีกครั้งที่ Apple มีส่วนเกี่ยวข้องกับเรื่องนี้ เซิร์ฟเวอร์ ARM กำลังมา และพวกเขาสามารถฟื้นฟูอุตสาหกรรมเซิร์ฟเวอร์ได้
ทบทวนการออกแบบโปรเซสเซอร์
เมื่อกระบวนทัศน์เปลี่ยนไปและผู้ใช้ทั่วไปหันมาใช้สมาร์ทโฟนและแท็บเล็ต เห็นได้ชัดว่าชิป x86 จาก Intel, AMD และ VIA ใช้งานไม่ได้ แม้ว่า x86 เป็นชุดคำสั่งที่มีประสิทธิผลมากที่สุดในโลก แต่ก็ไม่ใช่ตัวเลือกที่ดีสำหรับอุปกรณ์พกพาด้วยเหตุผลหลายประการ อันที่จริง ชุดคำสั่งของ Intel ยังคงไม่ใช่ตัวเลือกยอดนิยม สำหรับโปรเซสเซอร์โมบายล์ แม้ว่าสิ่งนี้จะเริ่มเปลี่ยนแปลงไปต้องขอบคุณผู้นำด้านเทคโนโลยีการหล่อของ Intel ในกรณีใด ๆ เมื่อพูดถึงกลุ่มตลาดนี้ x86 ไม่ได้มีประสิทธิภาพเท่ากับสถาปัตยกรรม CPU อื่น ๆ นั่นคือโปรเซสเซอร์ที่ใช้ชุดคำสั่ง ARMv7 แบบ 32 บิตและ 64 บิต ARMv8 ของ ARM
ในช่วงทศวรรษที่ผ่านมา และโดยเฉพาะอย่างยิ่งในช่วงห้าปีที่ผ่านมา โปรเซสเซอร์ ARM ได้เข้ามาครอบงำวงการสมาร์ทโฟนและแท็บเล็ต และมีสิ่งอำนวยความสะดวกมากมายสำหรับพวกเขา พวกเขาเสนอประสิทธิภาพต่อวัตต์เป็นจำนวนมาก พวกมันราคาถูกสำหรับการออกแบบ ผลิตและปรับใช้ ผู้ค้ารายใหญ่สามารถซื้อหน่วยการสร้างที่จำเป็นและออกแบบโปรเซสเซอร์ของตนเองโดยใช้ ARMv7 หรือ ARMv8 โดยเพิ่มส่วนประกอบอื่นๆ ตามความต้องการ (โมเด็มความเร็วสูงและ GPU ต่างๆ เพื่อตั้งชื่อคู่)
สิ่งนี้ทำให้ผู้ออกแบบชิปบางคนใช้แนวทางที่แตกต่างออกไปและออกแบบคอร์ CPU แบบกำหนดเองของตนเอง Qualcomm และ Apple เป็นผู้นำ ทั้งสองบริษัทกลายเป็นผู้เล่นรายใหญ่ในตลาดมือถือ System-on-Chip (SoC) และการพัฒนาคอร์ที่ซับซ้อนและกำหนดเองได้มีบทบาทสำคัญในความสำเร็จของพวกเขา อย่างไรก็ตาม คอร์ ARM แบบกำหนดเองยังคงใช้ในโปรเซสเซอร์ระดับไฮเอนด์ ในขณะที่กลุ่มตลาดอื่นๆ ทั้งหมดถูกครอบคลุมโดยคอร์เทกซ์ซีพียู ARM Cortex มาตรฐาน เช่น Cortex-A8 แบบ 32 บิต, A9, A7 และ A15 ตามด้วย 64 บิต การออกแบบเช่น Cortex-A53, A57 และแกน A72 ใหม่ซึ่งกำลังจะเริ่มจัดส่ง
ข้อกำหนดเบื้องต้นอื่นสำหรับความสำเร็จของ ARM คือความล้มเหลวของ Microsoft
Windows ทำงานบนโปรเซสเซอร์ x86 เท่านั้น ดังนั้นหาก Microsoft ตั้งหลักในอุปกรณ์พกพา จะทำให้ Intel โปรดปราน อย่างไรก็ตาม เมื่อสิ้นสุดทศวรรษที่ผ่านมา เห็นได้ชัดว่าเรดมันด์ได้ทิ้งบอลและยกให้ตลาดที่ร่ำรวยนี้แก่ Google และ Apple เมื่อพูดถึงเรื่องบอลล์ สตีฟ บอลเมอร์ ซีอีโอของ Microsoft ที่ลาออกจากบริษัทเมื่อสองสามปีก่อน ได้ลาออกจากบริษัทแล้ว โดยยอมรับว่าเขาและทีมของเขาไม่ได้ตระหนักถึงศักยภาพของสมาร์ทโฟนและแท็บเล็ต อย่างไรก็ตาม มันไม่ใช่ปัญหาของ Ballmer อีกต่อไป: เขามีลูกบอลอื่น ๆ อยู่ในใจของเขาตอนนี้ บาสเก็ตบอลที่แน่นอน
อย่างไรก็ตาม โทรศัพท์มือถือไม่ใช่กลุ่มตลาดแรกหรือกลุ่มเดียวที่เห็นความล้มเหลวของ Microsoft ในสัดส่วนที่ยิ่งใหญ่ อีกอย่างคือตลาดเซิร์ฟเวอร์ สมาร์ทโฟนและศูนย์ข้อมูลไม่ได้มีอะไรที่เหมือนกันมากนัก แต่จากมุมมองทางเทคโนโลยีและธุรกิจ มีความทับซ้อนกันอยู่บ้าง
ไม่ว่าคุณจะออกแบบสมาร์ทโฟนหรือเซิร์ฟเวอร์ คุณต้องเน้นย้ำแง่มุมที่คล้ายคลึงกันของแพลตฟอร์มฮาร์ดแวร์ของคุณ เช่น การประหยัดพลังงาน ความร้อนที่ดี ประสิทธิภาพต่อดอลลาร์ และอื่นๆ สิ่งสำคัญที่สุดคือคุณ ไม่จำเป็นต้องมีโปรเซสเซอร์ที่ใช้ x86 สำหรับสมาร์ทโฟนและเซิร์ฟเวอร์หลายประเภท ด้วยความล้มเหลวของ Microsoft กลุ่มตลาดเหล่านี้ไม่ได้ถูกครอบงำโดย Windows ทุกรสชาติ พวกเขาพึ่งพาระบบปฏิบัติการที่ ใช้ UNIX แทน: Android, iOS และลีนุกซ์รุ่นต่างๆ
Microsoft ยังพยายามที่จะใช้ประโยชน์จากศักยภาพของโปรเซสเซอร์ ARM ดังนั้นจึงพยายามพัฒนา Windows เวอร์ชันที่จะทำงานบนฮาร์ดแวร์ ARM ซึ่งนำฉันไปสู่ความล้มเหลวครั้งต่อไปของ Microsoft: Windows RT ในที่สุด Microsoft ก็ดึงปลั๊กบน Windows RT หรือ "Windows บน ARM" ตามที่เรียกในตอนแรก แท็บเล็ต Surface ล่าสุดของ Microsoft ใช้โปรเซสเซอร์ x64 และ Windows 10 มาตรฐาน กลุ่มผลิตภัณฑ์สมาร์ทโฟน Lumia ของ Microsoft (เช่น Nokia Lumia) ยังคงใช้โปรเซสเซอร์ ARM จาก House of Qualcomm แต่ Windows Phone นั้นตายไปแล้วในฐานะแพลตฟอร์มสมาร์ทโฟนหลัก
เซิร์ฟเวอร์ไม่ต้องเสีย ARM และ Leg
ตอนนี้ เรามีสมาร์ทโฟนและแท็บเล็ตอยู่สองสามพันล้านเครื่อง และส่วนใหญ่ใช้โปรเซสเซอร์ ARM อย่างไรก็ตาม ชิป ARM ไม่ได้เข้าสู่ส่วนอื่นๆ ของตลาด มีแพลตฟอร์มการประมวลผลปริมาณมากเพียงไม่กี่ตัวที่ใช้ ARM ที่ไม่อยู่ในหมวดหมู่สมาร์ทโฟนและแท็บเล็ต Google Chromebooks น่าจะเป็นตัวอย่างที่รู้จักกันดีที่สุด อย่างไรก็ตาม ชิป ARM ถูกใช้ในอุปกรณ์อื่นๆ เช่น เราเตอร์ กล่องรับสัญญาณ และสมาร์ททีวี สมาร์ทวอทช์ อุปกรณ์เล่นเกมบางประเภท ระบบสาระบันเทิงในรถยนต์ และอื่นๆ
แล้วเซิร์ฟเวอร์ ARM ล่ะ?
นี่คือที่ที่จะได้รับหากิน ฉันได้ยินการพูดถึงเซิร์ฟเวอร์ ARM มาตั้งแต่ปี 2010 แต่ความคืบหน้าช้าและจำกัด ส่วนแบ่งการตลาดของ ARM ในส่วนเซิร์ฟเวอร์ยังคงไม่มีนัยสำคัญ และระบบนิเวศยังคงถูกครอบงำโดยชิ้นส่วน x86 Xeon และ Opteron จาก Intel และ AMD ตามลำดับ เนื่องจาก AMD อยู่ในโลกแห่งปัญหาด้าน CPU Intel จึงสามารถขยายส่วนแบ่งการตลาดในช่วงไม่กี่ปีที่ผ่านมา
แต่ทำไมเซิร์ฟเวอร์ ARM จึงฟังดูเป็นความคิดที่ดีที่จะเริ่มต้น
เงิน. ฉันสามารถลองระบุจุดที่เกินบรรยายทั้งหมดที่ทำให้ ARM เป็นทางเลือกที่ใช้งานได้แทน x86 ในตลาดเซิร์ฟเวอร์ แต่ท้ายที่สุดแล้ว ส่วนใหญ่จะเกี่ยวกับเงิน ดังนั้นฉันจะพยายามอธิบายในสองสามบรรทัด
- ราคา/ประสิทธิภาพ
- ปริมาณงานของศูนย์ข้อมูลกำลังพัฒนาและเปลี่ยนแปลง
- ความสามารถในการจัดหาโปรเซสเซอร์จากซัพพลายเออร์ต่างๆ
- การใช้ชิปที่ออกแบบเองสำหรับช่องต่างๆ
- ชิป ARM นั้นเหมาะสมกับแอพพลิเคชั่นโครงสร้างพื้นฐานบางตัวมากกว่า
- เป็นวิธีที่ดีในการยึดติดกับ Intel และทำลายตำแหน่งทางการตลาด (Intel เกือบจะกลายเป็นผู้ผูกขาดในพื้นที่เซิร์ฟเวอร์)
เราไม่ต้องการโปรเซสเซอร์ Xeon ขนาดใหญ่และมีราคาแพงสำหรับทุกสิ่ง ยิ่งไปกว่านั้น การใช้โปรเซสเซอร์ x86 ที่ล้าสมัยเพื่อจัดการกับปริมาณงานที่ไม่ต้องการมากนั้นไม่ใช่ตัวเลือกที่ดีเนื่องจากใช้พลังงานมากเกินไป จำไว้ว่าเรากำลังพูดถึงเซิร์ฟเวอร์ ไม่ใช่ MacBook หรือเดสก์ท็อปพีซีของคุณ เซิร์ฟเวอร์ทำงานตลอดเวลา ดังนั้นทุกประสิทธิภาพที่เพิ่มขึ้น รวมถึงเซิร์ฟเวอร์ที่มีขนาดค่อนข้างเล็ก มักจะมีความสำคัญ ไม่ใช่ แค่ การได้รับค่าไฟฟ้าที่มากขึ้นเท่านั้น ศูนย์ข้อมูลต้องได้รับการระบายความร้อนและบำรุงรักษา ดังนั้นโปรเซสเซอร์ที่มีอัตรา Thermal Design Power (TDP) ต่ำกว่าจึงมีค่าสำหรับผู้ใช้ระดับองค์กรมากกว่าตัวบุคคล
ทำไมต้องใช้เซิร์ฟเวอร์ ARM?
ดังนั้นแอปพลิเคชันระดับองค์กรประเภทใดที่โปรเซสเซอร์ ARM ดีสำหรับ?
ARM คาดว่าจะได้รับ ชัยชนะด้านการออกแบบส่วนใหญ่ สำหรับแอปพลิเคชันโครงสร้างพื้นฐานเครือข่าย เนื่องจากมีความยืดหยุ่น ขนาดเล็ก ประสิทธิภาพ และราคาต่ำ โปรเซสเซอร์ ARM จึงเป็นตัวเลือกที่ยอดเยี่ยมสำหรับโครงสร้างพื้นฐาน คุณสามารถใช้โปรเซสเซอร์ ARM ในเราเตอร์ โซลูชันการจัดเก็บข้อมูลประสิทธิภาพสูง และเซิร์ฟเวอร์บางประเภทได้
อย่างไรก็ตาม ARM คาดว่าการ เติบโตขององค์กรส่วนใหญ่ ในทศวรรษนี้จะต้องมาจากเซิร์ฟเวอร์ เนื่องจากส่วนอื่นๆ ของบริษัทนั้นเติบโตเต็มที่แล้วและมีส่วนแบ่งการตลาดที่ดี ปริมาณงานของเซิร์ฟเวอร์ก็เปลี่ยนไปเช่นกัน และแนวโน้มนี้เชื่อมโยงกับการเติบโตของบริการคลาวด์ ด้วยเหตุนี้ เซิร์ฟเวอร์จึงต้องจัดการกับงานขนาดเล็กจำนวนมากขึ้น
หลายองค์กรต้องการเปิดตัวเลือกไว้ ดังนั้นพวกเขาจึงจัดหาฮาร์ดแวร์จากผู้จำหน่ายหลายราย นี่เป็นข่าวดีสำหรับโปรเซสเซอร์เซิร์ฟเวอร์ ARM เนื่องจากสามารถทำการตลาดได้โดยบริษัทต่างๆ หลายแห่ง นอกจากนี้ นโยบายการออกใบอนุญาตของ ARM และวิธีการแบบแยกส่วนสำหรับการออกแบบโปรเซสเซอร์ สามารถใช้ออกแบบโปรเซสเซอร์แบบกำหนดเองสำหรับแอพพลิเคชั่นเฉพาะได้ เห็นได้ชัดว่านี่เป็นสิ่งที่ไม่ใช่ตัวเลือกสำหรับบริษัทขนาดเล็ก แต่จะเกิดอะไรขึ้นหากผู้เล่นรายใหญ่อย่าง Amazon, Facebook หรือ Google เริ่มขอตัวประมวลผลเซิร์ฟเวอร์ที่ออกแบบมาโดยเฉพาะสำหรับแอปพลิเคชันหนึ่งโดยเฉพาะ
สำหรับการ "ยึดติดกับ Intel" ฉันควรทราบว่าฉันไม่ได้หมายถึงความเสียหายใด ๆ กับ Intel และฉันไม่ต้องการเห็นความล้มเหลวหรือถูกผลักออกจากกลุ่มตลาดต่างๆ แต่ในขณะเดียวกันฉันก็กังวลว่า การครอบงำของ Intel อาจทำให้การเติบโตและนวัตกรรมหยุดชะงัก การแข่งขันที่มากขึ้นควรส่งผลให้ราคาที่ต่ำกว่าสำหรับผู้ใช้ปลายทาง และนี่คือสิ่งที่เซิร์ฟเวอร์ ARM ให้ความสำคัญ
มัลติเธรด: จำนวนคอร์ของ CPU เพียงพอหรือไม่
เมื่อสิบปีที่แล้ว โปรเซสเซอร์ multicore x86 ถูกสงวนไว้สำหรับคอมพิวเตอร์และเซิร์ฟเวอร์ที่มีประสิทธิภาพสูง แต่ตอนนี้ คุณสามารถรับชิป quad-core x86 ได้ในแท็บเล็ตราคา 100 เหรียญ
ในช่วงแรก ๆ ของการประมวลผลแบบมัลติคอร์ คุณยังคงต้องการคอร์ CPU ขนาดใหญ่เพื่อให้ได้ประสิทธิภาพในระดับที่เพียงพอ ซอฟต์แวร์จำนวนมากไม่สามารถใช้ประโยชน์จากโปรเซสเซอร์ใหม่และคอร์พิเศษเหล่านี้ได้ ดังนั้นประสิทธิภาพการทำงานแบบเธรดเดียวที่ดีจึงมีความสำคัญ สิ่งต่าง ๆ เปลี่ยนไปอย่างแน่นอน ทุกวันนี้ เรามีสมาร์ทโฟน octa-core, แท็บเล็ตและโทรศัพท์ Intel Quad-core และโปรเซสเซอร์เซิร์ฟเวอร์ 16-core x86
มีเหตุผลที่ดีสำหรับเรื่องนี้ การสร้างโปรเซสเซอร์แบบมัลติคอร์นั้นสมเหตุสมผลดีจากมุมมองด้านเทคโนโลยีและการเงิน การกระจายโหลดไปยังคอร์ CPU ที่เล็กกว่าและมีประสิทธิภาพมากกว่านั้นง่ายกว่าการพัฒนาคอร์ขนาดใหญ่เพียงตัวเดียวที่สามารถทำงานที่ความถี่สูงได้ วิธีการแบบมัลติคอร์ช่วยให้มั่นใจถึงประสิทธิภาพที่เหนือกว่าและผลผลิตของชิป
ARM มีศักยภาพที่จะนำความนิยมหลักไปสู่อีกระดับ ARM CPU cores มักจะมีขนาดเล็กกว่าที่เรียกว่า “big cores” ของ Intel ที่ใช้ในชิ้นส่วนเซิร์ฟเวอร์และเดสก์ท็อป (อะตอม “small core” ของ Intel สงวนไว้สำหรับมือถือ อย่างไรก็ตาม นี่ไม่ได้หมายความว่าเราจะเห็นโปรเซสเซอร์ ARM 128 คอร์หรือ 256 คอร์ในเร็วๆ นี้ แม้ว่าในทางทฤษฎีจะเป็นไปได้ก็ตาม ขึ้นอยู่กับว่าโปรเซสเซอร์เซิร์ฟเวอร์ ARMv8 ครอบตัดใหม่จัดการกับโหลดแบบมัลติเธรดอย่างไร มีสัญญาณสนับสนุนบางอย่าง และมีโอกาสที่เซิร์ฟเวอร์ ARM จะเป็นตัวเลือกที่ดีสำหรับปริมาณงานต่างๆ ที่อาจได้รับประโยชน์จากโปรเซสเซอร์แบบมัลติคอร์
โปรเซสเซอร์เซิร์ฟเวอร์ตัวแรกของ Qualcomm มีแกนประมวลผล ARMv8 จำนวน 24 คอร์ และผู้ผลิตชิปรายนี้ทำให้เห็นชัดเจนว่ารุ่นในอนาคตจะมีแกนประมวลผลมากขึ้น จำ AMD และปัญหาตลาดเซิร์ฟเวอร์ได้หรือไม่? บริษัทได้เปิดตัวโปรเซสเซอร์ Opteron A1100 ที่ใช้ ARM ที่ค้างชำระมานานเมื่อสองสามสัปดาห์ก่อน Qualcomm ได้ประกาศในเดือนตุลาคม ดังนั้นผลิตภัณฑ์ทั้งสองนี้จะวางจำหน่ายในอีกไม่กี่เดือนข้างหน้า
แน่นอนว่า Intel จะไม่เข้าร่วมปาร์ตี้ ARM นี้ แต่ Qualcomm และ AMD ไม่ใช่ชิปเพียงชุดเดียวที่ทำงานบนชิประดับองค์กรที่ใช้ ARM ผู้ผลิตชิปอย่าง Broadcom, Calxeda, Cavium Networks และ Huawei HiSilicon ต่างก็ทำงานกับผลิตภัณฑ์เซิร์ฟเวอร์ที่ใช้ ARM ด้วยเช่นกัน Nvidia และ Samsung สองรุ่นใหญ่ในธุรกิจ SoC และ GPU ยังได้ทดลองกับชิ้นส่วนเซิร์ฟเวอร์ ARM จนกระทั่งเมื่อสองสามปีก่อน เมื่อพวกเขาตัดสินใจหยุดการพัฒนา Texas Instruments, Xilinx และ Marvell กำลังสำรวจส่วนเซิร์ฟเวอร์ ARM ด้วย

บริษัทเหล่านี้บางแห่งทำงานบนคอร์ ARM แบบกำหนดเองเช่นกัน แต่คอร์ ARM แบบกำหนดเองที่ไม่ใช่ 64 บิตของ Apple ที่มีอยู่ในปัจจุบันคือเดนเวอร์ของ Nvidia ซึ่งชนะการออกแบบเพียงเล็กน้อยเท่านั้น
ARM แบบกำหนดเองของ ARM คืออะไร?
ฉันรู้ว่าคนส่วนใหญ่ไม่ต้องกังวลกับการติดตามอุตสาหกรรมเฉพาะกลุ่ม ซึ่งรวมถึงพื้นที่ของ CPU ดังนั้นฉันคิดว่าตอนนี้น่าจะเป็นเวลาที่ดีที่จะอธิบายว่าอะไรทำให้แกน ARM แตกต่างออกไปและแกนหลักแบบกำหนดเองคืออะไร ฉันจะไม่ผ่าโปรเซสเซอร์และอธิบายความแตกต่างระหว่างชุดคำสั่ง x86 และ ARM แต่ฉันจะสรุปความแตกต่างจากมุมมองทางธุรกิจ
คุณเห็นไหมว่า ARM ไม่ได้แตกต่างกันเพียงเพราะมันใช้ชุดคำสั่งที่ต่างกัน แม้ว่านั่นจะทำให้คำอธิบายที่รวดเร็วและเกินบรรยาย ในความคิดของฉัน ความแตกต่างที่ใหญ่ที่สุดระหว่าง Intel, AMD และ ARM ไม่ใช่สถาปัตยกรรม แต่เป็นโมเดลธุรกิจ . นอกจากนี้ สถาปัตยกรรมเปลี่ยนไป การออกแบบ CPU ใหม่ ๆ ได้รับการเปิดเผยเป็นประจำ แต่แนวทางการตลาดและการออกใบอนุญาตของ ARM ยังคงไม่เปลี่ยนแปลงในหลายปีที่ผ่านมา
นี่เป็นตัวอย่างง่ายๆ
โปรเซสเซอร์ Intel ได้รับการพัฒนาโดย Intel โดยใช้ชุดคำสั่งของ Intel ผลิตขึ้นในโรงหล่อของ Intel บรรจุและจัดส่งด้วยตราสินค้า "Intel Inside" อาจฟังดูง่าย แต่อย่าลืมเงินหลายพันล้านที่เข้าสู่ R&D ตลอดหลายทศวรรษที่ผ่านมา หรือข้อเท็จจริงที่ว่า Intel พึ่งพาแหล่งผลิตของตนเอง (และหากคุณอยู่ในตลาดสำหรับโรงหล่อ 14 นาโนเมตร ให้แน่ใจว่าคุณมีอะไหล่สำรอง เปลี่ยนคุณเพราะชิป fab มีราคาเท่ากับเรือบรรทุกเครื่องบินนิวเคลียร์)
แล้วผลิตภัณฑ์ ARM ล่ะ? ARM ไม่ใช่ ผู้ผลิตชิป แต่เป็น นักออกแบบ ชิป หรือบริษัทชิป " ในตำนาน" จึงไม่เกี่ยวข้องกับการผลิตและไม่ขายชิปแบรนด์ของตัวเอง ARM ขายสิ่งที่น่าสนใจกว่านั้นมาก: ทรัพย์สินทางปัญญา ซึ่งหมายความว่าลูกค้า ARM สามารถเลือกแผนการอนุญาตให้ใช้สิทธิต่างๆ มากมายและเริ่มออกแบบของตนเองได้ ส่วนใหญ่เลือกการออกแบบภายในของ ARM (ซีพียู Cortex ซีรีส์, GPU ซีรีส์มาลี) ดังนั้นพวกเขาจึงจ่ายค่าธรรมเนียมใบอนุญาตสำหรับคอร์ CPU/GPU ทุกตัวที่พวกเขาผลิต
อย่างไรก็ตาม ลูกค้าไม่จำเป็นต้องให้สิทธิ์ใช้งานซีพียูที่พร้อมใช้งานเหล่านี้ มันสามารถให้สิทธิ์ใช้งานชุดสถาปัตยกรรมแทน และพัฒนา แกนแบบกำหนดเองตามชุดคำสั่ง ARM นี่คือสิ่งที่ Apple ทำ ใช้ชุดคำสั่ง ARMv8 เพื่อสร้างคอร์ CPU 64 บิตขนาดใหญ่และทรงพลังสำหรับอุปกรณ์ iOS CPU Denver ของ Nvidia มีความคล้ายคลึงกันในด้านนี้ เช่นเดียวกับคอร์แบบกำหนดเองของ Qualcomm (ซีรีย์ Krait 32 บิตและ Kryo 64 บิต)
การออกแบบแกน CPU แบบกำหนดเองไม่ใช่เรื่องง่าย ไม่ใช่ว่าคุณจะพบผู้ออกแบบชิปตกงานและเสนอให้ออกแบบโปรเซสเซอร์แบบกำหนดเองใน Craigslist ดังนั้นวิธีนี้จึงมักจะสงวนไว้สำหรับผู้เล่นรายใหญ่ที่มีทรัพยากรด้านเทคนิค การเงิน และทรัพยากรบุคคลที่จำเป็นในการดึงออก ดังนั้น บริษัทส่วนใหญ่จึงใช้คอร์ ARM Cortex แบบออฟไลน์แทน (คอร์ 64-บิต Cortex-A57 สามารถใช้ในสภาพแวดล้อมของเซิร์ฟเวอร์และใช้งานโดยโปรเซสเซอร์เซิร์ฟเวอร์ ARM รุ่นต่อไปส่วนใหญ่)
สิ่งสำคัญคือต้องสังเกตว่าชิปที่ใช้ ARM แทบ ได้รับการออกแบบมาโดยเฉพาะ แต่ แกนประมวลผลของ CPU ที่ใช้ในส่วนใหญ่ไม่ใช่ .
โปรเซสเซอร์ ARM ส่วนใหญ่ใช้การออกแบบ ARM CPU มาตรฐาน (Cortex CPU) มากกว่าการใช้คอร์ของ CPU แบบกำหนดเอง ซึ่งหมายความว่าผู้ผลิตชิปสามารถเลือกคอร์ ARM CPU, GPU ของบริษัทอื่นและส่วนประกอบอื่นๆ จำนวนเท่าใดก็ได้ และปรับแต่งโปรเซสเซอร์ให้ตรงกับความต้องการโดยไม่ต้องพัฒนาคอร์ของ CPU แบบกำหนดเอง เป็นวิธีที่ประหยัดในการทำให้สถาปัตยกรรมมีความยืดหยุ่นมากขึ้นและเกี่ยวข้องกับนโยบายการออกใบอนุญาตของ ARM มากกว่าด้านวิศวกรรม
สิ่งสำคัญที่ควรทราบคือเซิร์ฟเวอร์ ARM ที่กำลังจะเปิดตัวเหล่านี้ ซึ่งใช้สถาปัตยกรรม CPU ARM 64 บิตล่าสุด ไม่ได้มีอะไรเหมือนกันมากกับเซิร์ฟเวอร์ ARM รุ่นทดลองเมื่อหลายปีก่อน ตัวอย่างเช่น เพื่อนร่วมงานคนหนึ่งของเราเล่นกับเซิร์ฟเวอร์ Scaleway ARM แต่ใช้โปรเซสเซอร์ ARMv7 และมีข้อจำกัดด้านฮาร์ดแวร์จำนวนหนึ่ง (เช่น Scaleway ใช้คอนโทรลเลอร์ I/O ที่ใช้ร่วมกัน และการขาดการสนับสนุน 64 บิตก็สร้างขึ้นอีก ชุดของความท้าทาย) เซิร์ฟเวอร์ที่ใช้ ARM รุ่นใหม่จะไม่ประสบปัญหาการงอกของฟันเหล่านี้ พวกเขามีความใกล้ชิดกับฮาร์ดแวร์ของ Intel มากในแง่ของคุณสมบัติและมาตรฐาน
ข้อดีและข้อเสียของเซิร์ฟเวอร์ ARM
ปัญหาเกี่ยวกับเซิร์ฟเวอร์ ARM คือมักใช้สำหรับซอกเล็กๆ และไม่เหมาะสำหรับนักพัฒนาซอฟต์แวร์ขนาดเล็กที่สามารถอาศัยอยู่กับเซิร์ฟเวอร์ใดๆ ก็ได้ แม้ว่าบริษัทใหญ่ๆ บางแห่งจะมองว่าบริษัทเหล่านี้น่าสนใจ แต่เซิร์ฟเวอร์ ARM ที่เปิดให้บริการอยู่ในปัจจุบันนั้นไม่เหมาะสำหรับนักพัฒนาซอฟต์แวร์รายบุคคลส่วนใหญ่
อย่างไรก็ตาม โซลูชันเซิร์ฟเวอร์ที่กำลังจะมาถึงนั้นแตกต่างกัน และควรดึงดูดกลุ่มลูกค้าเฉพาะกลุ่มมากขึ้น นี่คือสิ่งที่ทำให้พวกเขาดึงดูดฐานผู้ใช้ที่กว้างขึ้น:
- ลดต้นทุนฮาร์ดแวร์ ซึ่งอาจมีประสิทธิภาพที่เหนือกว่า (ประสิทธิภาพต่อดอลลาร์ ประสิทธิภาพต่อวัตต์)
- เพิ่มความเข้ากันได้และความพร้อมใช้งานของพอร์ตยอดนิยม
- รองรับเทคโนโลยีที่ทันสมัยและมาตรฐานอุตสาหกรรมใหม่
- ความสามารถในการทำงานเฉพาะบางประเภท (โหลดง่าย ๆ แต่เป็นแบบมัลติเธรด)
- ศักยภาพในการแข่งขันและความหลากหลายของผลิตภัณฑ์มากกว่าพื้นที่ x86
ฉันต้องเน้นว่าในขั้นตอนนี้ บางประเด็นเหล่านี้เป็นทฤษฎีเนื่องจากฮาร์ดแวร์ยังไม่ออก อย่างไรก็ตาม แม้ว่าฉันจะไม่สามารถอ้างสิทธิ์อย่างแน่ชัดว่าจะเกิดอะไรขึ้นในอีกไม่กี่ไตรมาสข้างหน้า แต่ฉันมั่นใจว่าเซิร์ฟเวอร์ ARM สายพันธุ์ใหม่จะมอบประโยชน์เหล่านี้ (และอีกมากมาย) ทำไมฉันถึงมั่นใจนัก? หากพวกเขาไม่มีศักยภาพที่จะสร้างความแตกต่าง ARM, Qualcomm, AMD และบริษัทอื่นๆ จะไม่เสียเวลาและเปลืองเงินไปกับการพัฒนา
แล้วข้อเสียของเซิร์ฟเวอร์ ARM ล่ะ? มีค่อนข้างน้อยและบางอันก็ใหญ่ โชคดีที่อุตสาหกรรมนี้กำลังทำงานอย่างหนักเพื่อแก้ไขปัญหาเหล่านี้
- การสนับสนุนซอฟต์แวร์ตีและพลาด
- ความพร้อมใช้งาน ปัญหาการใช้งานที่อาจเกิดขึ้น
- ROI กังวล
- ระบบนิเวศเล็กๆ
- นิสัยเก่าตายยาก
ปัญหาที่เกี่ยวข้องกับซอฟต์แวร์อาจเป็นปัญหาที่สำคัญที่สุดในทันที แม้ว่าบริการยอดนิยมจำนวนมากจะทำงานบนเซิร์ฟเวอร์ ARM แต่ การสนับสนุนซอฟต์แวร์จะมีปัญหา แค่ย้ายข้อมูลไปยังฮาร์ดแวร์ใหม่นั้นไม่เพียงพอ เราต้องตรวจสอบให้แน่ใจว่าทุกอย่างทำงานอย่างถูกต้อง เพื่อไม่ให้เกิดปัญหาด้านประสิทธิภาพหรือความล้มเหลว กล่าวอีกนัยหนึ่ง ซอฟต์แวร์ที่พอร์ตจะต้องมีการพัฒนา ไม่มีใครจะพัฒนาและปรับใช้บริการที่สร้างขึ้นบนพื้นฐานบั๊กกี้
ด้วยเงินทั้งหมดที่จะทำในตลาดเซิร์ฟเวอร์ คาดว่าจะมีความคืบหน้าอย่างรวดเร็ว แต่ก็ไม่เสมอไป การนำฮาร์ดแวร์ใหม่และการปรับแต่งซอฟต์แวร์ทั้งหมดที่ทำงานบนมาใช้นั้นไม่ใช่เรื่องง่ายเลย และความเร็วก็ขึ้นอยู่กับการปรับใช้ของตลาด ขนาดของระบบนิเวศเซิร์ฟเวอร์ ARM นั้น จำกัด (มาก) และฉันสงสัยว่าโปรเซสเซอร์ใหม่สองสามตัวจะสร้างความแตกต่างอย่างมากในระยะสั้น ในขณะที่บริษัทที่มีอิทธิพลเช่น ARM และ Qualcomm มีส่วนได้เสียที่จะเห็นความต้องการเซิร์ฟเวอร์ ARM เพิ่มขึ้น แต่ก็ไม่มีอะไรมากที่พวกเขาสามารถทำได้เกี่ยวกับซอฟต์แวร์ พวกเขาไม่มีอิทธิพลต่อนักพัฒนาซอฟต์แวร์ ดังนั้นพวกเขาจึงไม่สามารถบังคับให้พวกเขาเพิ่มการรองรับ ARM ให้กับผลิตภัณฑ์ที่มีอยู่ได้
เรื่องสั้นโดยย่อ: ดูสแต็กของคุณให้ดีแล้วลองคิดดูว่าทุกอย่างจะทำงานอย่างถูกต้องบนฮาร์ดแวร์ ARM หรือไม่ หากมีเวลาเพียงพอ นักพัฒนาจะเริ่มเพิ่มการรองรับฮาร์ดแวร์ ARM แต่การดำเนินการนี้ไม่ใช่กระบวนการที่รวดเร็ว พวกเขาจะต้องปรับแต่งเฟรมเวิร์กและแอพพลิเคชั่นเพื่อพิจารณาสถาปัตยกรรมใหม่ และฉันสงสัยว่าหลาย ๆ ตัวจะไม่รบกวนจนกว่าจะมีเซิร์ฟเวอร์ ARM เพียงพอ (ซึ่งอาจใช้เวลาหลายปี) การสนับสนุนซอฟต์แวร์รุ่นเก่าเป็นอีกปัญหาหนึ่งที่เห็นได้ชัด
สิ่งนี้นำเราไปสู่จุดต่อไป: ความพร้อมใช้งานของตลาดและปัญหาการใช้งานที่อาจเกิดขึ้น มีเซิร์ฟเวอร์ ARM อยู่ไม่มากนัก ดังนั้นตัวเลือกจึงมีจำกัดและความพร้อมใช้งาน อีกหนึ่งปีหรือสองปีหลังจากนี้ เราอาจเห็นแพ็คเกจโฮสติ้งที่ใช้ ARM จำนวนหนึ่งที่นำเสนอ แต่เราจะไม่เห็นมีมากเกินไป ที่แย่กว่านั้น มีโอกาสดีที่เซิร์ฟเวอร์เหล่านี้จะกระจุกตัวอยู่ในบางส่วนของโลก ทำให้น่าสนใจน้อยลงสำหรับนักพัฒนาบางคน มีข้อมูลที่ไม่เป็นที่รู้จักมากมายเกี่ยวกับการปรับใช้ ดังนั้นจึงยังเร็วเกินไปที่จะบอกว่าสิ่งต่างๆ จะออกมาเป็นอย่างไร
การยอมรับช้าอาจสร้างความท้าทายอีกชุดหนึ่ง สิ่งเหล่านี้ไม่ได้จำกัดเฉพาะเซิร์ฟเวอร์ ARM; นำไปใช้กับเทคโนโลยีระดับองค์กรส่วนใหญ่ องค์กรจำนวนมากต้องสำรวจความเป็นไปได้ของการใช้เซิร์ฟเวอร์ ARM แต่นั่นไม่ได้หมายความว่าพวกเขาจะใช้งานจริง เพื่อให้แน่ใจว่ามีการพัฒนาและความต้องการของผู้บริโภคที่เพียงพอ การยอมรับของตลาดจำเป็นต้องเติบโตอย่างต่อเนื่อง มิฉะนั้น คนที่ไม่ชอบความเสี่ยงอาจจะอยู่ห่างๆ โดยรอดูสถานการณ์ ปัญหาที่อาจเกิดขึ้นอีกประการหนึ่งคือเรื่องเศรษฐกิจ: หากนักพัฒนาไม่แน่ใจว่าระบบนิเวศเติบโตเร็วพอ พวกเขาอาจสรุปว่าผลตอบแทนที่อาจเกิดขึ้นนั้นไม่คุ้มกับความพยายาม
แล้วนิสัยเก่าๆ เหล่านี้ล่ะ? เนื่องจากพื้นที่เซิร์ฟเวอร์ไม่ได้พัฒนาอย่างรวดเร็ว ผู้คนมักจะยึดติดกับแพลตฟอร์มที่ได้รับการพิสูจน์แล้ว นั่นคือฮาร์ดแวร์ x86 คติง่ายๆ คือ ถ้าไม่พังก็อย่าซ่อม ทหารผ่านศึกในอุตสาหกรรมอาจมองว่าเซิร์ฟเวอร์ ARM เป็นโอกาสและเสี่ยงโชคกับพวกเขา ต้องใช้ความกล้าหาญและความมั่นใจพอสมควรในการผูกส่วนหนึ่งของโครงการที่ซับซ้อนกับสิ่งที่หลายคนยังมองว่าเป็นแพลตฟอร์มฮาร์ดแวร์ที่ยังไม่ทดลองหรือยังไม่บรรลุนิติภาวะ ฉันกลัวว่าหลายคนจะไม่เต็มใจที่จะกระโดด อย่างน้อยก็ไม่ใช่ตั้งแต่เนิ่นๆ
อนาคตที่สดใสและความตื่นเต้นเล็กน้อย
ฉันได้ใช้ชีวิตในวัยผู้ใหญ่อย่างเต็มที่แล้วเพื่อปกปิดซิลิคอนที่ล้ำสมัย และความคิดเห็นส่วนตัวของฉันเกี่ยวกับเซิร์ฟเวอร์ ARM ก็คือเซิร์ฟเวอร์เหล่านี้มีศักยภาพมากมาย แต่ ก็ไม่ได้มีไว้สำหรับทุกคน พวกเขาสามารถมีบทบาทสำคัญในอินเทอร์เน็ตแห่งอนาคตโดยการจัดหาบล็อคการสร้างราคาถูกสำหรับโครงสร้างพื้นฐานและการจัดการปริมาณงานเซิร์ฟเวอร์เฉพาะ
อย่างไรก็ตาม ในขณะเดียวกัน ฉันก็ไม่สามารถหลีกเลี่ยงความรู้สึกที่ว่าเซิร์ฟเวอร์ ARM มักจะถูกโจมตีมากเกินไป อย่างไรก็ตาม ฉันไม่เห็นว่ามันเป็นแฟชั่น ฉันคิดว่าพวกเขาอยู่ที่นี่ แต่ผู้ขายต้องแกะสลักเฉพาะบางช่องที่สามารถได้รับประโยชน์อย่างแท้จริงจากสถาปัตยกรรมใหม่
กล่าวอีกนัยหนึ่ง เราจะไม่เห็นเซิร์ฟเวอร์เว็บโฮสติ้ง LAMP แบบธรรมดาจำนวนมากที่ใช้ ARM แต่เราสามารถเห็นเซิร์ฟเวอร์จำนวนมากในช่องที่แปลกใหม่กว่า (และบางเซิร์ฟเวอร์ที่น่าเบื่ออย่างน่ากลัว) โปรเซสเซอร์ ARM อาจเหมาะอย่างยิ่งสำหรับการโหลดเฉพาะ โดยเฉพาะอย่างยิ่งที่สามารถใช้ประโยชน์จากแกน CPU ทางกายภาพขนาดเล็กจำนวนมาก ซึ่งเป็นสิ่งที่ไม่ได้ผูกกับ CPU มันอาจจะฟังดูไม่มากนัก แต่สิ่งนี้ครอบคลุมการใช้งานที่เป็นไปได้มากมาย: การบันทึกข้อมูล การสืบค้นอย่างง่ายปริมาณมาก ฐานข้อมูลบางประเภท บริการจัดเก็บข้อมูลต่างๆ เป็นต้น
ฉันสามารถดำเนินการต่อโดยระบุกรณีการใช้งานข้อดีและข้อเสียของเซิร์ฟเวอร์ ARM และปัญหาที่อาจเกิดขึ้น แต่ในตอนท้ายของวันฉันสงสัยว่าการนำเซิร์ฟเวอร์ ARM ไปใช้จะขึ้นอยู่กับเงินสดเก่าที่ดี นอกเหนือจากเทคโนโลยีแล้ว เซิร์ฟเวอร์ ARM จะสมเหตุสมผลก็ต่อเมื่อส่วนประกอบทางเศรษฐกิจถูกตรวจสอบ กล่าวอีกนัยหนึ่งพวกเขาจะต้องเสนอราคาที่คุ้มค่ามากกว่าโปรเซสเซอร์ x86 หากพวกเขาต้องการพิสูจน์การมีอยู่ของพวกเขา
เนื่องจากนี่เป็นจุดรวมของการแนะนำสถาปัตยกรรมใหม่นี้ให้กับอุตสาหกรรมเซิร์ฟเวอร์ไม่มากก็น้อย ฉันจึงคาดหวังราคาที่น่าดึงดูด แต่จะใช้เวลาสองสามเดือนก่อนที่เราจะทราบอย่างแน่นอน
