رفتار معیارهای خود را با تعیین آرگومان های مختلف برای اجراکننده ابزار دقیق پیکربندی کنید. اینها را می توان در پیکربندی Gradle اعمال کرد یا به طور مستقیم هنگام اجرای ابزار دقیق از خط فرمان اضافه کرد.
برای تنظیم آرگومان های ابزار دقیق هنگام اجرای بنچمارک ها از Android Studio، موارد زیر را انجام دهید:
- با کلیک بر روی Edit و انتخاب پیکربندی مورد نظر برای ویرایش، پیکربندی اجرا را ویرایش کنید.
شکل 1. پیکربندی اجرا را ویرایش کنید. - با کلیک روی
شکل 2. آرگومان ابزار دقیق را ویرایش کنید. در کنار فیلد آرگومان های ابزار دقیق، آرگومان های ابزار دقیق را ویرایش کنید. - روی
شکل 3. آرگومان ابزار دقیق را اضافه کنید. کلیک کنید و آرگومان ابزار دقیق را اضافه کنید.
اضافیTestOutputDir
محل ذخیره گزارشهای معیار JSON و نتایج نمایهسازی در دستگاه را پیکربندی میکند.
- نوع آرگومان: رشته مسیر فایل
- پیشفرضها: دایرکتوری خارجی APK را آزمایش کنید
androidx.benchmark.dryRunMode.enable
به شما امکان می دهد معیارها را در یک حلقه اجرا کنید تا بررسی کنید که آنها به درستی کار می کنند.
این یعنی:
- خطاهای پیکربندی اعمال نمیشوند (مثلاً برای آسانتر کردن اجرای آزمایشهای صحت منظم روی شبیهسازها)
- معیار تنها یک حلقه را اجرا می کند، بدون گرم کردن
- اندازهگیریها و ردیابیها برای کاهش زمان اجرا ثبت نمیشوند
این کار برای توان آزمایشی و اعتبارسنجی منطق معیار بیش از صحت ساخت و اندازهگیری بهینه میشود.
- نوع آرگومان: بولی
- پیش فرض ها به:
false
androidx.benchmark.iterations
تعداد تکرار هدف مبتنی بر زمان را نادیده می گیرد تا به اطمینان از میزان ثابت کار کمک کند. این معمولاً فقط با فعال کردن پروفایل برای کمک به اطمینان از انجام مقدار ثابت کار در یک ردیابی پروفایل هنگام مقایسه اجراها یا اجراهای مختلف مفید است. در سناریوهای دیگر، این احتمالاً دقت یا ثبات اندازهگیریها را کاهش میدهد.
- نوع آرگومان: عدد صحیح
- پیش فرض به: مشخص نشده است
androidx.benchmark.junit4.SideEffectRunListener
اگر کار پسزمینه نامرتبط در حین اجرای معیار اجرا شود، ممکن است نتایج معیارهای متناقضی دریافت کنید.
برای غیرفعال کردن کار پسزمینه در حین محک زدن، نوع آرگومان ابزار listener
را روی androidx.benchmark.junit4.SideEffectRunListener
تنظیم کنید.
- نوع آرگومان: رشته ای
- گزینه های موجود:
-
androidx.benchmark.junit4.SideEffectRunListener
-
- پیش فرض به: مشخص نشده است
androidx.benchmark.output.enable
نوشتن فایل JSON نتیجه در حافظه خارجی را فعال می کند.
- نوع آرگومان: بولی
- پیشفرض به:
true
androidx.benchmark.profiling.mode
امکان گرفتن فایل های ردیابی را در حین اجرای معیارها فراهم می کند. برای گزینه های موجود ، نمایه یک Microbenchmark را ببینید.
- نوع آرگومان: رشته ای
- گزینه های موجود:
-
MethodTracing
-
StackSampling
-
None
-
- پیش فرض برای:
None
androidx.benchmark.suppressErrors
لیستی از خطاهای جدا شده با کاما را می پذیرد تا به هشدار تبدیل شود.
- نوع آرگومان: لیست رشته ها
- گزینه های موجود:
-
DEBUGGABLE
-
LOW-BATTERY
-
EMULATOR
-
CODE-COVERAGE
-
UNLOCKED
-
SIMPLEPERF
-
ACTIVITY-MISSING
-
- پیشفرض به: یک لیست خالی
androidx.benchmark.startupMode.enable (منسوخ شده)
رفتار حلقه را برای پشتیبانی از کدهای محک در هنگام راه اندازی مجدداً پیکربندی می کند. معیارها بدون حلقه گرم کردن برای 10 اندازه گیری اجرا می شوند. برای به حداقل رساندن سربار در میکروبنچمارکها، میانگینگیری حلقه غیرفعال است.
- نوع آرگومان: بولی
- پیش فرض ها به:
false
برای شما توصیه می شود
- توجه: وقتی جاوا اسکریپت خاموش است، متن پیوند نمایش داده می شود
- آرگومان های ابزار دقیق معیار ماکرو
- نمایه یک Microbenchmark
- ایجاد نمایه های پایه {:#creating-profile-rules}