با استفاده از Android GPU Inspector (AGI)، میتوانید پروفایلینگ سیستم را انجام دهید که شامل طیف گستردهای از گزینههای ردیابی و اندازهگیری عملکرد GPU برای برنامه اندروید شما میشود. در مقایسه با ابزارهای پروفایلینگ اندروید استودیو ، AGI بسیاری از این قابلیتها را در یک ابزار ترکیب میکند و سپس پوشش و تحلیل عمیقتری از GPU ارائه میدهد. دادههای پروفایلینگ سیستم موجود شامل موارد زیر است:
- دادههای ردیابی برنامه شامل نشانگرهای ATrace
- دادههای زمانبندی پردازنده و فرآیند
- اطلاعات عملکرد GPU مانند شمارنده، فعالیت و دادههای چرخه عمر
- ردیابی دادهها برای فراخوانیهای API ولکان
- آمار استفاده از حافظه
- آمار مصرف باتری
System Profiler یک کامپوننت AGI است که رابط کاربری و ابزار دقیق را برای پروفایلبندی سیستم در چندین فریم برنامه مدیریت میکند. این کامپوننت بر پایه سیستم ردیابی Perfetto ساخته شده است. برای اطلاعات بیشتر در مورد کامپوننت AGI برای پروفایلبندی فریمهای برنامه به صورت جداگانه، به نمای کلی Frame profiler مراجعه کنید.
شروع کنید
راهنمای سریع AGI نحوه راهاندازی AGI، ثبت پروفایل سیستم و سپس باز کردن فایل ردیابی حاصل را شرح میدهد. بخش بعدی گزینههای پیکربندی را با جزئیات بیشتری شرح میدهد.
گزینههای پروفایلینگ
این بخش گزینههای اصلی موجود هنگام نمایهسازی یک برنامه را شرح میدهد.
تنظیمات برنامه
تنظیمات برنامه ، برنامه اندروید مورد نظر برای اجرا و ردیابی در طول پروفایلینگ سیستم را مشخص میکند. انتخاب یک برنامه اندروید برای ردیابی در طول پروفایلینگ سیستم اختیاری است، اما توصیه میشود زیرا بدون آن، فایل ردیابی حاصل شامل نشانگرهای ATrace و فعالیت GPU برای یک برنامه نخواهد بود.
گزینههای ردیابی
گزینههای ردیابی، دادههای پروفایلینگ مورد نیاز برای جمعآوری را مشخص میکنند. دکمه پیکربندی، منابع داده موجود را نمایش میدهد.
برای به حداقل رساندن تأثیر عملکرد بر دستگاه اندروید خود هنگام پروفایل کردن سیستم، توصیه میکنیم اگر مدت زمان ردیابی را بیش از یک دقیقه تنظیم کردهاید، منابع داده کمتری را انتخاب کنید. با این حال، برای ردیابیهای کمتر از یک دقیقه، میتوانید تمام منابع داده را با حداقل تأثیر انتخاب کنید.
گزینههای پردازنده
گزینه CPU امکان جمعآوری دادههای زمانبندی CPU و پردازشها را از طریق ftrace فراهم میکند. این به شما امکان میدهد ببینید چه پردازش و رشتهای روی هر هسته CPU در حال اجرا است. همچنین میتوانید این گزینهها را فعال کنید:
- فرکانس و حالتهای بیکاری : رویدادهای تغییر فرکانس هسته CPU و حالت بیکاری را جمعآوری میکند، که به شما امکان میدهد نحوه افزایش یا کاهش مقیاس CPU را بر اساس بار بررسی کنید.
- زنجیرههای زمانبندی / تأخیر : دادههای اضافی وضعیت نخ در مورد تأخیرها و پیشدستی زمانبندی نخ را جمعآوری میکند.
- برشهای نخ : نشانگرهای ATrace را در نماهای فرآیند جمعآوری میکند.
گزینههای پردازنده گرافیکی
گزینههای GPU امکان پروفایلبندی میزان استفاده از GPU توسط برنامه شما، مانند جمعآوری دادههای فرکانس GPU و میزان استفاده از حافظه را فراهم میکنند. برای جمعآوری این دادهها، باید در تنظیمات برنامه، برنامهای را برای ردیابی مشخص کنید. این گزینهها شامل موارد زیر هستند:
شمارندهها : نمونههای شمارنده GPU را جمعآوری میکند. این دادهها برای تعیین میزان شلوغی GPU و یافتن گلوگاهها استفاده میشوند، بنابراین توصیه میکنیم این تنظیمات را پیکربندی کنید.
شمارندهها مختص سختافزار هستند. برای مثال، حداقل فرکانس برای جمعآوری نمونه ( Poll Rate ) ممکن است بسته به نوع شمارنده متفاوت باشد. برای اطلاعات مربوط به شمارندههای پشتیبانیشده، به شمارندههای عملکرد GPU مراجعه کنید.
چرخه حیات فریم : رویدادهای SufaceFlinger را ردیابی میکند، که به تعیین نحوه حرکت بافرهای فریم در برنامه، کامپوزیتور و مدیر پنجره شما کمک میکند. این رویدادها به شما امکان میدهند فریمهای از دست رفته برنامه را پیدا کرده و منابع تأخیر را در خط لوله رندر خود شناسایی کنید.
برشهای رندر استیج دادههایی را جمعآوری میکند که به تعیین نحوه استفاده برنامه شما از پردازنده گرافیکی (GPU) کمک میکند.
گزینههای ولکان
گزینههای Vulkan ردیابی فراخوانیهای Vulkan API را فعال میکنند که میتوانند بر اساس نوع تابع فعال شوند. میتوانید از این دادهها برای تعیین سربار CPU ناشی از فراخوانیهای Vulkan API استفاده کنید. این ردیابی، مدت زمان هر فراخوانی تابع را ثبت میکند که هنگام تجزیه و تحلیل دادهها در مسیر رویداد Vulkan ، در بخشهای thread برنامه شما نمایش داده میشود.
گزینههای دیگر
گزینههای اضافی پروفایل سیستم عبارتند از:
حافظه : آمار ضروری استفاده از حافظه را، هم به صورت کلی و هم برای هر فرآیند، جمعآوری کنید.
باتری : آمار باتری را جمعآوری میکند. این میتواند تخمین تقریبی از میزان مصرف برق برنامه شما به شما بدهد.
ردیابی اجباری در یک فایل روی دستگاه : دادههای ردیابی معمولاً هنگام ضبط ردیابی از طریق USB پخش میشوند که کمترین میزان سربار را دارد و امکان ردیابیهای طولانی را فراهم میکند. با این حال، اگر به دلیل تأخیر USB با مشکل مواجه شدید یا دادههای پروفایلینگ از بین رفت، میتوانید این گزینه را برای ذخیره فایل ردیابی روی دستگاه انتخاب کنید که AGI پس از پایان ردیابی آن را دانلود میکند. این کار به فضای کافی در حافظه داخلی دستگاه شما برای ذخیره فایل ردیابی نیاز دارد.
حالت پیشرفته
پیوند «تغییر به حالت پیشرفته» حالت پیکربندی پیشرفته را راهاندازی میکند که به شما امکان میدهد پیکربندی ردیابی Pefetto را که گزینههای پروفایل شما را ذخیره میکند، به صورت دستی ویرایش کنید.
مشاهده و تحلیل نتایج
وقتی یک فایل ردیابی حاوی دادههای پروفایل سیستم را باز میکنید، AGI دادهها را در رابط کاربری System Profiler برای تجزیه و تحلیل نمایش میدهد. برای اطلاعات بیشتر در مورد مشاهده دادهها، به بخش «مشاهده پروفایل سیستم» مراجعه کنید.
این مباحث نحوه تجزیه و تحلیل دادههای پروفایل سیستم با AGI را شرح میدهند:
- زمان پردازش فریم را تجزیه و تحلیل کنید
- تحلیل کارایی حافظه
- تجزیه و تحلیل استفاده از پهنای باند حافظه بافت
- تجزیه و تحلیل استفاده از پهنای باند حافظه vertex
- تجزیه و تحلیل زمانبندی نخها