پنجشنبه، ۲۲ مرداد ۱۴۰۵

در مشخصات تقریباً هر پردازنده با دو عدد مهم روبهرو میشویم: Core و Thread. برای مثال ممکن است یک CPU با مشخصات 6 Core / 12 Thread و پردازندهای دیگر با 8 Core / 8 Thread عرضه شود.
در نگاه اول شاید تصور کنیم Thread همان Core مجازی است یا هرچه تعداد Core و Thread بیشتر باشد، CPU حتماً سریعتر است؛ اما هیچکدام از این برداشتها بهتنهایی دقیق نیستند.
Core یک منبع پردازشی فیزیکی داخل CPU است، درحالیکه Thread در مشخصات پردازنده معمولاً به تعداد مسیرهای منطقی اجرای همزمانی اشاره میکند که سیستمعامل در اختیار دارد. Microsoft نیز Logical Processor را یک موتور محاسباتی منطقی از دید سیستمعامل و برنامه معرفی میکند و توضیح میدهد که یک Core میتواند شامل یک یا چند Logical Processor باشد.
همچنین معماری پردازندههای امروزی موضوع را پیچیدهتر کرده است. بعضی پردازندههای AMD با SMT میتوانند دو Thread را روی هر Core اجرا کنند، درحالیکه پردازندههای هیبریدی Intel ترکیبی از P-Core و E-Core دارند و حتی برخی نسلهای جدید Core Ultra دیگر از Hyper-Threading استفاده نمیکنند.
بنابراین برای انتخاب CPU نباید فقط دنبال بزرگترین عدد Core یا Thread باشید.
اگر هنوز در مرحله انتخاب کلی پردازنده هستید، راهنمای خرید پردازنده کامپیوتر مسیر کاملتری برای انتخاب CPU بر اساس Gaming، کار روزمره و کار حرفهای ارائه میدهد.
────────────────────────────────────────────────────────────
مفهوم | توضیح ساده |
|---|---|
Core | هسته پردازشی فیزیکی داخل CPU |
Thread در مشخصات CPU | مسیر منطقی اجرای پردازش از دید سیستمعامل |
6 Core / 6 Thread | معمولاً یک Thread سختافزاری برای هر Core |
6 Core / 12 Thread | معمولاً دو Thread منطقی روی هر Core با SMT/HT |
Core بیشتر | منابع پردازشی فیزیکی بیشتر |
Thread بیشتر | امکان استفاده بهتر از منابع Coreها در Workloadهای مناسب |
Software Thread | Thread ایجادشده توسط نرمافزار که سیستمعامل آن را زمانبندی میکند |
نکته مهم این است که 6 Core / 12 Thread به معنی وجود 12 هسته فیزیکی نیست.

────────────────────────────────────────────────────────────
Core یک واحد پردازشی فیزیکی داخل CPU است که میتواند دستورها را اجرا کند.
سالها قبل پردازندههای مصرفکننده معمولاً تعداد کمی Core داشتند، اما امروزه وجود چندین Core به سیستم اجازه میدهد Workloadهای مختلف را بهتر بین منابع پردازشی تقسیم کند.
برای مثال هنگام Gaming ممکن است همزمان مواردی مثل:
خود بازی
Windows
Discord
نرمافزار RGB
آنتیویروس
Browser
برنامه Recording
در حال اجرا باشند.
وجود چند Core باعث میشود تمام این پردازشها مجبور نباشند برای استفاده از تنها یک هسته منتظر یکدیگر بمانند.
اما قدرت یک Core فقط به وجود آن وابسته نیست. معماری، IPC، Clock، Cache، Latency و طراحی CPU نیز تعیین میکنند هر Core چقدر کار میتواند انجام دهد.
پس:
8 Core در یک پردازنده الزاماً با 8 Core در یک پردازنده دیگر Performance یکسانی ندارد.
────────────────────────────────────────────────────────────
Thread را باید از دو زاویه بررسی کرد.
از دید نرمافزار، Thread یک مسیر اجرای دستور داخل یک Process است. یک برنامه میتواند چندین Thread ایجاد کند و سیستمعامل تصمیم میگیرد هرکدام در چه زمانی روی کدام Logical Processor اجرا شوند.
اما وقتی در صفحه مشخصات یک CPU عبارت:
8 Cores / 16 Threads
را میبینیم، منظور معمولاً 16 Logical Processor سختافزاری قابل مشاهده برای سیستمعامل است.
Microsoft توضیح میدهد که سیستمعامل Logical Processorها را بهعنوان موتورهای محاسباتی منطقی میبیند و Threadهای نرمافزاری میتوانند روی آنها زمانبندی شوند.
بنابراین تعداد Thread درجشده در مشخصات CPU به این معنی نیست که سیستم فقط میتواند همان تعداد Software Thread داشته باشد.
یک برنامه میتواند بسیار بیشتر از 16 Software Thread ایجاد کند؛ سیستمعامل آنها را بین منابع سختافزاری موجود زمانبندی میکند.
────────────────────────────────────────────────────────────
فرض کنید یک CPU دارای:
6 Core / 12 Thread
باشد.
در این حالت شش واحد پردازشی فیزیکی داریم، اما سیستمعامل 12 Logical Processor در اختیار میبیند.
این Logical Processorها کاملاً مستقل از یکدیگر نیستند؛ دو Threadی که روی یک Core فیزیکی اجرا میشوند بخشی از منابع همان Core را با یکدیگر به اشتراک میگذارند.
Intel در توضیح Hyper-Threading نیز میگوید برخی منابع مانند Cache، Execution Unit و Bus بین Logical Processorهای یک Core مشترک هستند.
به همین دلیل:
6 Core / 12 Thread معادل 12 Core / 12 Thread نیست.
پردازنده 12 هسته فیزیکی منابع پردازشی بسیار بیشتری در اختیار دارد، هرچند نتیجه نهایی همچنان به معماری و Workload وابسته است.
────────────────────────────────────────────────────────────
SMT یا Simultaneous Multithreading فناوریای است که اجازه میدهد یک Core فیزیکی بیش از یک Thread را بهصورت همزمان مدیریت کند.
AMD توضیح میدهد که در معماری Zen از 2-way SMT استفاده میشود؛ یعنی یک Core میتواند دو Thread را همزمان اجرا کند.
برای مثال Ryzen 9 9950X دارای:
16 Core / 32 Thread
است و AMD در مشخصات رسمی این مدل SMT را فعال اعلام میکند.
Intel نام پیادهسازی شناختهشده خود از این مفهوم را Hyper-Threading گذاشته است. Intel توضیح میدهد Hyper-Threading اجازه میدهد بیش از یک Thread روی هر Core اجرا شود.
اما تمام پردازندههای Intel امروزی الزاماً Hyper-Threading ندارند.
────────────────────────────────────────────────────────────
یک Core هنگام اجرای یک Thread همیشه از تمام منابع داخلی خود در هر لحظه استفاده نمیکند.
ممکن است یک Thread منتظر داده از Cache یا Memory باشد یا بخشهایی از Execution Resources برای لحظاتی بدون استفاده باقی بمانند.
SMT تلاش میکند از این ظرفیت خالی استفاده کند و دستورهای Thread دیگری را نیز وارد Core کند.
به همین دلیل Thread دوم معمولاً Performance یک Core کامل دوم را ایجاد نمیکند، اما در Workloadهای مناسب میتواند Throughput پردازنده را افزایش دهد. AMD نیز توضیح میدهد که بسیاری از Workloadها از SMT سود میبرند، درحالیکه برخی Workloadهای خاص ممکن است استفاده انحصاری از منابع Core را ترجیح دهند.
پس نباید گفت:
1 Core + SMT = 2 Core
بلکه بهتر است بگوییم:
SMT تلاش میکند از منابع یک Core فیزیکی بهتر استفاده کند.
────────────────────────────────────────────────────────────
از نظر مفهوم کلی بسیار نزدیکاند.
SMT نام عمومی فناوری اجرای چند Thread همزمان روی یک Core است.
Hyper-Threading نام فناوری Intel برای این نوع Multithreading در پردازندههایی است که از آن پشتیبانی میکنند.
AMD معمولاً از عبارت SMT استفاده میکند.
بنابراین در مقایسه مشخصات ممکن است با این عبارات روبهرو شوید:
AMD SMT
یا:
Intel Hyper-Threading
اما وجود این فناوری باید برای مدل دقیق CPU بررسی شود و نباید فقط از روی برند نتیجه گرفت.
────────────────────────────────────────────────────────────
این نکته در نسلهای جدید Intel اهمیت زیادی پیدا کرده است.
پردازندههای Intel Core Ultra Series 2 بدون Hyper-Threading طراحی شدهاند. Intel بهطور رسمی اعلام میکند Core Ultra Series 2 از Intel Hyper-Threading Technology استفاده نمیکند.
بنابراین ممکن است پردازندهای مانند Core Ultra دارای:
20 Core / 20 Thread
باشد.
در مقابل بعضی پردازندههای Core نسلهای قبلی دارای P-Coreهایی با Hyper-Threading بودند و تعداد Thread آنها از تعداد Core بیشتر بود.
این موضوع نشان میدهد:
Thread Count کمتر در یک معماری جدید الزاماً به معنی CPU ضعیفتر نیست.
معماری، نوع Coreها و Performance واقعی باید در کنار عدد Thread بررسی شوند.
برای شناخت بهتر نسلها و نامگذاری Intel میتوانید مقاله Core i3، i5، i7، i9 یا Core Ultra؛ کدام پردازنده Intel را بخریم؟ را ببینید.
────────────────────────────────────────────────────────────
پردازندههای هیبریدی Intel میتوانند دو نوع Core داشته باشند:
P-Core یا Performance Core
E-Core یا Efficient Core
Intel توضیح میدهد P-Coreها برای Performance بالا و Workloadهای سنگین تکرشتهای طراحی شدهاند و E-Coreها بیشتر روی Efficiency و Performance چندرشتهای مقیاسپذیر تمرکز دارند.
در برخی نسلهای Core کلاسیک، P-Core میتواند Hyper-Threading داشته باشد، درحالیکه E-Core یک Thread اجرا میکند. اما همانطور که گفته شد، Core Ultra Series 2 دیگر Hyper-Threading ندارد.
به همین دلیل مقایسه فقط با عبارت:
CPU A = 16 Core
CPU B = 16 Core
کافی نیست.
ممکن است ترکیب Coreها کاملاً متفاوت باشد.
────────────────────────────────────────────────────────────
در معماریهای هیبریدی، سیستم باید تصمیم بگیرد کدام Thread روی P-Core و کدام روی E-Core اجرا شود.
Intel برای کمک به این فرایند از Thread Director استفاده میکند که اطلاعات مربوط به Workload را در اختیار سیستمعامل قرار میدهد تا Scheduling مناسبتری بین Coreها انجام شود. Intel این فناوری را یکی از بخشهای معماری هیبریدی خود معرفی میکند.
این موضوع یکی دیگر از دلایلی است که تعداد Core بهتنهایی تصویر کاملی از رفتار یک CPU جدید ارائه نمیدهد.
────────────────────────────────────────────────────────────
خیر.
Core بیشتر زمانی ارزش بالایی دارد که Workload بتواند کار را بین چند Thread تقسیم کند.
بعضی برنامهها بسیار خوب با افزایش Core مقیاس میشوند و بعضی نه.
برای مثال Workloadهایی مانند:
Rendering
Encoding
Compilation
Simulation
Virtual Machine
بعضی ابزارهای تولید محتوا
میتوانند از Coreهای بیشتر استفاده بیشتری داشته باشند.
اما بعضی Taskها به بخش محدودی از برنامه وابستهاند که قابل Parallel شدن نیست.
در Gaming نیز Intel در راهنمای توسعه خود اشاره میکند که اضافهکردن تعداد بسیار زیاد Thread میتواند پس از یک نقطه باعث افزایش Overhead مدیریت Threadها شود و Performance لزوماً بهصورت خطی رشد نمیکند.
پس رابطه زیر درست نیست:
2 برابر Core = 2 برابر Performance
────────────────────────────────────────────────────────────
باز هم خیر.
Thread بیشتر ظرفیت اجرای همزمان را افزایش میدهد، اما نرمافزار باید بتواند از آن استفاده کند.
برای مثال اگر یک برنامه عمدتاً یک یا چند Thread اصلی سنگین داشته باشد، داشتن 32 Thread سختافزاری الزاماً باعث نمیشود آن برنامه دو برابر سریعتر از CPU با 16 Thread اجرا شود.
همچنین دو Logical Thread روی یک Core منابع فیزیکی Core را به اشتراک میگذارند؛ بنابراین افزایش Thread با افزایش Core فیزیکی یکسان نیست.
────────────────────────────────────────────────────────────
Single-Thread Performance نشان میدهد CPU هنگام اجرای Workloadای که عمدتاً به یک Thread وابسته است چقدر سریع عمل میکند.
Multi-Thread Performance نشان میدهد پردازنده هنگام استفاده همزمان از تعداد بیشتری Core و Thread چه مقدار Throughput ارائه میکند.
اما این دو معیار رقیب یکدیگر نیستند.
یک CPU خوب ممکن است به هر دو نیاز داشته باشد.
Gaming معمولاً به Performance بالای Threadهای اصلی اهمیت زیادی میدهد، درحالیکه Rendering یا Encoding میتوانند از ظرفیت Multi-Core بیشتری بهره ببرند.
به همین دلیل انتخاب CPU باید بر اساس نوع Workload انجام شود.
────────────────────────────────────────────────────────────
برای وب، Office، مشاهده فیلم، امور دانشجویی و نرمافزارهای عمومی، نیازی به تعداد بسیار زیادی Core نیست.
بهعنوان یک نقطه شروع عملی برای خرید سیستم جدید میتوان چنین محدودهای را در نظر گرفت:
4 Core / 8 Thread یا بالاتر
اما این عدد حداقل رسمی نرمافزارها نیست.
در سیستم جدید، یک CPU مدرن 6 هستهای معمولاً فضای بیشتری برای Multitasking، برنامههای پسزمینه و استفاده چندساله ایجاد میکند.
در این سطح، معماری جدید، SSD مناسب و RAM کافی معمولاً بیشتر از ارتقای بیدلیل CPU به 12 یا 16 Core روی تجربه کاربر تأثیر میگذارند.
────────────────────────────────────────────────────────────
برای Gaming یک عدد ثابت وجود ندارد.
نوع بازی، GPU، رزولوشن، FPS هدف و برنامههای پسزمینه نتیجه را تغییر میدهند.
برای بسیاری از Gaming PCهای جدید، این چارچوب میتواند نقطه شروع مناسبی باشد:
نوع سیستم | نقطه شروع پیشنهادی |
|---|---|
Gaming اقتصادی | 6 Core مدرن |
Gaming Mainstream | 6 Core / 12 Thread یا سطح مشابه |
Gaming ردهبالا | 8 Core قدرتمند یا معماری هیبریدی همرده |
Gaming + Streaming | معمولاً 8 Core یا بیشتر بر اساس Encoder و Workload |
Competitive FPS بالا | Performance هسته و Latency بسیار مهم |
این اعداد قانون سختافزاری نیستند.
یک 6 Core نسل جدید ممکن است در Gaming از یک CPU قدیمی با Core بیشتر سریعتر باشد.
همچنین معماریهای هیبریدی Intel باعث میشوند تبدیل ساده P-Core + E-Core به یک عدد سنتی 6 یا 8 Core همیشه معنی دقیقی نداشته باشد.
────────────────────────────────────────────────────────────
هیچکدام بهتنهایی.
Performance بازی میتواند تحت تأثیر موارد زیر باشد:
IPC
Clock
Cache
Memory Latency
Core Count
Game Engine
GPU
سیستمعامل
Scheduling
باشد.
به همین دلیل هنگام خرید Gaming CPU باید Benchmarkهای مرتبط با بازیهای واقعی را در کنار Specification بررسی کرد.
پردازندههای Ryzen X3D مثال خوبی هستند که نشان میدهند Cache نیز میتواند در Gaming بهاندازهای مهم باشد که مقایسه ساده Core و Clock کافی نباشد.
برای مقایسه ردههای AMD میتوانید مقاله Ryzen 5، Ryzen 7 یا Ryzen 9؛ کدام پردازنده AMD را بخریم؟ را نیز مطالعه کنید.
────────────────────────────────────────────────────────────
Streaming میتواند بسته به روش Encoding فشار متفاوتی روی CPU ایجاد کند.
اگر Encode عمدتاً توسط GPU انجام شود، نیاز CPU میتواند با حالتی که Software Encoding روی خود CPU انجام میشود متفاوت باشد.
برای سیستمی که Gaming، Streaming، Discord، Browser و برنامههای دیگر را همزمان اجرا میکند، داشتن Headroom بیشتر نسبت به سیستم فقط Gaming منطقی است.
برای چنین Buildهایی معمولاً:
8 Core قدرتمند یا CPU همرده با ظرفیت Multi-Thread مناسب
نقطه شروع مطمئنتری است.
اما انتخاب نهایی باید با توجه به Encoder و نرمافزار Streaming انجام شود.
────────────────────────────────────────────────────────────
تدوین یک Workload واحد نیست.
نرمافزار ممکن است هنگام:
Decode
Playback
Effect
Export
Encoding
Proxy Generation
از CPU و GPU به شکل متفاوتی استفاده کند.
برای کار نیمهحرفهای، معمولاً پردازندهای در محدوده:
8 Core / 16 Thread یا Performance مشابه
نقطه شروع خوبی محسوب میشود.
برای پروژههای سنگینتر، Multicam، Export مداوم یا ترکیب تدوین با سایر Workloadها، 12 Core و بیشتر میتواند ارزش بیشتری پیدا کند.
اما قبل از خرید CPU بسیار گران، Benchmark همان نرمافزار و Codec مورد استفاده خود را بررسی کنید.
────────────────────────────────────────────────────────────
در CPU Rendering تعداد Core و Thread اهمیت بسیار بیشتری پیدا میکند.
اگر Render Engine بتواند Workload را بهخوبی بین Threadها تقسیم کند، پردازندههای 12، 16 یا تعداد Core بالاتر میتوانند نسبت به CPUهای Mainstream زمان Render را کاهش دهند.
برای نمونه AMD Ryzen 9 9950X دارای 16 Core و 32 Thread است و خانواده Ryzen 9000 تا این سطح از Core/Thread در دسکتاپ Mainstream ارائه میشود.
در Workstationهای بسیار سنگین نیز پردازندههایی مانند Threadripper به تعداد بسیار بالاتری Core و Thread میرسند.
اما اگر Render شما GPU-based باشد، افزایش بودجه CPU همیشه بهترین راه افزایش Performance نیست.
────────────────────────────────────────────────────────────
برای برنامهنویسی معمولی، تعداد بسیار زیاد Core ضروری نیست.
IDE، Browser، Database محلی و Development Tools معمولاً روی یک CPU Mainstream مدرن تجربه خوبی ارائه میکنند.
برای بسیاری از توسعهدهندگان:
6 Core / 12 Thread
یا:
8 Core / 16 Thread
محدوده مناسبی برای شروع است.
اما شرایط هنگام کار با:
Compilation بزرگ
Android Build
چند Container
Virtual Machine
Build Server محلی
پروژههای بسیار بزرگ
تغییر میکند.
در این سناریوها Core بیشتر میتواند زمان Build و Multitasking را بهبود دهد.
────────────────────────────────────────────────────────────
بله، ولی RAM معمولاً به همان اندازه یا حتی بیشتر اهمیت دارد.
هر Virtual Machine میتواند چند vCPU دریافت کند و Host نیز باید منابع کافی برای سیستمعامل اصلی داشته باشد.
در سیستمهایی که چند VM بهصورت همزمان اجرا میشوند، CPU با Core بیشتر آزادی بیشتری برای تخصیص منابع ایجاد میکند.
برای استفاده معمولی از یک یا دو VM سبک، یک CPU مدرن 8 Core میتواند نقطه شروع خوبی باشد.
اما برای Labهای سنگین، چند VM فعال یا Workstation مجازیسازی، باید Core Count، RAM Capacity و Storage همزمان بررسی شوند.
────────────────────────────────────────────────────────────
جدول زیر پیشنهاد خرید عمومی است و حداقل رسمی هیچ نرمافزاری محسوب نمیشود:
نوع کاربری | محدوده عملی پیشنهادی |
|---|---|
Office و وب | 4C/8T یا بالاتر |
سیستم عمومی جدید | 6C/12T یا سطح مشابه |
برنامهنویسی معمولی | 6C/12T تا 8C/16T |
Gaming اقتصادی | 6 Core مدرن |
Gaming Mainstream | حدود 6C/12T یا بالاتر |
Gaming ردهبالا | 8 Core قدرتمند یا Hybrid معادل |
Gaming + Streaming | 8 Core یا بیشتر بر اساس Workload |
تدوین نیمهحرفهای | حدود 8C/16T |
تدوین و Encoding سنگین | 12 Core یا بیشتر میتواند ارزشمند باشد |
CPU Rendering | 12، 16 Core یا بیشتر بر اساس بودجه |
چند Virtual Machine | 8 Core به بالا + RAM کافی |
Workstation سنگین | براساس نرمافزار؛ Core Count بالا میتواند اولویت باشد |
در معماریهای Hybrid، عبارتهایی مثل 6C/12T یا 8C/16T را نباید مستقیماً روی تمام مدلهای Intel اعمال کرد؛ مشخصات P-Core/E-Core و Benchmark واقعی مدل اهمیت بیشتری دارد.

────────────────────────────────────────────────────────────
مقداری Headroom میتواند منطقی باشد.
اگر امروز سیستم شما دائماً درگیر Multitasking است یا میدانید در آینده Streaming، Editing یا Virtualization به Workload اضافه میشود، رفتن یک سطح بالاتر ممکن است ارزش داشته باشد.
اما خرید CPU با دو برابر Core صرفاً با این تصور که «شاید پنج سال دیگر لازم شود» همیشه بهترین استفاده از بودجه نیست.
در بسیاری از سیستمها بودجه اضافه ممکن است در:
GPU
RAM
SSD
Cooler
Power Supply
Monitor
تأثیر بیشتری روی تجربه واقعی داشته باشد.
Future-proofing باید متناسب باشد، نه حداکثری.
────────────────────────────────────────────────────────────
خیر.
حتی اگر معماری و Clock یکسان باشند، نرمافزار باید بتواند Workload را به اندازه کافی Parallel کند تا از Coreهای اضافه استفاده شود.
در برخی Workloadهای بسیار Parallel افزایش Core میتواند Scaling خوبی ایجاد کند، اما در بسیاری از برنامهها بخشی از کار Serial باقی میماند.
همچنین Memory، Cache، Power Limit و سایر Bottleneckها میتوانند مانع Scaling خطی شوند.
بنابراین Core/Thread عددی برای تخمین ظرفیت پردازنده است، نه فرمول مستقیم Performance.
────────────────────────────────────────────────────────────
قبل از Upgrade میتوانید رفتار سیستم را بررسی کنید.
اگر هنگام Workload اصلی:
تعداد زیادی Core دائماً نزدیک استفاده کامل هستند
Render یا Compile مدت زیادی CPU را درگیر میکند
همزمانی چند برنامه سیستم را کند میکند
نرمافزار در Benchmarkها از CPUهای High-Core بهخوبی Scale میشود
Core بیشتر میتواند مفید باشد.
اما اگر فقط یک یا دو Thread محدودکننده باشند، خرید پردازندهای با Core بسیار بیشتر ممکن است نتیجه مورد انتظار را ایجاد نکند.
در چنین حالتی Performance هر Core و معماری جدیدتر میتواند مهمتر باشد.
────────────────────────────────────────────────────────────
در Windows میتوانید از Task Manager > Performance > CPU اطلاعات پردازنده را مشاهده کنید.
عدد Cores تعداد هستههای فیزیکی و Logical Processors تعداد منابع منطقی قابل مشاهده برای سیستمعامل را نشان میدهد.
Microsoft نیز بین Physical Processor، Core و Logical Processor تمایز قائل میشود و Logical Processor را واحد منطقیای معرفی میکند که Windows برای Scheduling مشاهده میکند.
اگر مثلاً Task Manager نشان دهد:
Cores: 8
Logical processors: 16
پردازنده شما 8 Core فیزیکی و 16 Logical Processor در اختیار سیستم قرار داده است.
────────────────────────────────────────────────────────────
Core و Thread فقط بخشی از Specification هستند.
هنگام مقایسه CPU این موارد را هم بررسی کنید:
نسل پردازنده
معماری
P-Core / E-Core
IPC
Boost Clock
Cache
Power
Memory Support
Benchmark Gaming
Benchmark نرمافزار حرفهای
قیمت CPU
هزینه Platform
برای مثال دو پردازنده 8 Core ممکن است به دلیل معماری متفاوت Performance کاملاً متفاوتی داشته باشند.
به همین دلیل مقایسه Specification باید همیشه با Benchmark مرتبط با نوع کاربری تکمیل شود.
────────────────────────────────────────────────────────────
Logical Thread از منابع Core فیزیکی استفاده میکند و معادل Core مستقل نیست.
معماری و Performance هر Core میتواند نتیجه را تغییر دهد.
بازی باید بتواند از Threadهای اضافه استفاده کند و GPU نیز میتواند عامل محدودکننده باشد.
Coreهای AMD Zen، Intel P-Core و Intel E-Core طراحی یکسانی ندارند.
Core Ultra Series 2 بدون Hyper-Threading طراحی شده است.
دو Logical Thread منابع یک Core فیزیکی را به اشتراک میگذارند و افزایش Performance به Workload بستگی دارد.
اگر نرمافزار نتواند از Coreها استفاده کند، بخش زیادی از بودجه CPU بدون استفاده میماند.
────────────────────────────────────────────────────────────
هیچ عددی برای تمام کاربران مناسب نیست.
برای استفاده روزمره و سیستم عمومی، یک CPU مدرن با 4 تا 6 Core میتواند نیاز بسیاری از کاربران را پوشش دهد.
برای Gaming، یک پردازنده مدرن 6 Core معمولاً نقطه شروع منطقی است و سیستمهای ردهبالاتر میتوانند از 8 Core قدرتمند یا معماریهای Hybrid جدید استفاده کنند.
برای Streaming، تدوین و تولید محتوا، 8 Core و بیشتر میتواند Headroom مناسبی ایجاد کند.
برای CPU Rendering، Encoding سنگین، Compilation یا Workstation، پردازندههای 12، 16 Core و بیشتر ارزش واقعی بیشتری پیدا میکنند.
اما مهمترین قاعده این است:
Core بیشتر را زمانی بخرید که Workload شما بتواند از آن استفاده کند.
همچنین Thread را با Core فیزیکی یکی ندانید و پردازندهها را فقط با عبارتهایی مثل 8 Core یا 16 Thread مقایسه نکنید.
ترکیب:
معماری + Core + Thread + Cache + Clock + Workload واقعی
است که Performance CPU را مشخص میکند.
برای مشاهده پردازندههای موجود میتوانید پردازندههای آریو چیپ را بررسی کنید.
────────────────────────────────────────────────────────────
چون تمام معماریها از SMT یا Hyper-Threading استفاده نمیکنند. برای نمونه Intel Core Ultra Series 2 بدون Hyper-Threading طراحی شده است؛ بنابراین تعداد Thread میتواند با تعداد Core برابر باشد.
بله. برنامه باید Workload خود را به چند Thread قابل اجرا تقسیم کند تا بتواند از Coreهای بیشتری استفاده کند. برخی Workloadها بهخوبی Parallel میشوند و برخی دارای بخشهای Serial هستند؛ بنابراین Scaling با افزایش Core بین نرمافزارها یکسان نیست.
خیر. در 4C/8T تنها چهار Core فیزیکی وجود دارد و Logical Threadها منابع آن Coreها را به اشتراک میگذارند. در 8C/8T هشت Core فیزیکی وجود دارد. با این حال Performance نهایی همچنان به معماری، Clock و Workload بستگی دارد.
برای استفاده عمومی معمولاً دلیلی برای غیرفعالکردن آن وجود ندارد. تأثیر این کار به Workload وابسته است؛ AMD نیز گزارش میکند که بسیاری از Workloadها از SMT سود میبرند، درحالیکه تعداد محدودی از Workloadهای تخصصی ممکن است عملکرد متفاوتی با SMT غیرفعال داشته باشند. بهترین تصمیم باید براساس Benchmark همان نرمافزار انجام شود.
اگر CPU از SMT یا Hyper-Threading استفاده کند، هر Core فیزیکی ممکن است بیش از یک Logical Processor در اختیار سیستمعامل قرار دهد. مثلاً یک CPU با 8 Core و SMT دوطرفه میتواند 16 Logical Processor داشته باشد. البته این 16 Logical Processor به معنی وجود 16 هسته فیزیکی مستقل نیستند.