Alexsandr: ↑
31.08.2025 22:52
Были в прошлом новости про НТ наоборот, но вот как это все реализовать, не будет ли планировщик и все что рядом с ним жрать больше чем сам ЦП? Или вернутся к работе FX у АМ?
Загалом, буде смішно, якщо Intel "винайде" CMT, сам по собі CMT для багатопотокових завдань не був поганим, а якщо заставляти кнутом та пряником програмістів писати під це оптимізований код (як на консолях), то в цілому жити можно. Проблема в тому, що ринку ПК це все не дуже потрібно було, бо 90% розробників хотіли або просто жирне ядро, або жирне ядро с smt. І що цікаво, ринок демонструє, що ці бажання не змінились, ні для ПК, ні для мобільних пристроїв, ні навіть для серверів.
Основна концепція CMT
Замість того, щоб мати повністю окремі ядра, процесори з архітектурою CMT об'єднували два ядра в один "модуль". У кожному модулі два ядра мали власні, незалежні блоки для цілочисельних обчислень (ALU), але ділили між собою деякі інші ресурси, такі як блок для обчислень з плаваючою комою (FPU) та кеш-пам'ять L2.
Цей підхід був розроблений з метою оптимізації площі кристала та енергоспоживання, оскільки дублювання всіх компонентів для кожного ядра було б менш ефективним. Ідея полягала в тому, що більшість програм не використовують FPU постійно, тому спільний FPU міг ефективно обслуговувати два потоки даних.
SMT (Hyper-Threading)
* Одне фізичне ядро здатне обробляти два (або більше) потоки одночасно.
* Всі обчислювальні ресурси в межах одного ядра (ALU, FPU, кеш) є спільними для обох потоків.
* Коли один потік простоює (наприклад, чекає дані з пам'яті), другий потік може використовувати прості обчислювальні блоки, підвищуючи загальну ефективність ядра.
CMT (AMD Bulldozer)
* Два "ядра" об'єднані в один модуль, і можуть обробляти два потоки одночасно.
* Кожне ядро має свій власний блок для цілочисельних обчислень (ALU).
* Блок для обчислень з плаваючою комою (FPU) є спільним для обох ядер в модулі.
CMT прагнув забезпечити високу продуктивність у багатопотокових цілочисельних навантаженнях, оскільки кожен потік мав свій власний блок ALU. Однак, у навантаженнях, що інтенсивно використовують обчислення з плаваючою комою, продуктивність могла страждати через конкуренцію за спільний FPU.