التحسين التلقائي الموجه للملاحظات (12 أو أعلى)

تم تقديم نظام Android في Android 12، وهو يدعم تحسين وحدات Android الأصلية التي تحتوي على قواعد إنشاء مخطط باستخدام التحسين التلقائي الموجه للملاحظات (AutoFDO) . AutoFDO هي تقنية تحسين تعتمد على أخذ العينات. يلتقط AutoFDO سلوك وقت التشغيل لثنائيات النظام، مما يمكّن المترجمين من إجراء تحسينات أفضل للأداء مع تقليل الحجم الثنائي أيضًا. يدعم AutoFDO جمع البيانات من بنيات AArch32 وAArch64، على الرغم من إمكانية استخدام ملفات التعريف عبر البنيات.

AutoFDO هو خليفة التحسين الموجه بالملف الشخصي (PGO) القائم على الأجهزة.

بالمقارنة مع الملفات الشخصية الأخرى القائمة على الأجهزة، يتمتع AutoFDO بهذه المزايا الإضافية:

  • جمع البيانات بشكل غير مزعج: يمكن جمع ملفات تعريف AutoFDO من أجهزة التطوير أو المستخدم دون أي تعديل لبناء القواعد.

  • تمثيل الاستخدام في العالم الحقيقي: يمثل AutoFDO سلوك الاستخدام في العالم الحقيقي بافتراض أن الملفات الشخصية يتم جمعها من أجهزة المستخدم، في حين تمثل الأجهزة PGO عبء عمل التجميع الاصطناعي فقط. ليس من السهل عمومًا إنشاء عبء عمل مجموعة يتوافق تمامًا مع الاستخدام في العالم الحقيقي.

يأتي AOSP مزودًا بملفات تعريف AutoFDO لمعظم المشاريع ذات الأداء الحيوي. تم جمع ملفات التعريف من أجهزة الهاتف والأجهزة اللوحية، وهي تمثل أنماط الاستخدام العامة الخاصة بها. توجد الملفات الشخصية ضمن toolchain/pgo-profiles/sampling . يتم تمكين AFDO بشكل افتراضي على AOSP.

تمكين AutoFDO لقاعدة إنشاء المخطط

لتمكين AutoFDO لقواعد إنشاء المخطط، قم بإلحاق afdo: true بالمكتبة المشتركة أو القاعدة الثنائية.

جمع الملفات الشخصية

لا يدعم ملف التعريف المجمع مسبقًا المقدم مع AOSP هذه السيناريوهات المحددة:

  • إدراج مشاريع AutoFDO إضافية
  • وجود كود معدل محليا
  • أنماط الاستخدام الفريدة المرتبطة بنظامك

إذا كان لديك أحد هذه السيناريوهات، فيجب عليك جمع ملفات التعريف مباشرة من أجهزة التطوير أو المستخدم.

للحصول على تعليمات مفصلة حول كيفية إعداد أجهزة ARM لتجميع ملفات تعريف AutoFDO، راجع جمع بيانات ETM لـ AutoFDO .

للحصول على معلومات حول كيفية تمكين التجميع التلقائي لملفات تعريف الخلفية ومعالجتها وتحميلها، راجع Profcollect .

تحليل ملفات تعريف AutoFDO

يستخدم Android ملفات تعريف LLVM AutoFDO القياسية. يمكن قراءة ملفات تعريف AFDO باستخدام أداة llvm-profdata الخاصة بـ LLVM. يقوم البرنامج النصي afdo_summary.sh ( toolchain/pgo-profiles/scripts/afdo_summary.sh ) تلقائيًا بإنشاء الوظائف الأكثر تنفيذًا وفقًا لملف تعريف AutoFDO.