آشنایی با Task Manager ویندوز و آمار غیر قابل اطمینان
آیا تاکنون احساس کردهاید به رغم استفاده از 100 درصدی از توان پردازشی پردازنده سیستم شما، سرعت انجام کارها بسیار پایین است؟ باید بگوییم شما تنها نیستید و نمیتوان به Task Manager ویندوز اعتماد کرد.
اگر از برنامه Task Manager ویندوز برای پی بردن به وضعیت پردازنده و شدت استفاده از آن استفاده میکنید، باید بگوییم اطلاعاتی که نمایش دهد به هیچ عنوان دقیق نیست. معیارهایی که همه ما برای پی بردن به «شدت استفاده از پردازنده» (CPU utilization) استفاده میکنیم عمیقاً گمراه کننده هستند و هر ساله بدتر هم میشود. اما شدت استفاده از پردازنده چیست؟ پردازنده سیستم شما تا چه اندازه بار کاری دارد؟ خب باید بگوییم آنچه که در Task Manager ویندوز به عنوان شدت استفاده از پردازنده نمایش داده میشود، هیچ یک از اینها نیست. این مسئله در باره همه ما و تمامی برنامههای «پایش کارایی» (Performance Monitoring) صدق میکند.
شاید تصور کنید نمایش شدت استفاده 90 درصدی پردازنده در Task Manager به این معنا باشد:
اما در حقیقت بیشتر به شکل زیر نزدیک است:
در شکل بالا Stalled به معنی متوقف شدن پردازنده و پیشروی نکردن اجرای دستورالعمل است که علت اصلی آن منتظر ماندن پردازنده برای انجام عملیات خواندن-نوشتن حافظه اصلی (RAM) است. در شکل بالا نسبت زمان فعالیت پردازنده (Busy) به زمان متوقف شدن پردازنده (Stalled) بسیار به عملکرد در دنیای واقعی نزدیک است. در حقیقت پردازنده سیستم شما وقت بسیار زیادی متوقف میشود اما شما از آن بی اطلاع هستید. اما این موضوع چه اهمیتی برای شما دارد؟ پی بردن به شدت بروز وقفه در کار پردازنده میتواند بهینه سازی کارایی را بر کاهش تعداد خطوط کد منبع برنامهها یا کاستن تعداد مراجعات به حافظه متمرکز کند.
شدت استفاده از پردازنده به چه معنا است؟
معیاری که شدت استفاده از پردازنده خوانده میشود، در حقیقت زمان بلا استفاده نبودن پردازنده است، به عبارتی دیگر مدت زمانی که پردازنده مشغول اجرای Thread بلا استفادگی سیستم عامل نیست. هسته سیستم عامل شما (هرچه که باشد) به طور مکرر وضعیت آن را پایش میکند. اگر یک Thread غیر بلا استفادگی اجرا شود، 100 میلی ثانیه بعد، هسته سیستم استدلال میکند پردازنده به طور کامل استفاده شده است.
اما مشکل کجاست؟
امروزه پردازندهها بسیار سریعتر از حافظه اصلی هستند و منتظر ماندن برای حافظه، از آنچه که شدت استفاده از پردازنده خوانده میشود پیشی میگیرد. هنگامی که شدت استفاده از پردازنده شدیداً بالا نمایش داده میشود (شکل 1)، ممکن است تصور کنید پردازنده دچار گرفتگی (Bottleneck) شده اما در حقیقت این حافظه DRAM است که باعث بروز آن شده است.
آنچه که گفته شد روز به روز در حال بدتر شدن است. برای مدت طولانی سازندگان فرکانس پردازندهها را بسیار سریعتر از پیشرفت تأخیر حافظههای DRAM افزایش میدادند. نزدیک سال 2005 با رسیدن پردازندهها به فرکانس 3 گیگاهرتز، این رویه تقریباً متوقف شد و پس از آن پیشرفت پردازندهها بر افزایش تعداد هستههای پردازشی، بهکارگیری تکنیکهای Multithreading و بیش از یک سوکت پردازنده متمرکز بود که همه اینها بر شدت تقاضا از بخش حافظه افزود. سازندگان پردازنده تلاش کردند از طریق تعبیه حافظههای کش بیشتر و هوشمند، و همچنین گذرگاه و رابط حافظه سریعتر، از شدت گرفتگی کارایی ناشی از حافظه بکاهند. علی رغم همه آنچه که گفته شد، هنوز هم پردازندههای ما معمولاً دچار پدیده توقف میشوند.
با استفاده از پایش کنندههای کارایی (PMC) نظیر perf در سیستم عامل لینوکس که در اصل یک شمارنده است، میتوان به شدت استفاده از پردازنده پی برد، برای نمونه تصویر زیر استفاده کلی سیستم ظرف 10 ثانیه را نشان میدهد.
معیار کلیدی که اینجا شاهد آن هستیم، تعداد دستورالعملهای قابل اجرا به ازای هر سیکل (IPC) است که نشان میدهد به طور متوسط در هر سیکل ساعت پردازنده چند دستورالعمل اجرا میشود. اگر ساده بخواهیم بگوییم، IPC بالاتر ایده آل تر است. در نمونه بالا 0.78 ثانیه بیانگر شدت استفاده 78 درصد است که ظاهراً بد نیست. اما هنگامی که متوجه شوید اوج سرعت پردازنده در IPC 4.0 است، دیگر مطلوب به نظر نمیرسد. IPC 4.0 به عنوان 4 مسیره نیز شناخته میشود که به مسیر واکشی و رمزگشایی دستورالعملها اشاره دارد. به عبارتی دیگر به معنای توانایی پردازنده در اتمام چهار دستورالعمل به ازای هر سیکل است، بنابراین IPC 0.78 در یک سیستم با 4 مسیر به این معنی است که پردازنده در 19.5 درصد حداکثر سرعت خود کار میکنند. پردازندههای جدیدتر اینتل دارای 5 مسیر هستند.
تفسیر IPC
اگر IPC کمتر از 1.0 باشد، به احتمال زیاد سیستم با توقف کار پردازنده ناشی از حافظه مواجه است. در این صورت استراتژیهای بهبود کارایی میتواند شامل کاستن از شدت مراجعه به حافظه، بهبود بهره گیری از حافظه کش و موقعیت حافظه باشد. در بخش سخت افزار نیز میتوان از پردازندههای مجهز به حجم بیشتری حافظه کش، حافظه و گذرگاه سریعتر استفاده کرد.
در صورتی که IPC بیشتر از 1 باشد، احتمالاً با افزونگی دستورالعملها مواجه هستیم، در این صورت استراتژیهای بهبود IPC میتواند شامل تلاش برای کاستن از حجم کدهای اجرایی، حذف کارهای غیر ضروری و مراجعات به حافظه کش باشد. در بخش سخت افزار میتوان از پردازندههای با فرکانس بالاتر و تعداد بیشتری هسته پردازشی با توانایی اجرای تعداد بیشتری Thread استفاده کرد.
- سایر علل گمراه کننده بودن شدت استفاده از پردازنده
- این فقط وقفههای ناشی از حافظه نیست که باعث گمراه کننده بودن شدت استفاده از حافظه میشود. از دیگر عوامل میتوان موارد زیر را برشمرد:
- تغییر فرکانس پردازنده بر اثر بالا رفتن دما
- فناوریهای بوست باعث شدهاند فرکانس متغیر باشد
- هسته سیستم عامل به صورت پویا فرکانس را تغییر میدهد
سخن پایانی
آنچه که شدت استفاده از پردازنده خوانده می شود و توسط برنامه هایی چون Task Manager ویندوز نمایش داده می شود، بسیار گمراه کننده است، چراکه وقفه های رخ داده در کار پردازنده را نیز به عنوان انجام کار در نظر می گیرد. شاید نیاز باشد سازندگان سیستم عامل و همچنین برنامه های پایش کارایی، به معیارهای تازه ای چون IPC روی بیاورند تا به طور دقیق تر بازتاب دهنده وضعیت پردازنده باشد.
منبع: شهر سخت افزار
قیمت گوشی Galaxy S23 افشا شد، از 799 دلار به بالا

سامسونگ در هفتههای آینده از نسل جدید گوشیهای پرچمدار خود رونمایی خواهد کرد. سری Galaxy S23 در سه...
ترکیب فناوری و مد؛ گوشواره های هوشمند Nova ایرباد هم هستند

ایربادها را میتوان با طراحیها و اندازههای مختلف ساخت. انعطافپذیری این محصولات باعث شده تا بسیاری...
شکست آیفون 14 پرو مکس از گوشی شیائومی 13 پرو در بنچمارکهای گیمینگ

به تازگی بنچمارکهای جدیدی از عملکرد گیمینگ جدیدترین گوشیهای پرچمدار منتشر شده که از برتری تراشه ا...
منتظر گوشی Galaxy S23 در روز 12 بهمن باشید

چندی پیش یکی از وبسایتهای سامسونگ به اشتباه تاریخ رویداد Galaxy Unpacked بعدی را اعلام کرد و روز گذ...
تعرفه واردات گوشی هوشمند بالای 600 دلار به 15 درصد افزایش مییابد

به نظر میآید تعرفه واردات گوشی هوشمند در سال آینده دستخوش تغییراتی خواهد شد. براساس لایحه بودجه سال...
مانیتور گیمینگ Acer Predator XB273U F معرفی شد؛ رزولوشن 2K با نرخ نوسازی 360 هرتز

طبق گزارشهای اخیر، امروز مانیتور گیمینگ Acer Predator XB273U F با رزولوشن 2K و نرخ نوسازی 360 هرتز...
AMD با دست پر به نمایشگاه CES 2023 میآید؛ قویترین پردازنده گیمینگ برای لپ تاپ در کنار کارتهای گرافیک RDNA3

به نظر میآید AMD با دست پر به استقبال از نمایشگاه CES 2023 میرود. پردازندههای Zen 4 با کش 3D V-Ca...
وزیر ارتباطات زمان اتصال پیام رسان های داخلی به یکدیگر را اعلام کرد

وزیر ارتباطات با اشاره به تعدد پیامرسانهای داخلی اعلام کرده که این وزارتخانه در تلاش است تا موجبات...
پردازنده لپ تاپ Core i9-13980HX با ۲۴ هسته پردازشی و سرعت کلاک 5.6 گیگاهرتز؛ سورپرایز جدید اینتل

پردازندههای لپ تاپ سری Raptor Lake-HX شرکت اینتل قرار است در نمایشگاه CES 2023 رونمایی شوند. این سر...
یک هزار پروژه رمزارز تعطیل شد، ضربه شدید کاهش قیمتها به صنعت ارزهای دیجیتال

پلتفرم تجزیهوتحلیل دادههای بلاک چین Statista در تازهترین گزارش خود به وضعیت نامناسب بازار ارزهای...
افشای مشخصات اولین لپ تاپ تاشوی سامسونگ با نمایشگر OLED

به تازگی جزئیات جدیدی از اولین لپ تاپ تاشوی سامسونگ با نمایشگر OLED به بیرون درز کرده است. به نظر می...
افشای مشخصات و قیمت پردازنده های Ryzen 9 7900 و Ryzen 7 7700 توسط لنوو

ظاهراً لنوو تصمیم گرفته از پردازندههای Ryzen 9 7900 و Ryzen 7 7700 در کامپیوترهای آماده خود استفاده...