ผมสร้าง CPUFreq Governor ด้วยไวบ์โค้ดดิ้ง!
(github.com/gg582)ผมเขียนตัว governor จากไอเดียช่วงต้น แล้วนำไปใส่ให้ Gemini ช่วยรีแฟกเตอร์โค้ดและปรับนโยบายจนออกมาเป็นแบบนี้!
ไอเดียพื้นฐานคล้ายกับ conservative แต่โฟกัสไปที่การประหยัดพลังงานมากกว่าเล็กน้อย และได้นำไปลองใช้ในสภาพแวดล้อมที่การลดการใช้พลังงานมีข้อดี แม้จะต้องแลกกับประสิทธิภาพบางส่วนเมื่อภาระงานต่ำก็ตาม
5 ความคิดเห็น
กรณีนี้เหมาะกับการนำไปใช้เมื่อคุณต้องการลดการใช้พลังงาน เช่น ดูแลดาต้าเซ็นเตอร์ด้วยตัวเองหรือใช้งานที่บ้าน มากกว่าการใช้คลาวด์เซิร์ฟเวอร์ ใช่ไหมครับ?
ใช่เลย อันนั้นแหละ! ไม่รู้เหมือนกันว่าทำไมคำตอบถึงมาช้าขนาดนี้
น่าจะต้องมีคำอธิบายหน่อยว่ามันคืออะไร....
ผมสร้าง CPUFreq Governor ด้วย Vibe Coding!
CPU Governor ของลินุกซ์ (Governor) คือโปรแกรมที่ควบคุมประสิทธิภาพและการใช้พลังงานของ CPU
อ๋อ มีเขียนไว้อยู่ใน README ครับ! ถ้าดู governor ที่มีอยู่เดิมของ Linux จะมีทั้ง governor แบบที่ตอบสนองต่อความต้องการทันที เช่น OnDemand, SchedUtil และ governor อย่าง conservative, interactive ที่จะไม่เร่งความถี่ขึ้นให้ตรงกับความต้องการทันที แต่จะค่อย ๆ เพิ่มขึ้นแบบเป็นขั้นโดยพิจารณา
stepเป็นต้น ส่วนตัวนี้ให้ความสำคัญกับการประหยัดพลังงานเป็นหลัก ถ้าไม่มีภาระงานพิเศษก็จะรักษาไว้ใกล้กับ base clock เพื่อประหยัดไฟ และเมื่อเป็นงานที่มีโหลดอย่างการเล่นเกมหรือการคำนวณทางฟิสิกส์ก็จะเพิ่มความถี่ขึ้นมา สำหรับการท่องเว็บทั่วไปหรือการรันโฮมเซิร์ฟเวอร์ ก็มักจะคงความถี่ต่ำไว้ตามปกติ และในสถานการณ์อย่างโหนดของคลัสเตอร์ k8s ก็ยืนยันได้ว่ารับมือได้อย่างยืดหยุ่นดี แน่นอนว่าเล่นเกมก็ผ่านด้วยครับ