در Android GPU Inspector (AGI)، می توانید نمایه سیستم را در رابط کاربری System Profiler مشاهده و تجزیه و تحلیل کنید. پس از اینکه یک سیستم را نمایه کردید و فایل ردیابی را در AGI باز کردید ، System Profiler دادههای نمایهسازی را در یک جدول زمانی با موارد قابل گسترش که جزئیات بیشتری را نمایش میدهند، نمایش میدهد.
عناصر اصلی UI System Profiler شامل موارد زیر است:
نوار ابزار
جعبه متن فیلتر آهنگ: آهنگ هایی را که در صفحه آهنگ نمایش داده می شوند را فیلتر می کند.
دکمه اطلاعات ( i ): ردیابی و فراداده دستگاه را نمایش می دهد.
دکمه راهنما ( ? ): میانبرهای صفحه کلید و ماوس را نمایش می دهد.
خط زمانی : مدت زمان ردیابی رویدادها را نشان می دهد.
صفحه آهنگ : داده های پروفایل را در رابطه با جدول زمانی نمایش می دهد.
صفحه جزئیات : یک صفحه قابل گسترش که جزئیات یک مورد انتخاب شده را نمایش می دهد.
پروفایل کردن داده ها
در یک فایل ردیابی، داده های پروفایل در رویدادهای دارای مهر زمانی به نام رویدادهای ردیابی ذخیره می شوند. رویدادهای ردیابی از انواع مختلفی از برش ها و شمارنده ها تشکیل شده است. به عنوان مثال، رویدادهای ردیابی CPU شامل برشهای زمانبندی است، در حالی که رویدادهای ردیابی GPU شامل شمارندههای عملکرد GPU و برشهای رشته میشود.
در رابط کاربری نمایهگر سیستم، صفحه آهنگ حاوی رویدادهای ردیابی است که در ردیفهایی به نام آهنگها نمایش داده میشوند که بر اساس جدول زمانی هستند. آهنگهایی از همان نوع در گروههای آهنگ نمایش داده میشوند.
آهنگ های GPU
آهنگ های GPU اطلاعات پروفایل GPU را نمایش می دهند. اینها انواع اصلی تراک GPU هستند:
آهنگ های صف GPU : فعالیت GPU برنامه.
آهنگ های شمارنده GPU : شمارنده های سخت افزاری GPU در فواصل زمانی متناوب نمونه برداری می شوند.
آهنگ رویدادهای Vulkan : رویدادهای مربوط به API Vulkan.
آهنگهای SurfaceFlinger : رویدادهای SurfaceFlinger که نشان میدهند چگونه بافرهای گرافیکی در سیستم حرکت میکنند.
آهنگ های صف GPU
یک GPU بر اساس تعداد صفهای سختافزاری که در طول ردیابی اجرا میشوند، میتواند یک یا چند مسیر GPU Queue داشته باشد. آهنگهای صف GPU حاوی برشهای فعالیت هستند که دوره و نوع کار GPU را نشان میدهند که توسط برنامه شما استفاده شده است.
یک تکه فعالیت حاوی ابردادههایی است که میتوانید آنها را مشاهده کنید، مانند بافر فرمان Vulkan، پاس رندر و بافر فریم که کار را آغاز کردهاند. دسته های Vulkan برای این اشیا در قسمت جزئیات به صورت زیر نمایش داده می شوند:
-
VkCommandBuffer
-
VkRenderPass
-
VkFrameBuffer
میتوانید با استفاده از تابع vkSetDebugUtilsObjectNameEXT
از پسوند VK_EXT_debug_utils
یا تابع vkDebugMarkerSetObjectNameEXT
از پسوند VK_EXT_debug_marker
، به این اشیا نامهای کاربرپسند بدهید، بنابراین میتوانید به راحتی آنها را در ردیابی در کنار دستههایشان شناسایی کنید. هر دو افزونه توسط AGI پیاده سازی شده و در حین ردیابی در دسترس برنامه شما هستند.
آهنگ های شمارنده GPU
شمارنده GPU مقدار شمارنده های عملکرد GPU نمونه برداری شده را در یک بازه دوره ای نمودار می کند. نمودارها تغییراتی را در عملکرد پردازندههای گرافیکی شما در اجزای سختافزاری بین نمونهها نشان میدهند. می توانید از این اطلاعات برای شناسایی تنگناها در استفاده از GPU خود استفاده کنید.
شمارنده های موجود مخصوص سخت افزار هستند. شما می توانید توضیحات مختصری از هر شمارنده را با نگه داشتن نشانگر روی نام آهنگ مشاهده کنید. برای جزئیات، به شمارنده های عملکرد GPU مراجعه کنید.
مسیر رویداد Vulkan
آهنگ رویداد Vulkan رویدادهای Vulkan API را نشان میدهد که در طول ردیابی ثبت شدهاند. انواع رویداد ردیابی عمدتاً رویدادهای ارسال صف هستند (تماسهای vkQueueSubmit
). اگر روی یک رویداد ارسال صف کلیک کنید، AGI برشهای فعالیت GPU که با تماس مرتبط هستند را برجسته میکند. میتوانید از این دادهها برای بررسی کارهای ناهمزمان در صف فراخوانیهای API Vulkan و تأخیر بین CPU و GPU استفاده کنید.
آهنگ های SurfaceFlinger
آهنگهای SurfaceFlinger چرخه حیات بافرهای گرافیکی (هدفهای رندر swapchain یک برنامه) را در حالی که در سیستم حرکت میکنند تا زمانی که نمایش داده شوند، نشان میدهند. رویدادها توسط بافر جمعآوری میشوند تا ردیابی سربار و تأخیر مورد نیاز برای دریافت و ارسال بافرها آسانتر شود.
تعامل با داده های پروفایل
این بخش نحوه تعامل با داده های پروفایل در رابط کاربری System Profiler را شرح می دهد.
سنجاق
میتوانید با استفاده از دکمه پین آهنگها و گروهها را پین کنید.
فروپاشی و گسترش یابد
برخی از آهنگ ها و همه گروه های آهنگ قابل جمع شدن هستند. برخی از گروههای آهنگ در صورت جمعکردن، خلاصهای را نمایش میدهند. به عنوان مثال، هنگامی که گروه آهنگ CPU جمع می شود، مصرف کلی CPU را در یک نمودار نشان می دهد.
بزرگنمایی ضربه بزنید؛
AGI داده های پروفایل را بر اساس سطح بزرگنمایی جمع می کند. هنگامی که برای اولین بار یک فایل ردیابی را باز می کنید ، رابط کاربری System Profiler کل نمایه را در حداکثر سطح کوچکنمایی نمایش می دهد. می توانید با یافتن مناطق مورد علاقه و سپس مشاهده جزئیات، نمایه را بررسی کنید.
همانطور که روی انواع آهنگ های مختلف بزرگنمایی و کوچکنمایی می کنید، آنها انواع مختلفی از داده های پروفایل را نمایش می دهند. به عنوان مثال، آهنگهای CPU در ابتدا برشهای زمانی هر رشته را نمایش میدهند و در نهایت هنگام بزرگنمایی به نمایش دادههای استفاده از هسته CPU تغییر میدهند.
مشاهده جزئیات
میتوانید با انتخاب موارد در صفحه آهنگ، فرادادههای دقیق را در قسمت جزئیات نمایش دهید. اگر یک مورد قابل انتخاب باشد، با نگه داشتن ماوس روی آن مکان نما به یک اشاره گر تغییر می کند و سپس می توانید مورد را انتخاب کنید.
محدوده زمانی را انتخاب کنید
می توانید محدوده زمانی را انتخاب کنید که به شما امکان می دهد ردیابی رویدادها را از مسیرهای مختلف مقایسه کنید. برای انجام این کار، حالت زمان بندی را فعال کرده و سپس برای انتخاب محدوده بکشید. همه چیز خارج از محدوده کم نور می شود و مدت زمان بازه نمایش داده می شود.
همچنین می توانید محدوده زمانی یک برش انتخاب شده را با فشار دادن M
انتخاب کنید. سپس می توانید برای شناسایی رویدادهای مربوط به همان دوره زمانی، در مسیرهای اضافی پیمایش کنید.
میانبرهای ناوبری
میتوانید با کلیدهای WASD
یا با پیمایش و متحرک کردن، آیتمها را در صفحه آهنگ پیمایش کنید. System Profiler از همان میانبرهای صفحه کلید و موس Systrace استفاده می کند. میانبرهای موجود شامل موارد زیر است:
-
W
وS
یاCtrl++
وCtrl+-
برای بزرگنمایی. -
A
وD
یا فلش هایleft
وright
نمای را به چپ و راست حرکت می دهند. -
Q
وE
، یا فلش هایup
وdown
مسیرها را حرکت می دهند. -
shift
نگه داشتن سرعت حرکت ناوبری را افزایش می دهد. -
Ctrl
+scroll روی مورد انتخاب شده زوم می کند. -
F
روی یک مورد انتخاب شده زوم می کند. -
Z
+0
بازنشانی می شود و به طور کامل بزرگنمایی می کند. - اگر VSync در ردیابی موجود باشد،
V
را برجسته میکند. -
M
انتخاب فعلی را با انتخاب محدوده زمانی آن علامت گذاری می کند. -
H
یا?
صفحه کلید میانبر ماوس و صفحه کلید را نشان می دهد.
حالت ناوبری
نوار ابزار حاوی دکمههایی است که بین حالتهای پیمایش جابهجا میشوند، که عملکردی را که هنگام کشیدن آیتمها در صفحه آهنگ انجام میشود، انتخاب میکنند. همچنین می توانید با فشار دادن کلیدهای 1
، 2
، 3
و 4
حالت های پیمایش زیر را انتخاب کنید:
- انتخاب : به موارد انتخاب جعبه بکشید.
- حرکت : برای حرکت و پیمایش مسیرها بکشید. این حالت پیش فرض است.
- بزرگنمایی : برای بزرگنمایی موارد، به صورت عمودی بکشید.
- زمان : برای انتخاب محدوده زمانی بکشید.
همچنین می توانید از حالت های ناوبری با این کلیدهای اصلاح کننده استفاده کنید:
-
Shift+
به کادر انتخاب آیتم ها بکشید. -
Space+
برای حرکت و پیمایش بکشید. -
Ctrl+
برای بزرگنمایی حرکت کنید. -
Ctrl+
را برای انتخاب محدوده زمانی بکشید.