PHP 5.6.0 released

چگونگی استفاده از PHP-APD در اسکریپت

  1. به عنوان اولین خط اسکریپت خود تابع apd_set_pprof_trace() را برای شروه پیگیری فراخوانی کنید:

    apd_set_pprof_trace();

    می‌توانید این خط را در هر کجای اسکریپت خود وارد کنید، اما اگر پیگیری را در ابتدای اسکریپت شروع ننمایید داده‌های پروفایل از بین می‌رود که در غیر این صورت تبدیل به یک گلوگاه کارآیی می‌شود.

  2. حال اسکریپت خود را اجرا کنید. خروجی در apd.dumpdir/pprof_pid.ext نوشته خواهد شد.

    Tip

    اگر شما از نسخه CGI PHP استفاده می‌کنید، باید پرچم '-e' برای فعال نمودن اطلاعات بیشتر برای کارکرد درست apd وارد کنید. برای مثال: php -e -f script.php

  3. برای نشان دادن داده قالب‌بندی شده پروفایل دستور pprofp را به همراه گزینه‌های نمایش و مرتب‌سازی انتخابی صادر کنید. خروجی قالب‌بندی شده به صورت زیر خواهد بود:

    bash-2.05b$ pprofp -R /tmp/pprof.22141.0
    
    Trace for /home/dan/testapd.php
    Total Elapsed Time = 0.00
    Total System Time  = 0.00
    Total User Time    = 0.00
    
    
    Real         User        System             secs/    cumm
    %Time (excl/cumm)  (excl/cumm)  (excl/cumm) Calls    call    s/call  Memory Usage Name
    --------------------------------------------------------------------------------------
    100.0 0.00 0.00  0.00 0.00  0.00 0.00     1  0.0000   0.0009            0 main
    56.9 0.00 0.00  0.00 0.00  0.00 0.00     1  0.0005   0.0005            0 apd_set_pprof_trace
    28.0 0.00 0.00  0.00 0.00  0.00 0.00    10  0.0000   0.0000            0 preg_replace
    14.3 0.00 0.00  0.00 0.00  0.00 0.00    10  0.0000   0.0000            0 str_replace
    

    گزینه -R در این مثال جدول پروفایل را به همراه مقدار زمان واقعی صرف شده برای هر تابع دلخواه را نشان می‌دهد. ستون "cumm call" نشان‌دهنده تعداد دفعات فراخوانی هر تابع و ستون "s/call" تعداد ثانیه مورد نیاز برای فراخوانی تابع را به صورت متوسط نشان می‌دهد.

  4. برای تولید درخت فراخوانی فایل قابل استفاده در KCacheGrind فرمان pprof2calltree را صادر کنید.

add a note add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top