
گزارش یک باگ (Bug Report) در GNOME 51 که حدود یک ماه پیش ثبت شده بود نشان میداد هنگام خوابیدن نمایشگر، مصرف GPU بهطور غیرعادی بالا میرود. بررسیها مشخص کرد علت، بازترسیم بیوقفه (Un-throttled Repainting) نماهای صحنه (Stage View) در بخش پشتیبان CRTC حتی در حالت صرفهجویی انرژی (Power Savings Mode) است.
راهحل ادغامشده در Mutter
مجموعهای از ۱۷ وصله (Patch) امروز برای رفع این مشکل در Mutter ادغام شد. کد جدید با مدیریت پیشرفت جلوگیری از بازترسیم در وضعیت صرفهجویی انرژی، این رفتار را اصلاح میکند.
تغییرات کلیدی
- رندرکننده (Renderer) در حالت صرفهجویی انرژی و زمانی که یک نمای صحنه (Stage View) به CRTC هدفگیری شده باشد، بهصورت فعال از ترسیم خودداری میکند.
- این راهحل باگ اولیه را برطرف میکند؛ ابزارهای vkgears، glxgears و es2gears در حالت صرفهجویی انرژی حدود ۶۰ فریم بر ثانیه (FPS) گزارش میکنند، بدون آنکه فریمکلاک (Frame Clock) نیازی به دانستن درباره حالت صرفهجویی داشته باشد.
- کد جدید مهاجرت بازخورد ارائه (Presentation Feedback) فریمهایی را که کنار گذاشته میشوند مدیریت میکند؛ در نتیجه vkgears در حالت صرفهجویی انرژی رویدادهای .discarded را بهدرستی دریافت میکند.
زمان عرضه
این کد به Mutter ادغام شده و انتظار میرود بخشی از انتشار GNOME 51.2 باشد. نویسنده اصلاحیه، Jonas Ådahl از شرکت Red Hat است.