Intel Gen 12/13 ใช้ไฟขณะว่าง 7 วัตต์: พื้นฐานของการสร้างเซิร์ฟเวอร์/NAS พลังงานต่ำ
- ระบบ Intel Gen 12/13 ใช้ไฟขณะว่าง 7 วัตต์
- การวัดไฟขณะว่างรวมเมนบอร์ด, CPU, RAM, SSD และ PSU
- เข้าสู่โหมดประหยัดพลังงานได้ผ่านการตั้งค่า C-States ใน BIOS และการปรับอัตโนมัติของ powertop
สเปกโดยละเอียดและการเลือกชิ้นส่วน
- เป้าหมายคือการใช้ไฟขณะว่างต่ำและได้ประสิทธิภาพ CPU ที่สมเหตุสมผล
- ต้องสามารถรองรับฮาร์ดไดรฟ์ 12 ลูกและ NVMe อย่างน้อย 1 ตัว
- ต้องการใช้ DDR4 และนำ CPU เดิมกลับมาใช้ใหม่เพื่อควบคุมต้นทุน
เมนบอร์ด – ASUS Prime H770-Plus D4
- เลือกจากเมนบอร์ด Intel ซีรีส์ 600/700 และ AMD ซีรีส์ 500/600
- ตระหนักว่าจำเป็นต้องใช้อะแดปเตอร์ PCI-E to M.2 เพื่อรองรับไดรฟ์ NVMe 6 ตัว
- เหตุผลที่เลือกเมนบอร์ด Intel คือ TDP ของชิปเซ็ต, ความเร็วของชิปเซ็ต, ความสามารถในการใช้ DDR4 และการมี CPU Intel Gen 12 อยู่แล้ว
CPU – Intel i5-12400 (H0 stepping) – Alder Lake
- รองรับการถอดรหัส AV1 ด้วยฮาร์ดแวร์ และให้ประสิทธิภาพสูงสุดโดยไม่มีโอเวอร์เฮดจากซิลิคอนของ E-core
- นำ CPU ที่เคยใช้ในเดสก์ท็อปเครื่องก่อนกลับมาใช้ใหม่กับชุดประกอบที่เน้นงานเซิร์ฟเวอร์
หน่วยความจำ – 64GB DDR4-3200
- ใช้หน่วยความจำ Kingston HyperX แบบ dual-rank และ single-rank ที่มีอยู่เดิม
- ใช้โปรไฟล์ XMP เพื่อความเสถียรและปรับแรงดันไฟ
ไดรฟ์บูต – Sandisk Ultra 3D 1TB SSD
- ใช้เป็นไดรฟ์บูตสำหรับ Ubuntu Server 23.04
- ระบบปฏิบัติการสุดท้ายมีแผนจะติดตั้งบน Samsung SSD 970 EVO Plus 500GB NVMe
PSU – Corsair RM750
- PSU ขนาด 750W แม้คาดว่าระบบจะใช้ไฟราว 10 วัตต์ แต่ก็ต้องรองรับโหลดกระชากสูงในช่วงที่มอเตอร์ของไดรฟ์หลายตัวทำงานพร้อมกัน
การวัดพลังงาน – ระยะแรก
- วัดการใช้ไฟจากปลั๊กผนังโดยใช้ Ubuntu Server 23.04
- เปิดใช้งาน CPU C-states, ASPM, R6 และการรองรับ ALPM ใน BIOS
- หลังจอดับใช้ไฟ 7 วัตต์ และใช้ไฟ 8 วัตต์เมื่อปิดการจัดการพลังงานของคีย์บอร์ด USB
การวัดพลังงานที่เป็นปัญหา – เมื่อใส่ฮาร์ดไดรฟ์ที่หยุดหมุนครบชุด
- หลังเชื่อมต่อฮาร์ดไดรฟ์ 12 ลูกและไดรฟ์ NVMe 4 ตัว การใช้ไฟขณะว่างเพิ่มเป็น 24-25 วัตต์
- คาดว่าการใช้ไฟเพิ่มขึ้นมาจาก SATA controller และการใช้ port multiplier
ปริศนาการใช้พลังงาน – การตรวจสอบและวิเคราะห์การใช้ไฟสูง
- ถอดฮาร์ดไดรฟ์ออกและทดสอบชิ้นส่วนทีละตัว
- พบว่า JMB585 SATA controller เป็นตัวการหลักที่ทำให้การใช้ไฟเพิ่มขึ้น
- เปลี่ยนเป็น ASM1166 SATA controller เพื่อลดการใช้ไฟด้วยการรองรับ ASPM L1
ปริศนาการใช้พลังงาน – บทสรุป
- การรองรับของเมนบอร์ดและการตั้งค่า BIOS มีความสำคัญต่อการใช้พลังงานต่ำ
- อุปกรณ์ทั้งหมดต้องรองรับ ASPM L1
- หากต้องการไปถึงสถานะพลังงาน C8 ควรหลีกเลี่ยงการใช้เลน PCIe ที่เชื่อมต่อกับ CPU
- การวัดไฟจากปลั๊กผนังเป็นวิธีเดียวที่สะท้อนสถานการณ์จริงได้อย่างแม่นยำ
ความเห็นของ GN⁺
- สำหรับการสร้างเซิร์ฟเวอร์/NAS พลังงานต่ำ แพลตฟอร์ม Intel Gen 12/13 ให้ประสิทธิภาพด้านการใช้ไฟขณะว่างที่มีประสิทธิภาพมาก
- การเลือกเมนบอร์ดและการตั้งค่า BIOS ส่งผลอย่างมากต่อการใช้พลังงาน
- บทความนี้ให้ข้อมูลที่มีประโยชน์สำหรับวิศวกรซอฟต์แวร์ระดับเริ่มต้นที่ต้องการสร้างระบบพลังงานต่ำ โดยเฉพาะมุมมองที่น่าสนใจเกี่ยวกับผลกระทบของฟีเจอร์จัดการพลังงานในชิ้นส่วนอย่าง SATA controller ต่อการใช้พลังงานโดยรวมของระบบ
1 ความคิดเห็น
ความคิดเห็นจาก Hacker News
มีเอกสาร Google Docs ในเธรดฟอรัมเยอรมันที่รวบรวมคอนฟิกโฮมเซิร์ฟเวอร์/ที่เก็บข้อมูลต่อเครือข่าย (NAS) หลากหลายแบบที่กินไฟต่ำกว่า 30W ผู้แสดงความคิดเห็นบอกว่าพบคอนฟิกฮาร์ดแวร์ที่มีอัตราส่วนราคาต่อประสิทธิภาพเหมาะที่สุดสำหรับตัวเอง และซื้อเครื่องมือสองมาได้ในราคาถูกมาก กำลังรัน Proxmox อยู่ และใช้ไฟขณะ idle ที่ 9.3W ไม่ค่อยเหมาะกับการเข้ารหัสสื่อ จึงแนะนำ Core i3 8100 ขึ้นไปเป็นทางเลือก นอกจากนี้ยังมี Dell T30 หรือ Fujitsu Celsius W550 ซึ่งเป็นเวิร์กสเตชันมือสองราคาถูกที่ทำเป็นเซิร์ฟเวอร์ได้ดี ตัวเลือก Ryzen มีไม่บ่อยนัก แต่มีรายงานว่า AMD Ryzen 5 PRO 4650G กับเมนบอร์ด Asus PRIME B550M-A ใช้ไฟขณะ idle ประมาณ 16W
ฮาร์ดแวร์อาจยอดเยี่ยม แต่ถ้าจัดการซอฟต์แวร์ยาก ก็ยากที่จะทำให้คอนฟิกแบบนี้คุ้มค่า ตัวอย่างเช่น Synology NAS ใช้ระบบปฏิบัติการชื่อ DSM และได้เปรียบมากจากซอฟต์แวร์ที่เป็นมิตรกับผู้ใช้ Synology น่าจะขึ้นมาอยู่ในตำแหน่งแบบเดียวกับ Microsoft ในตลาด NAS ได้ หากทำให้ DSM รันบนแพลตฟอร์มที่ไม่ใช่ Synology ได้ด้วย
ผู้เขียนประกอบระบบมาราว 5 เครื่องระหว่างปี 2016 ถึง 2023 บางชิ้นส่วนนำกลับมาใช้ซ้ำข้ามหลายบิลด์ เมื่อพิจารณาค่าใช้จ่ายด้านพลังงานตลอดอายุการใช้งานเทียบกับต้นทุนฮาร์ดแวร์แล้ว เครื่องที่กินไฟมากและใช้งาน 4 ปี อาจคุ้มกว่าเครื่องประหยัดไฟที่ใช้งาน 2 ปี
เป็นงานที่ยอดเยี่ยมสำหรับคนที่ต้องการพื้นที่เก็บข้อมูลมาก ๆ หากย้ายทุกอย่างลง SSD ได้และไม่ต้องการพลังประมวลผลมากนัก ก็อาจใช้เซิร์ฟเวอร์กินไฟต่ำอย่าง RasPi หรือ NUC ได้ ผู้แสดงความคิดเห็นกำลังใช้เซิร์ฟเวอร์ 1U Atom แบบไร้พัดลมอยู่ในตอนนี้ ซึ่งมีข้อดีเรื่อง SATA และ ECC RAM
ใช้คอนฟิก 7950X3D, X670E Taichi, 96GB 6400MHz CL32, 2x4TB Lexar, 4x18TB Seagate Exos X18, RX570 8G, Proxmox โดยกินไฟราว 60-70W ตอน idle, ราว 90-100W เมื่อ TrueNAS VM ทำงาน, และราว 150W เมื่อ TrueNAS กับ Fedora Desktop ทำงานพร้อม GPU passthrough โดย RAM มีผลต่อการใช้พลังงานอย่างมาก
ความต้องการของแต่ละคนต่างกัน แต่หลังจากใช้ RAID5 หรือ 6 แล้วเจอกรณีดิสก์เสีย ก็เริ่มไม่ชอบ RAID สุดท้ายจึงลดขนาดระบบเหลือคอนฟิกง่าย ๆ ที่ใช้ SSD สองตัว และตั้งค่าให้รัน LXC container ได้เมื่อจำเป็น
หากต้องการลดการใช้พลังงานให้ต่ำที่สุดในกรณีที่ NAS ส่วนใหญ่อยู่ในสถานะ idle อาจพิจารณาใช้ตัวสร้าง WoL (เทคโนโลยีปลุกเซิร์ฟเวอร์ด้วยการตรวจจับแพ็กเก็ตเครือข่าย) ที่ใช้ embedded CPU เพื่อปลุกไฟล์เซิร์ฟเวอร์อัตโนมัติ วิธีนี้ช่วยให้ใช้ไฟต่ำมาก ขณะยังได้ประสิทธิภาพเต็มของเซิร์ฟเวอร์เมื่อจำเป็น
ระบบประหยัดไฟเป็นเรื่องดี แต่การรัน RAID ขนาดใหญ่โดยไม่มี ECC เป็นเวลานานมีความเสี่ยง ต้องการแนวทางที่ดีสำหรับระบบลักษณะคล้ายกันที่ทนใช้งานได้เกิน 5 ปี
มีประสบการณ์ที่ดีจากการลองทำระบบคล้ายกันในอดีต และให้ลิงก์บล็อกเกี่ยวกับเซิร์ฟเวอร์ไร้พัดลมแบบเงียบสนิท
ชี้ให้เห็นว่าแทนที่จะโฟกัสกับการจูน CPU/เมนบอร์ดอย่างเดียว การใช้ไดรฟ์ขนาดใหญ่จำนวนน้อยแทนไดรฟ์เล็กหลายตัวอาจคุ้มค่ากว่า