متتبع صفحات GPU
يراقب متتبع الصفحات الاختياري صفحات ضيف من 16 KiB. يُحدِث أول تخزين CPU أصلي خطأ صفحة، ويقدّم جيلًا، ويُبطل نسخة GPU حتى لا تُحسَب بصمة الصفحات غير المتغيرة وتُرفع في كل إطار.
ملاحظات المستودع حتى 10 أكتوبر 2026
المشكلة التي يعالجها
يجب أن يبلغ هدف الرسم أو مخزن الرؤوس الذي يعيش في ذاكرة الضيف إلى GPU. رفع التخصيص كله في كل إطار صحيح ومكلف. حساب بصمة التخصيص كله لاكتشاف أنه لم يتغير مكلف أيضًا. بدل ذلك يعلّم متتبع الصفحات الصفحة القابلة للكتابة المتتبَّعة للقراءة فقط ويدع CPU يُحدِث خطأ صفحة عند أول تخزين.
يسجّل معالج الخطأ الصفحة، ويستعيد حماية الضيف الحقيقية، ويقدّم جيل تلك الصفحة. يقارن رسم لاحق الأجيال. تبقى الصفحة غير المتغيرة على الجهاز. الصفحة التي تحرك جيلها تُرفع. يفعّل PS5_GPU_PAGE_TRACKER=1 الآلية. وهي متوقفة ما لم يُضبط ذلك المتغير، أو الحزمة التجريبية.
ما هو خطأ الصفحة
خطأ الصفحة إبطال، وليس خللًا في الضيف. لم تُجعل الصفحة للقراءة فقط إلا حتى يلاحظ المضيف الكتابة. يُسمَح بعد ذلك لاكتمال تخزين الضيف تحت الحماية التي طلبتها اللعبة. الصفحات غير المتتبَّعة تُبقي مسار الرفع العادي.
تعيينات الذاكرة المباشرة التي تُعاد إنشاؤها بالعنوان والحجم والإزاحة الفيزيائية وأذونات CPU نفسها تُبقي عروض المضيف. ذلك إعادة الاستعمال هو ما يجعل الجيل ذا معنى عبر الإطارات. يأخذ تغيّر الدعم أو الأذونات مسار الاستبدال العادي ويلاحظ المتتبع التعيين الجديد.
ما لا يفعله
لا يجعل المتتبع الدقة الداخلية للعبة أصغر، ولا يترجم المظلّلات. هو يزيل فقط النقل المتكرر للصفحات التي لم يخزّن إليها CPU. اللعبة التي تعيد كتابة مخزن في كل إطار ما زالت تدفع ثمن ذلك المخزن.
تُبطل كتابات أطلس الخط ومخازن HLE الأخرى المراقبات قبل أن تعدّل ذاكرة الضيف، فلا تكون كتابة البرامج الثابتة غير مرئية لـ GPU. المتتبع جزء من مجموعة GPU التجريبية الموصوفة في نظرة البنية العامة.
ما هو منفَّذ
- أجيال لكل صفحة لصفحات ضيف من 16 KiB حين يكون PS5_GPU_PAGE_TRACKER=1.
- خطأ صفحة عند أول تخزين يستعيد حماية الضيف ويُبطل النسخة المقيمة.
- إعادة استعمال عروض الذاكرة المباشرة المطابقة حتى تبقى الأجيال عبر الإطارات.
- إبطال حين يكتب HLE نفسه صفحة مراقَبة.
ما زال ناقصًا
- المتتبع يُفعَّل باختيار. مسار التوافق الافتراضي لا يعتمد عليه.
- الصفحات التي يعيد CPU كتابتها في كل إطار ما زالت تُرفع.
- لا يغطي اتساق GPU إلى GPU داخل سطح بيانات وصفية مضغوطة.
آليات مرتبطة
ماذا تصف هذه الصفحات