مقالات باگتو

عملکرد ابزار .NET Object Allocation
عملکرد ابزار .NET Object Allocation

 

با انتشارVisual Studio 16.10موتور آنالیز جدیدی برایPerformance Profilerبا.NET Object Allocation Toolارائه می‌شود، اولین ابزاری است که روی آن نصب می‌شود.این ابزار دارای برخی ویژگی‌های جدید و افزایش قابل‌توجه عملکرد است.با اَپC #و دادن یک شات (shot)به آن،allocationهای جعلی را شناسایی کرده و با حذف آنها سرعت اَپ خود را افزایش دهید.

 .NET Object Allocation Toolدر حال حاضرSource Link را پشتیبانی می‌کند که به شما اجازه می‌دهد هنگام رفتن به سورس، همه سورس فایل‌ها را دریافت کنید و به شما این امکان را می‌دهد که ببینیدallocationها دقیقاً کجا در حال وقوع هستند حتی اگر در کد شما نباشند.

 

SourceLink

 در حال حاضر Search پیشنهادهای autocomplete (کاملاً خودکار) برای کمک به شما در پیداکردن و بررسی سریع‌تر گزارش‌ها دارد.

AutoComplete
 

 

 

ما اطلاعات بیشتری را بهCollections view اضافه کرده و تلاش می‌کنیم آگاهی و دانش بیشتری در موردNET Garbage Collector (GC). ارائه دهیم. حالا می‌توانید ببینید که چرا یکGC همراه با آمارهای مربوطه رخ‌داده است (مانند: چه مدت طول کشید، اندازه heap ، و چه تعداد شی جمع‌آوری شده).

Collected

 

یکی از زمینه‌هایی که بیشترین انرژی را صرف آن کرده‌ایم، بهبود عملکرد.NET Object Allocation Toolاست.به این منظور، بر روی دو کار بزرگ کهtoolانجام می‌دهد تمرکز کرده‌ایم:

  1. ساخت مدل تخصیص اولیه که برای جستجوی تخصیص‌ها برایveiwها  استفاده می‌شود.
  2. ساخت درخت فراخوانی که برای نشان‌دادن درخت فراخوانی، توابع وbacktrace view (پس‌گرد) استفاده می‌شود.

همان‌طور که در جدول زیر مشاهده می‌کنید، ابزار در آخرین ورژنVisual Studioدارای سرعت بیشتری است.

 

Build Call TreeBuild Allocation ModelASP.NET Scenarios App
295s -> 24s

 

~12x faster

3.5s -> 2.2s

 

~1.5x faster

Small trace (500K allocations)
695 -> 58s

 

~11x faster

6.9s -> 3.6s

 

~2x faster

Medium trace (1M allocations)
1556s -> 109s

 

~14x faster

22.5s -> 8.4s

 

~2.5x faster

Large trace (3.1M allocations)

 

 

همان‌طور که می‌بینید این نسخه به طور قابل‌توجهی سرعت بیشتری دارد، ورژن جدید حتی تجزیه‌وتحلیل بیشتری انجام می‌دهد بااین‌وجود بازهم سریع‌تر از ورژن قبلی است. ما این تغییرات را به سایر ابزارهای  Performance Profiler برای Visual Studio 2022  گسترش می‌دهیم و ایده‌های دیگری در مورد چگونگی ذخیره زمان بیشتر داریم. امیدوار باشید که تجربه پروفایلینگ خود را سریع‌تر کسب کنید.


تگ‌ها
اشتراک

0 نظرات


;