این دستور tau_reduce است که می تواند در ارائه دهنده هاست رایگان OnWorks با استفاده از یکی از چندین ایستگاه کاری آنلاین رایگان ما مانند Ubuntu Online، Fedora Online، شبیه ساز آنلاین ویندوز یا شبیه ساز آنلاین MAC OS اجرا شود.
برنامه:
نام
tau_reduce - قوانین ابزار دقیق انتخابی را بر اساس داده های پروفایل ایجاد می کند
خلاصه
tau_reduce {-f نام فایل} [-n] [-r نام فایل] [-o نام فایل] [-v] [-p]
شرح
tau_reduce برنامهای است که مجموعهای از قوانین تعریفشده توسط کاربر را در یک pprof dump اعمال میکند.
فایل (pprof -d) به منظور ایجاد یک فایل انتخابی که شامل یک لیست حذف برای
اجرای انتخابی برای TAU کاربر باید نام فایل دامپ pprof را مشخص کند
که این برنامه از آن استفاده خواهد کرد. این کار با پرچم -f نام فایل انجام می شود. اگر فایل قانون وجود ندارد
مشخص شده، سپس یک قانون پیش فرض واحد بر روی فایل اعمال می شود. این قانون این است: numcalls
> 1000000 و usecs/call < 2، که همه روال هایی را که حداقل فراخوانی شده اند حذف می کند
1,000,000 بار و میانگین کمتر از دو میکروثانیه در هر تماس. اگر یک فایل قانون باشد
مشخص شده است، پس این قانون اعمال نمی شود. اگر هیچ فایل خروجی مشخص نشده باشد، نتایج
روی صفحه چاپ خواهد شد
قوانین
کاربران می توانند مجموعه ای از قوانین را برای اعمال tau_reduce مشخص کنند. قوانین باید در آن مشخص شود
یک فایل جداگانه، یک قانون در هر خط، و نام فایل باید با علامت مشخص شود
گزینه مناسب در خط فرمان دستور زبان یک قانون این است: [GROUPNAME:]FIELD
شماره اپراتور GROUPNAME به دنبال دو نقطه (:) اختیاری است. اگر شامل شود،
قانون فقط برای روتین هایی اعمال می شود که عضوی از گروه مشخص شده هستند. فقط یکی
نام گروه را می توان برای هر قانون اعمال کرد و یک قانون باید از یک نام گروه پیروی کند. اگر فقط الف
نام گروه داده می شود، سپس یک خطای فیلد ناشناخته برگردانده می شود. در صورت تمایل
اثر این است که همه روال هایی را که به یک گروه خاص تعلق دارند حذف می کند، سپس یک قانون بی اهمیت،
مانند GROUP:numcalls > -1 ممکن است اعمال شود. اگر یک نام گروه داده شود، اما داده داده نشده است
حاوی هر گونه داده نام گروه باشد، سپس یک پیغام خطا داده خواهد شد، اما قانون خواهد بود
همچنان تا تاریخ بدون توجه به مشخصات نام گروه اعمال شود. FIELD هر یک از موارد است
ویژگی های روتین در جدول زیر فهرست شده است:
معنی نام ویژگی
numcalls تعداد دفعاتی که روال فراخوانی می شود
numsubrs تعداد زیر روال هایی که روتین شامل می شود
درصد درصد کل زمان اجرا
usec زمان اجرای روتین انحصاری، در میکروثانیه
cumusec زمان اجرای روتین فراگیر، در میکروثانیه
count تعداد انحصاری سخت افزار
totalcount شامل تعداد سخت افزار
stddev انحراف استاندارد
usecs/call میکرو ثانیه در هر تماس
شمارش/تماس تعداد سخت افزار در هر تماس
برخی از FIELDS فقط برای فایل های خاصی در دسترس هستند. اگر از شمارنده های سخت افزاری استفاده می شود، پس
usec، cumusec، usecs/per call قابل اجرا نیستند و خطایی گزارش شده است. برعکس است
درست است اگر از داده های زمان بندی به جای شمارنده های سخت افزاری استفاده شود. همچنین، stddev فقط در دسترس است
برای فایل های خاصی که حاوی آن داده ها هستند.
OPERATOR هر یک از موارد زیر است: < (کمتر از)، > (بزرگتر از)، یا = (برابر).
NUMBER هر عددی است.
یک قانون مرکب ممکن است با استفاده از نماد & (و) در بین دو قانون ساده تشکیل شود.
"OR" وجود ندارد زیرا یک قاعده ضمنی یا بین دو قانون ساده جداگانه وجود دارد که هر کدام روشن است
یک خط جداگانه (یعنی قانون ترکیبی usec < 1000 OR numcalls = 1 همان دو است
قوانین ساده "usec < 1000" و "numcalls = 1").
قانون مثال ها
#استخراج همه روتین هایی که عضو TAU_USER هستند و کمتر از آن دارند
#1000 میکروثانیه
TAU_USER:usec < 1000
#تمام روتین هایی که کمتر از 1000 میکروثانیه دارند و هستند را حذف کنید
فقط یکبار تماس گرفت.
usec < 1000 و numcalls = 1
#exclude همه روال هایی که کمتر از 1000 کاربر در هر تماس دارند یا درصد دارند
#کمتر از 5
usecs/call < 1000
درصد < 5
توجه: هر خطی در فایل قانون که با # شروع شود، یک خط نظر است. برای وضوح، خالی
خطوط ممکن است در بین قوانین درج شوند و همچنین نادیده گرفته می شوند.
OPTIONS
-f نام فایل نام فایل pprof dump را مشخص کنید
-p تمام توابع را با ویژگی های آنها چاپ کنید
-o نام فایل نام فایل را برای خروجی فایل انتخابی مشخص کنید (پیشفرض: چاپ روی صفحه
-r نام فایل نام فایل را برای فایل قانون مشخص کنید
-v حالت پرمخاطب (برای هر قانون، قانون و همه توابع حذف شده را چاپ کنید)
مثال ها
برای چاپ روی صفحه فهرست ابزار دقیق انتخابی فایل dump paraprof
app.prf با استفاده از قوانین انتخاب پیشفرض:
tau_reduce -f app.prf
برای ایجاد یک فایل انتخابی، app.sel، از فایل dump paraprof app.prf با استفاده از قوانین
مشخص شده در foo.rlf use:
tau_reduce -f app.prf -r foo.rlf -o app.sel
با استفاده از خدمات onworks.net از tau_reduce به صورت آنلاین استفاده کنید