Google Chrome และ MS Edge เตรียมลดการใช้หน่วยความจำบน Windows 10 เวอร์ชัน 2004 ขึ้นไป
(blogs.windows.com)หนึ่งในข้อเสียร่วมกันของเว็บเบราว์เซอร์ตระกูล Chromium อย่าง Google Chrome หรือ MS Edge เวอร์ชันใหม่ คือมีการใช้หน่วยความจำค่อนข้างมาก และเมื่อ MS Edge กลายมาเป็นเว็บเบราว์เซอร์ตระกูล Chromium เช่นกัน ก็หลีกเลี่ยงข้อเสียดังกล่าวไม่ได้
พื้นที่หน่วยความจำที่แอปพลิเคชันร้องขอจากระบบปฏิบัติการและได้รับการจัดสรรแบบไดนามิกนั้นเรียกว่า “heap” จนถึงตอนนี้ ระบบที่ใช้จัดการการจัดสรรหน่วยความจำลักษณะนี้บนระบบปฏิบัติการ Windows เรียกว่า NT heap แต่ใน Windows 10 ได้มีระบบจัดการการจัดสรรหน่วยความจำแบบใหม่ชื่อว่า Segment heap ถูกรวมมาให้แล้ว อย่างไรก็ตาม ที่ผ่านมาระบบนี้ถูกใช้งานอย่างจำกัดเฉพาะกับบาง system process บางส่วนของ MS Edge รุ่นเก่า และแอป UWP เป็นต้น ส่วนโปรแกรมอื่นทั้งหมดก็ยังคงใช้ NT heap แบบเดิมอยู่
ตั้งแต่ Windows 10 May 2020 Update (เวอร์ชัน 2004, บิลด์ 19041) ที่เพิ่งปล่อยออกมา ระบบจัดการหน่วยความจำใหม่นี้ก็สามารถใช้งานได้กับแอปพลิเคชัน Win32 ทั่วไปแล้ว และด้วยเหตุนี้ เว็บเบราว์เซอร์ตระกูล Chromium อย่าง MS Edge และ Google Chrome ก็จะอัปเดตให้ใช้งาน Segment heap บนระบบที่รองรับเช่นกัน ตามข้อมูลจากทีมพัฒนา MS Edge การทดสอบภายในพบว่าสามารถลดการใช้หน่วยความจำได้สูงสุด 27% จึงคาดได้ว่าอย่างน้อยบน Windows 10 รุ่นใหม่ ผลของการลดการใช้หน่วยความจำในเว็บเบราว์เซอร์ตระกูล Chromium จะเห็นได้ค่อนข้างชัดเจน
สถานะใน bug tracker ของโปรเจกต์ Chromium ที่เกี่ยวกับการนำ Segment heap มาใช้:
https://chromium-review.googlesource.com/c/chromium/src/+/2163163
โครงสร้างภายในของ Segment heap (สไลด์ภาษาอังกฤษ):
https://blackhat.com/docs/us-16/…
โครงสร้างภายในของ NT heap แบบเดิม (สไลด์ภาษาอังกฤษ):
1 ความคิดเห็น
ไม่ใช่แค่เรื่องหน่วยความจำเท่านั้น แต่โดยรวมก็ยังให้ความรู้สึกว่าหนักอึ้งอยู่เหมือนกัน.. หวังว่าจะมีการปรับแต่งประสิทธิภาพต่อเนื่องไปเรื่อย ๆ นะครับ