ابزار profiler در متلب

اجرای متلب پروفایلر
اجرای متلب پروفایلر


در این نوشته قصد دارم درباره ابزار پروفایلر (Profiler) در MATLAB توضیح بدم.

عملیات پروفایل‌کردن روشی‌ست برای این‌که بفهمید برنامه شما بیش‌تر در چه قسمت‌هایی زمان صرف می‌کند.

کاملا واضحه که با این کار می‌توانید متوجه بشوید چه توابعی زمان بیش‌تری برای اجرا صرف می‌کنند و در نتیجه امکان تغییر و بهبود توابع زمان‌بر فراهم می‌شود!

با استفاده از دستور زیر می‌توانید وارد محیط گرافیکی متلب پروفایلر بشید:

profile viewer

در این محیط نام اسکریپت یا تابعی که می‌خواهید آن را از نظر زمانی تحلیل کنید وارد کرده گزینه start profiling را بزنید. بعد از اجرای برنامه گزارش تحلیل زمانی برنامه شما در یک جدول با تفکیک توابع و دستورات آن نمایش داده می‌شود:

اجرای متلب پروفایلر
اجرای متلب پروفایلر

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

در مورد Self Time و Total Time توضیح این‌که ممکن است در داخل یک تابع، تابع دیگری فراخوانی شده‌باشد و لذا زمان صرف شده در این تابع فراخوانی شده در داخل تابع مورد نظر جز Self Time نیست اما در Total Time محاسبه می‌شود.

اگر روی نام هر یک از توابع در جدول کلیک کنید، به جدول دیگری مختص آن تابع دسترسی پیدا می‌کنید که هر یک از دستورات و توابع داخل آن را تحلیل کرده

اگر از ابرزارهای موازی‌سازی متلب در کدتان استفاده کرده‌اید باید از mpiprofile استفاده کنید که فقط در محیط pmode قابل اجراست.

برای اطلاعات بیش‌تر در این زمینه می‌توانید به مستندات متلب در مورد پروفایلر رجوع کنید.