این دستور dprofppp است که می تواند در ارائه دهنده هاست رایگان OnWorks با استفاده از یکی از چندین ایستگاه کاری آنلاین رایگان ما مانند Ubuntu Online، Fedora Online، شبیه ساز آنلاین ویندوز یا شبیه ساز آنلاین MAC OS اجرا شود.
برنامه:
نام
dprofpp - نمایش داده های پروفایل پرل
خلاصه
dprofpp [-a|-z|-l|-v|-U] [-d] [-s|-r|-u] [-q] [-F] [-I|-E] [-O CNT] [-A] [-R] [-S] [-g
زیرروال] [-G [-P]] [-f ] [مشخصات]
dprofpp -T [-F] [-g زیرروال] [مشخصات]
dprofpp -t [-F] [-g زیرروال] [مشخصات]
dprofpp -G [-P] [مشخصات]
dprofpp -p خط [-Q] [گزینه های دیگر]
dprofpp -V [مشخصات]
شرح
La dprofpp دستور داده های نمایه تولید شده توسط یک نمایه ساز را تفسیر می کند
توسعه دهنده::DProf profiler. Dprofpp فایل را می خواند tmon.out و 15 زیربرنامه را نمایش دهید
که بیشترین زمان را مصرف می کنند. به طور پیش فرض زمان برای هر زیربرنامه داده شده است
منحصر به زمان برنامه های فرعی فرزندشان.
برای پروفایل یک اسکریپت پرل، مفسر پرل را با عبارت اجرا کنید -d تعویض. بنابراین به نمایه
خط test.pl با Devel::DProf از موارد زیر استفاده کنید:
$ perl5 -d:DProf test.pl
سپس dprofpp را برای تجزیه و تحلیل پروفایل اجرا کنید. خروجی dprofpp به پرچمهایی بستگی دارد
برنامه و نسخه پرل مورد استفاده شما.
$ dprofpp -u
کل زمان سپری شده = 1.67 ثانیه
زمان کاربر = 0.61 ثانیه
انحصاری تایمز
%Time Seconds #Calls sec/Call Name
52.4 0.320 2 0.1600 main::foo
45.9 0.280 200 0.0014 main::bar
0.00 0.000 1 0.0000 DynaLoader::واردات
0.00 0.000 1 0.0000 اصلی::باز
ابزار dprofpp همچنین می تواند نمایه ساز را قبل از تجزیه و تحلیل داده های نمایه اجرا کند. بالا
دو دستور را می توان با یک دستور dprofpp اجرا کرد.
$ dprofpp -u -p test.pl
برای توضیح نمایه خام، با "PROFILE FORMAT" در Devel::DProf مشورت کنید.
OUTPUT
ستون ها عبارتند از:
٪زمان
درصد زمان صرف شده در این روال.
# تماس می گیرد
تعداد تماسها با این روال.
ثانیه/تماس
میانگین تعداد ثانیه در هر تماس به این روال.
نام
نام روال
CumulS
زمان (بر حسب ثانیه) صرف شده در این روال و روتین های فراخوانی شده از آن.
ExclSec
زمان (بر حسب ثانیه) صرف شده در این روال (بدون احتساب موارد فراخوان شده از آن).
Csec/c
میانگین زمان (بر حسب ثانیه) صرف شده در هر تماس این روال (از جمله تماسهایی که تماس گرفته شده است).
از آن).
OPTIONS
-a مرتب سازی بر اساس حروف الفبا بر اساس نام های زیر برنامه.
-d هر نوع مورد استفاده را معکوس کنید
-A شمارش زمان برای زیربرنامه خودکار بارگذاری شده به عنوان زمان برای *:: AUTOLOAD. در غیر این صورت زمان
برای بارگذاری خودکار به عنوان زمان خود زیربرنامه محاسبه می شود (هیچ راهی برای انجام آن وجود ندارد
زمان بارگذاری خودکار را از زمان اجرا جدا کنید).
این با پرل های جدیدتر بی ربط خواهد بود. آنها به "Devel::DProf" اطلاع خواهند داد
چه زمانی "AUTOLOAD" به زیربرنامه واقعی تغییر می کند، بنابراین یک آمار جداگانه برای
صرف نظر از اینکه این گزینه تنظیم شده باشد، "AUTOLOAD" جمع آوری می شود.
-R زیربرنامه های ناشناس تعریف شده در همان بسته را جداگانه بشمارید.
-E (پیشفرض) نمایش تمام زمانهای زیربرنامه به استثنای زمانهای فرعی فرزند.
-F اگر dprofpp گزارش دهد که نمایه وجود دارد، تولید مُهرهای زمانی خروج جعلی را اجباری کنید
درهم ریخته این تنها زمانی مفید است که dprofpp تشخیص دهد که نمایه به دلیل مخدوش است
به مُهرهای زمانی خروج از دست رفته اگر این کار را انجام دهید، خودتان هستید. با BUGS مشورت کنید
بخش.
-I نمایش تمام زمانهای زیربرنامه شامل زمانهای زیربرنامه کودک.
-l مرتبسازی بر اساس تعداد تماسهای زیربرنامهها. این ممکن است به شناسایی نامزدها کمک کند
خط کشی
-O CNT
فقط نمایش CNT زیر برنامه ها پیش فرض 15 است.
-p خط
به dprofpp می گوید که باید اسکریپت داده شده را نمایه کند و سپس نمایه آن را تفسیر کند
داده ها. دیدن -Q.
-Q با استفاده از -p برای اینکه به dprofpp بگوییم که پس از نمایه سازی اسکریپت، بدون تفسیر از آن خارج شود
داده.
-q سرصفحه ستون ها نمایش داده نشود.
-r نمایش زمان های واقعی سپری شده به جای زمان های کاربر+سیستم.
-s نمایش زمان سیستم به جای زمان کاربر + سیستم.
-T نمایش درخت فراخوانی زیر روال به stdout. آمار زیربرنامه نمایش داده نمی شود.
-t نمایش درخت فراخوانی زیر روال به stdout. آمار زیربرنامه نمایش داده نمی شود.
هنگامی که یک تابع چندین بار متوالی در همان سطح فراخوانی فراخوانی می شود
یک بار با تعداد تکرار نمایش داده می شود.
-S نمایش دادن با هم ادغام شدند زیربرنامه فراخوانی درخت به stdout. آمار برای هر کدام نمایش داده می شود
شاخه درخت
وقتی تابعی چندتایی (نه لزوما متوالی) بار در همان
سپس همه این فراخوان ها به یک شاخه از سطح بعدی می روند. تکرار شمارش است
خروجی همراه با ترکیبی از زمان فراگیر، انحصاری و کودکان.
شاخه ها با توجه به زمان فراگیر مرتب می شوند.
-U دسته بندی نکنید. نمایش به ترتیب یافت شده در نمایه خام.
-u نمایش زمان کاربر به جای زمان کاربر + سیستم.
-V شماره نسخه dprofpp را چاپ کنید و از آن خارج شوید. اگر یک نمایه خام پیدا شد، پس آن است
متغیر XS_VERSION نیز نمایش داده خواهد شد.
-v مرتب سازی بر اساس میانگین زمان صرف شده در برنامه های فرعی در طول هر تماس. این ممکن است به شناسایی کمک کند
نامزدهای درون نویسی
-z (پیش فرض) مرتب سازی بر اساس مقدار کاربر + زمان استفاده از سیستم. چند خط اول باید نشان داده شود
شما کدام زیرروال ها بیشترین زمان را مصرف می کنند.
-g "زیر برنامه"
زیربرنامه ها را نادیده بگیرید به جز «زیر روال» و هر آنچه از آن نامیده می شود.
-G
"گروه" همه تماس های مطابق با الگو را با هم جمع کنید. به عنوان مثال این می تواند باشد
برای گروه بندی تمام تماس های مجموعه ای از بسته ها استفاده می شود
-G "(package1::)|(package2::)|(package3::)"
یا گروه بندی زیربرنامه ها بر اساس نام:
-G "getNum"
-P با -G برای جمعآوری "Pull" همه تماسهایی که با -G مطابقت نداشتند استفاده میشود.
-f
همه تماس های مطابق با الگو را فیلتر کنید.
-h نمایش راهنمای مختصر و خروج.
-H نمایش راهنما طولانی و خروج.
محیط زیست
متغیر محیطی DPROFPP_OPTS می توان به رشته ای که شامل گزینه هایی برای
dprofpp. در صورت تمایل می توانید از این استفاده کنید -I روی -E یا اگر بخواهی -F در همه زمان ها
این نسبتاً تنبل اضافه شد، بنابراین برخی از عوارض جانبی نامطلوب وجود دارد. گزینه ها در
خط فرمان باید گزینههای موجود در DPROFPP_OPTS را لغو کند--اما در این مورد روی آن حساب نکنید
نسخه.
با استفاده از خدمات onworks.net از dprofppp آنلاین استفاده کنید