ตัวโหลดบาลานเซอร์ CPU ใหม่จาก MIT

ระบบ Shenango ได้รับการวางแผนที่จะใช้ในศูนย์ข้อมูล

ตัวโหลดบาลานเซอร์ CPU ใหม่จาก MIT
/ รูปถ่าย มาร์โคเวอร์ CC BY

ตามข้อมูลจากผู้ให้บริการศูนย์ข้อมูลรายหนึ่ง ใช้ เพียง 20–40% ของพลังการประมวลผลที่มีอยู่ เมื่อโหลดสูงตัวบ่งชี้นี้ สามารถเข้าถึง 60%. การกระจายทรัพยากรนี้นำไปสู่การเกิดขึ้นของสิ่งที่เรียกว่า "เซิร์ฟเวอร์ซอมบี้" เหล่านี้เป็นเครื่องจักรที่ไม่ได้ใช้งานเกือบตลอดเวลาและสิ้นเปลืองพลังงาน วันนี้ 30% ของเซิร์ฟเวอร์ในโลก ไม่มีงานทำใช้ไฟฟ้ามูลค่า 30 พันล้านดอลลาร์ต่อปี

MIT ตัดสินใจที่จะต่อสู้กับการใช้ทรัพยากรคอมพิวเตอร์อย่างไม่มีประสิทธิภาพ

ทีมวิศวกร ได้พัฒนา ระบบโหลดบาลานซ์ของโปรเซสเซอร์ที่เรียกว่า Shenango จุดประสงค์คือเพื่อตรวจสอบสถานะของบัฟเฟอร์งานและแจกจ่ายกระบวนการที่ค้างอยู่ (ที่ไม่สามารถรับเวลา CPU) ให้กับเครื่องที่ว่างได้

เชนันโกทำงานอย่างไร

Shenango เป็นไลบรารี Linux ในภาษา C พร้อมการเชื่อม Rust และ C++ รหัสโครงการและแอปพลิเคชันทดสอบมีการเผยแพร่ใน ที่เก็บ บน GitHub

โซลูชันนี้ใช้อัลกอริทึม IOKernel ซึ่งทำงานบนคอร์เฉพาะของระบบมัลติโปรเซสเซอร์ จัดการคำขอ CPU โดยใช้เฟรมเวิร์ก ปปสซึ่งช่วยให้แอปพลิเคชันสามารถสื่อสารกับอุปกรณ์เครือข่ายได้โดยตรง

IOKernel ตัดสินใจว่าเคอร์เนลใดที่จะมอบหมายงานเฉพาะให้ อัลกอริธึมยังกำหนดจำนวนคอร์ที่ต้องการด้วย สำหรับแต่ละกระบวนการจะมีการกำหนดคอร์หลัก (รับประกัน) และคอร์เพิ่มเติม (ระเบิดได้) - ส่วนหลังจะเปิดตัวในกรณีที่จำนวนคำขอไปยัง CPU เพิ่มขึ้นอย่างรวดเร็ว

คิวคำขอ IOKernel ถูกจัดระเบียบเป็น บัฟเฟอร์แหวน. ทุกๆ ห้าไมโครวินาที อัลกอริธึมจะตรวจสอบเพื่อดูว่างานทั้งหมดที่ได้รับมอบหมายให้กับแกนประมวลผลเสร็จสิ้นแล้วหรือไม่ เมื่อต้องการทำเช่นนี้ จะเปรียบเทียบตำแหน่งปัจจุบันของหัวบัฟเฟอร์กับตำแหน่งก่อนหน้าของหาง หากปรากฏว่าส่วนท้ายอยู่ในคิวแล้ว ณ เวลาที่ตรวจสอบครั้งก่อน ระบบจะบันทึกบัฟเฟอร์โอเวอร์โหลดและจัดสรรคอร์เพิ่มเติมสำหรับกระบวนการ

เมื่อกระจายโหลด จะมีการกำหนดลำดับความสำคัญให้กับแกนประมวลผลที่กระบวนการเดียวกันถูกดำเนินการก่อนหน้านี้และยังคงอยู่ในแคชบางส่วน หรือแกนประมวลผลที่ไม่ได้ใช้งานใดๆ

ตัวโหลดบาลานเซอร์ CPU ใหม่จาก MIT

Shenango ยังใช้แนวทางนี้อีกด้วย ขโมยงาน. แกนประมวลผลที่จัดสรรเพื่อเรียกใช้แอปพลิเคชันหนึ่งจะตรวจสอบจำนวนงานที่แต่ละแอปมี หากคอร์ใดคอร์หนึ่งทำรายการงานเสร็จก่อนคอร์อื่น มันจะ "บรรเทา" ส่วนหนึ่งของภาระจากเพื่อนบ้าน

ข้อดีและข้อเสีย

บน ตาม Shenango ซึ่งเป็นวิศวกรจาก MIT สามารถประมวลผลคำขอได้ห้าล้านคำขอต่อวินาที และรักษาเวลาตอบสนองเฉลี่ยไว้ที่ 37 ไมโครวินาที ผู้เชี่ยวชาญกล่าวว่าในบางกรณีเทคโนโลยีสามารถเพิ่มอัตราการใช้งานของโปรเซสเซอร์ในศูนย์ข้อมูลเป็น 100% เป็นผลให้ผู้ปฏิบัติงานศูนย์ข้อมูลสามารถประหยัดในการซื้อและบำรุงรักษาเซิร์ฟเวอร์ได้

ศักยภาพของโซลูชัน เครื่องหมาย และผู้เชี่ยวชาญจากมหาวิทยาลัยอื่นๆ ตามที่ศาสตราจารย์จากสถาบันเกาหลีกล่าวว่าระบบ MIT จะช่วยลดความล่าช้าในการให้บริการทางเว็บ ตัวอย่างเช่นมันจะมีประโยชน์ในร้านค้าออนไลน์ ในวันที่ขาย การโหลดหน้าเว็บอาจเกิดความล่าช้าเป็นครั้งที่สอง приводит เพื่อลดจำนวนการดูไซต์ลง 11% การกระจายโหลดที่รวดเร็วจะช่วยให้บริการลูกค้าได้มากขึ้น

เทคโนโลยียังคงมีข้อเสีย - ไม่รองรับมัลติโปรเซสเซอร์ นูมา-ระบบที่ชิปเชื่อมต่อกับโมดูลหน่วยความจำที่แตกต่างกันและไม่ "สื่อสาร" ระหว่างกัน ในกรณีนี้ IOKernel สามารถควบคุมการทำงานของกลุ่มโปรเซสเซอร์ที่แยกจากกัน แต่ไม่ใช่ชิปเซิร์ฟเวอร์ทั้งหมด

ตัวโหลดบาลานเซอร์ CPU ใหม่จาก MIT
/ รูปถ่าย ทิม เรคมันน์ CC BY

เทคโนโลยีที่คล้ายกัน

ระบบปรับสมดุลโหลดโปรเซสเซอร์อื่นๆ ได้แก่ Arachne โดยจะคำนวณจำนวนคอร์ที่แอปพลิเคชันจะต้องใช้เมื่อเริ่มทำงาน และกระจายกระบวนการตามตัวบ่งชี้นี้ ตามที่ผู้เขียนระบุ เวลาแฝงสูงสุดของแอปพลิเคชันใน Arachne คือประมาณ 10 ไมโครวินาที

เทคโนโลยีนี้ถูกนำมาใช้เป็นไลบรารี C ++ สำหรับ Linux และมีซอร์สโค้ดอยู่ที่ GitHub.

เครื่องมือปรับสมดุลอีกอย่างคือ ZygOS เช่นเดียวกับ Shenango เทคโนโลยีใช้วิธีการขโมยงานเพื่อกระจายกระบวนการใหม่ ตามที่ผู้เขียน ZygOS ระบุว่าเวลาแฝงของแอปพลิเคชันโดยเฉลี่ยเมื่อใช้เครื่องมือคือประมาณ 150 ไมโครวินาที และสูงสุดคือประมาณ 450 ไมโครวินาที รหัสโครงการก็เช่นกัน อยู่ในโดเมนสาธารณะ.

ผลการวิจัย

ศูนย์ข้อมูลสมัยใหม่ยังคงขยายตัวอย่างต่อเนื่อง แนวโน้มที่เพิ่มขึ้นนั้นเห็นได้ชัดเจนโดยเฉพาะในตลาดศูนย์ข้อมูลระดับไฮเปอร์สเกล: ขณะนี้อยู่ในโลก ที่นั่น ศูนย์ข้อมูลไฮเปอร์สเกล 430 แห่ง แต่ในปีต่อๆ ไป จำนวนศูนย์ดังกล่าวอาจเพิ่มขึ้น 30% ด้วยเหตุนี้ เทคโนโลยีการปรับสมดุลโหลดโปรเซสเซอร์จึงเป็นที่ต้องการอย่างมาก ระบบอย่าง Shenango นั้นมีอยู่แล้ว ดำเนินการ องค์กรขนาดใหญ่ และจำนวนเครื่องมือดังกล่าวจะเพิ่มมากขึ้นในอนาคตเท่านั้น

โพสต์จากบล็อกแรกเกี่ยวกับ IaaS ขององค์กร:

ที่มา: will.com

เพิ่มความคิดเห็น