تم توفير دعم التحسين الموجَّه من خلال الملف الشخصي في الإصدار 22.2.71 من AGDE.
تحديد مكان إعدادات PGO
افتح إعدادات مشروعك من Solution Explorer (مستكشف الحلول).
الشكل 1: نافذة مستكشف حلول Visual Studio.
تأكَّد من ضبط "النظام الأساسي" على إعدادات Android (على سبيل المثال، Android-arm64-v8a).
في اللوحة على يمين الشاشة، اختَر إعدادات الضبط > عام. ابحث عن مجموعة المواقع الإلكترونية المسماة PGO.
الشكل 2: مربّع حوار "خصائص المشروع".
تفعيل الإصدارات المستنِدة إلى أدوات PGO في المشروع
أضِف إلى مشروعك إعدادًا جديدًا يُعرف باسم Measuremented (أداة القياس). يستند هذا إلى الإعدادات التي تستخدمها أثناء التطوير للاختبار، والتي يجب أن تكون إصدارًا تقليديًا محسّنًا (لا يزال بإمكانك تفعيل ميزات إضافية لتصحيح الأخطاء طالما أنك تحافظ على إعدادات تحسين برنامج التحويل البرمجي).
انقر على مدير الإعداد... في مربّع الحوار صفحة الموقع.
الشكل 3: مربّع حوار مدير الإعداد.
في مربّع الحوار "مدير الإعداد"، اختَر القائمة المنسدلة إعداد الحلّ النشط واختَر <جديد...>.
الشكل 4: إنشاء ضبط إصدار جديد.
... وإنشاء عملية ضبط جديدة مستندة إلى PGO.
الشكل 5: مربّع الحوار الخاص بإعدادات الحل الجديد.
لتفعيل الإنشاء في وضع PGO-instrumented حتى تتمكّن من إنشاء ملف شخصي للعبتك، اختَر مبرمَجة من قائمة خيارات إعداد وضع التحسين الموجَّه إلى الملف الشخصي.
الشكل 6: مربّع حوار "خصائص المشروع" الذي يسلّط الضوء على إعدادات PGO.
بالنسبة إلى إعداد الملف الشخصي الإرشادي لتحسين الملفات الشخصية، أدخِل المسار إلى المجلد
لكتابة ملف بيانات الملف الشخصي للمخرجات الأولية على جهاز Android.
يجب أن تكون هذه القيمة عادةً شيئًا مثل /data/data/<package
name>/cache/
، حيث يكون <package name>
هو اسم الحزمة الكامل لملف APK، على سبيل المثال com.google.sample.tunnel.
للحصول على مزيد من المعلومات المعمّقة حول آلية عمل ذلك، يمكنك الاطّلاع على وثائق Clang.
كتابة بيانات الملف الشخصي المستندة إلى أداة PGO على جهازك
عادةً ما تتم كتابة بيانات PGO على الجهاز بواسطة نظام قياسات PGO عند الخروج من العملية. على أجهزة Android، لا يتم الخروج من التطبيقات، ويتم إنهاؤها دائمًا. ويعني هذا أنّ وظيفة "الكتابة على القرص" التلقائية لا يتم تشغيلها مطلقًا، ما يتطلّب من تطبيقك كتابة بيانات PGO يدويًا.
يجب تسمية تطبيقك صراحةً بـ __llvm_profile_write_file
لكتابة بيانات الملف الشخصي. ولا يتوفر هذا الرمز إلا عند إنشاء إصدار مستند إلى PGO. لتسهيل الأمر، نقترح استخدام النمط التالي عند
إعادة توجيه نموذج البيان __llvm_profile_write_file
.
#ifdef PGO_INSTRUMENT
extern "C" int __llvm_profile_write_file(void);
#else
extern "C" int __llvm_profile_write_file(void) { return 0; }
#endif
يؤدي استدعاء هذه الدالة إلى كتابة بيانات الملف الشخصي إلى المجلد الذي حددته سابقًا.
إجراء تشغيل الملف الشخصي
لإنشاء الملف الشخصي، يتم تشغيل حزمة APK التي تم إنشاؤها باستخدام أداة PGO على الجهاز المستهدف. بعد تطبيق الرمز البرمجي بشكل يرضيك، وتشغيل الطلب إلى دالة __llvm_profile_write_file
، سيكتب تطبيقك بيانات الملف الشخصي في مساحة التخزين.
في هذه المرحلة، انسخ الملفات الشخصية مرة أخرى من الجهاز لاستخدامها من قبل المحول البرمجي.
تجهيز بيانات الملف الشخصي لاستخدامها بواسطة المحول البرمجي
عند استخدام أداة سطر الأوامر llvm-profdata
بشكل منفصل، والتي يتم شحنها كجزء من
Clang/LLVM في Android NDK، يتم استخدام هذه الأداة لإعداد ملفات بيانات الملف الشخصي ليستخدمها برنامج التحويل البرمجي أثناء التحسين الذي يتم توجيهه إلى الملف الشخصي في أحد الإصدارات.
وتُنفِّذ AGDE هذه الخطوة تلقائيًا بالنيابة عنك من خلال دمج أي ملفات بيانات ملف شخصي أضفتها إلى مشروعك معًا، واستخدامها عند ضبط إعداد وضع التحسين الموجَّه إلى الملف الشخصي في صفحات موقع المشروع على محسَّن.
إنشاء مشروعك مع تفعيل ميزة "التحسين الموجهة للملف الشخصي"
الآن وبعد أن التقطت ملفاتك الشخصية وأضفتها إلى مشروعك، يمكن للجامع استخدام هذه البيانات لتحسين تحسين إصدارك.
يمكنك إنشاء إعدادات مشروع جديدة للإصدار PGO-Optimized Build بحيث لا تستخدم هذا الوضع إلا عند الحاجة إليه.
الشكل 7: إنشاء إعدادات جديدة للإصدار PGO-Optimized.
اضبط إعداد وضع التحسين الموجَّه إلى الملف الشخصي في صفحات موقع المشروع على محسَّن.
الشكل 8: ضبط وضع تحسين PGO على "محسَّن".
انسخ الملفات من الجهاز وأضفها إلى مشروعك في Solution Explorer. يتم اختيار ملفات بيانات الملف الشخصي هذه بواسطة المحول البرمجي في المرة التالية التي تنشئ فيها ضبط PGO-Optimized، ويتم استخدامها لضبط المحوِّل البرمجي لتحسين التعليمات البرمجية.
يمكنك نسخ ملفات بيانات الملف الشخصي إلى مشروعك من الجهاز باستخدام أداة ADB، أو باستخدام Android Device Explorer.
استخدام ميزة "التحسين الموجّه إلى الملف الشخصي" خارج AGDE
إذا كنت تستخدم نظام إصدار غير متوافق مع AGDE، قد تحتاج إلى تعديل إصدارك مباشرةً. تتناول مستندات
Clang مفاتيح التبديل اللازمة، وهي -fprofile-generate
و
-fprofile-use
.
إذا كنت تستخدم محرك برمجيات وسيطة في لعبتك، راجِع مستندات المحرك لمعرفة طريقة تفعيل PGO (إذا كان متوافقًا).