Використання процесора невірно на комп'ютерах, а кожен рік погіршується

Використання процесора невірно на комп'ютерах, а кожен рік погіршується

Використання процесора неправильне. Це аргумент Брендон Грегг, найвищий архітектор Netflix, вирівнявся з однією з найбільш фундаментальних інструментів вимірювання продуктивності, які ми використовуємо при оцінці системи. За словами Грега, використання центрального процесора, як повідомляється в Windows, не просто не так, він з часом активно погіршується.

Якщо ви коли-небудь вирили в цю тему, ви знаєте про деякі способи, з якими точно не повідомляється про використання процесора. З тих пір, як Intel (а тепер і AMD) додав підтримку Hyper-Threading / SMT, існує розбіжність між тим, як керуючі елементи представлені в диспетчері завдань і які ресурси фактично доступні. Windows, Linux та інші операційні системи повідомляють про загальну кількість ядер і міряють використання процесора, наче кожне логічне ядро ​​фактично є фізичним ядром. Але це не проблема Грегг обговорює. По-перше, є проблема зупинки потоку. Якщо ви бачите, що ваш процесор працює на 90 відсотків завантаження, ви можете подумати, що це виглядає так:

Використання процесора невірно на комп'ютерах, а кожен рік погіршується

Насправді, Грегг вказує на те, що може статись щось подібне до цього, в якому процесор зупиняється і чекає даних, але фактично не виконує жодної роботи.

Використання процесора невірно на комп'ютерах, а кожен рік погіршується

Якщо ви думаєте про це, ви, напевно, бачили це в дії. Якщо ви коли-небудь виконували маніпуляції з рендерингом або Photoshop, які дійсно задавали ваш процесор, продуктивність - навіть продуктивність інтерфейсу користувача - може сповільнитися до сканування під час виконання робочого навантаження. Існують способи уникнути цієї проблеми шляхом встановлення загальної кількості активних потоків або пріоритету самого навантаження, але якщо ви працювали з комп'ютерами протягом певного періоду часу, ви, напевно, бачили випадки, коли 100% процесорів не використовувалося насправді означає 100% використання процесора. Проблема, на думку Грегга, полягає в тому, що доступ до пам'яті часто сповільнює роботу системи. Це відома як розрив CPU-DRAM, і це тема, про яку ми вже обговорювали на ЕТ.

Використання процесора невірно на комп'ютерах, а кожен рік погіршується

Вся причина, по якій ми застосували вдосконалені структури кешування з кешем L1, L2 та L3, полягає саме в тому, що розрив DRAM затухає процесори та знижує загальну продуктивність. Але зараз є ще одна проблема, що спричиняє проблеми з використанням процесора: Spectre і Meltdown patches.

У наведеному вище відео, Грегг проходить через приклади двох сучасних серверів, які працювали з різними показниками продуктивності для одного робочого навантаження, незважаючи на те, що вони працювали на одному годиннику та виконували однакові завдання. Винуватця? Spectre і Meltdown патчі, що зливаються з кешами TLB, що спричиняє цикли завантаження в ЦП. Грегг детально продемонструє, як патчі KPTI можуть впливати на ефективність публікації в блозі на цю тему, а дані, які він представляє, є специфічними для робочих навантажень, які він працює (як можна було очікувати), вплив значний.

Але витримка полягає в тому, що використання центрального процесора, як повідомляється в Windows, часто є неправильним. Занадто часто, що, схоже, як використання центрального процесора, насправді є затримкою процесора, що чекає на те, щоб зробити щось корисне.

Читати далі

Дрейф джойстика PlayStation 5 DualSense лише погіршується
Дрейф джойстика PlayStation 5 DualSense лише погіршується

iFixit зірвав контролер Sony DualSense, і їх прогноз щодо нової проблеми з дрейфом не обнадіює.