- Основний зв'язок: Час = (ЧС × ІСЦ)/f та Продуктивність = (f × ІСЦ)/ЧС, де ІСЦ/ІСЦ є ключовими важелями.
- Справжня масштабованість: Амдал і Густафсон обмежують прискорення; ефективність знижується зі збільшенням накладних витрат.
- Правила пам'яті: влучання/невдача, DDR та пропускна здатність впливають на CPI так само, як і частота.
- Метод WPA: критичний шлях, потоки (Готовий/Виконується/Очікує), DPC/ISR та пріоритети пояснюють вузькі місця.
Коли ви шукаєте всі формули для розрахунку продуктивності процесора, ідеально мати їх добре пояснені, з контекстом та практичними прикладами., а не просто вільний список рівнянь. Цей посібник об'єднує та переписує у зрозумілий та вичерпний спосіб метрики, формули, нюанси та методи професійного аналізу. (включно з використанням аналізатора продуктивності Windows), які часто відображаються розкиданими по багатьох джерелах.
Тут ви знайдете все: від класичних одиниць вимірювання (IPS, IPC, CPI та FLOPS) до точного співвідношення між часом виконання та продуктивністю, законів Амдала та Густафсона, пам'яті та пропускної здатності, і навіть того, як вивчати перешкоди потоків та DPC/ISR за допомогою WPA.Крім того, він містить розрахунок споживання енергії процесором (C·V²·F), інструменти для його вимірювання та рекомендації щодо практичного підвищення ефективності та продуктивності.
Основні одиниці та показники: IPS, IPC, CPI, FLOPS та частота

Перше, що потрібно зробити, це врахувати, які найважливіші одиниці ми будемо обробляти:
- IPS (інструкцій за секунду) вимірює, скільки інструкцій виконує процесор за одну секунду (зазвичай MIPS, мільйони IPS). Це корисний показник для отримання загального уявлення про пропускну здатність, хоча він не дуже добре враховує складність інструкцій або мікроархітектурні відмінності. Історичні та сучасні приклади показують розрив між дизайном та епохами, і при розгоні це може змінюватися.
- IPC (Інструкцій за цикл) Показує, скільки інструкцій процесор виконує в середньому за такт. Ключово важливо розуміти ефективність за цикл незалежно від частоти. Порівняння IPC вимагає використання тієї ж програми або бенчмарку на різних машинах, оскільки кількість та тип інструкцій залежать від програмного забезпечення.
- CPI (циклів на інструкцію) Це концептуальна інверсія ІСЦ: скільки циклів у середньому займає кожна інструкція. ІСЦ змінюється залежно від типу інструкції та мікроархітектури. (наприклад, навантаження може вимагати більше циклів, ніж стрибок), тому зазвичай його розраховують як середньозважене значення за класами навчання.
- FLOPS (операцій з плаваючою комою за секунду) кількісно визначає обчислення з плаваючою комою, що є критично важливим у високопродуктивних обчисленнях, штучному інтелекті та науці. Розрізняють обчислення одинарної точності (SP) та подвійної точності (DP), а енергоефективність також позначають як FLOPS/W.. Важливо розрізняти нативні FLOPS та нормалізовані FLOPS. при порівнянні різнорідних платформ.
- Частота (Гц) позначає ритм годинника, але не є прямим синонімом продуктивності. Міф про МГцСьогодні процесор з нижчою частотою може перевершити швидший на паралелізм, кращий IPC та ефективніші мікроархітектури. Крім того, глибина трубопроводу та критична логіка визначають досяжну частоту..
Основні формули: час виконання, пропускна здатність, IPC, CPI, IPS та FLOPS
Деякі Основні формули для розрахунку/вимірювання продуктивності процесора, про який вам слід знати:
- Час виконанняСтандартний спосіб вираження цього — Час = NI × ІСЦ × Tде NI – кількість інструкцій у програмі, CPI середня кількість циклів на інструкцію та T період тактової частоти (T = 1/частота). Еквівалент: Час = (Чис. інф. × ІСЦ) / Частота. Апаратне забезпечення та компілятор часто атакують CPI та частоту; NI залежить від програмного забезпечення..
- Продуктивність є оберненою величиною часу: Продуктивність = 1 / ЧасПереписування, Продуктивність = (Частота × ІСЦ) / NI. Це чітко визначає трикутник зобов'язань: збільшення частоти та ІСЦ та/або зниження чистого прибутку. (кращий алгоритм, краща компіляція) підвищує продуктивність.
- Процесорний час на багатопроцесорних системах Це виражається додаванням часів потоків або використанням агрегацій, які враховують P-процесори. Паралельно, фактично паралелізована частина та накладні витрати на координацію обмежують перевагу. (див. закони Амдала та Густафсона нижче).
- Ефективний ІСЦ для конкретної програми вона отримується з фактична середня кількість спостережуваних інструкцій за цикл під час його виконання; для порівняння, використовує той самий бенчмарк на обох машинах, щоб NI та змішування інструкцій були порівнянними.
- Середньозважений ІСЦ Зазвичай його розраховують як Σ (ІСЦ_i × вага_i), де кожен ІСЦ_і відповідає класу навчання та вага_i – це частка цього класу в програмі. Такий перегляд на основі класів дозволяє побачити, де потрібно оптимізувати (наприклад, повільне завантаження або дорогі розбиття).
- IPS (інструкцій за секунду) часто апроксимується як IPS ≈ Частота × ІСЦ. Будьте обережні з конвеєрами, залежностями, прогнозуванням та спорожненням каналівна практиці, Сплески та штрафи можуть віддалити вас від теоретичної цифри.
- ФЛОПИ У простій системі це оцінюється як Частота × плаваючі операції за цикл (залежно від ширини вектора та одиниць FPU), а також паралельно як Загальна кількість флопсів ≈ Σ флопсів кожного процесора. Різниця, якщо ви працюєте в SP чи DP і пам’ятайте про різницю між Рідні та нормалізовані FLOPS.
Масштабованість: закон Амдала, закон Густафсона, прискорення, ефективність та ізоефективність
Інші важливі формули для розрахунку продуктивності, ефективності комп'ютера тощо:
- Закон Амдала моделює виграш від пришвидшення частини системи. Якщо частина f часу не отримує покращення, максимальне прискорення обмежене значенням 1/f. Паралельно, з паралелізуючим дробом p, типова границя виражається як S(N) = 1 / ((1 − p) + p/N). Покращення вузького місця (зменшення ефективної послідовної частини) – це те, що окупається найбільше.
- Застосування до трубопроводуКонвеєрна обробка зменшує затримки на інструкцію в стаціонарному стані, але Бульбашки, ризики даних та невдалі прогнози Вони додають штрафи, які обмежити ідеальне прискорення. Поглиблення трубопроводу збільшує частоту, але також і штрафи за спорожнення..
- Закон Густафсона дотримується іншої точки зору: оскільки проблема зростає зі збільшенням кількості процесорів, S(N) ≈ N − α(N − 1), де α апроксимує послідовну частку шляхом масштабування навантаження. Він наголошує, що розподіл навантаження та накладні витрати визначають реальну ефективність..
- Ефективність визначається як E = S(N) / N. Зі збільшенням N, E має тенденцію до зменшення шляхом координації, спільної пам'яті та дисбалансів. Ізоефективність шукай як збільшити розмір задачі n пункт зберігати E постійним при збільшенні p (процесорів), поглинаючи накладні витрати.
Пам'ять, кеш, пропускна здатність та сховище: інші 50% продуктивності

Окрім розрахунків для обробки, важлива також продуктивність пам'яті, найважливішими формулами для якої є:
- Ієрархія пам'яті визначає CPIДоступ до кешу може займати 1 цикл, тоді як доступ до оперативної пам'яті сотні циклів. Коефіцієнти влучань/невдач мають таке ж, або навіть більше значення, ніж пропускна здатність та затримка.Кращий показник влучань дорівнює менше штрафів та менше енергії, витраченої на запам'ятовування.
- Ключові визначення: Коефіцієнт промахів = кількість невдалих спроб / загальна кількість спроб доступу y Коефіцієнт влучань = кількість влучань / загальна кількість звернень. Збільште розмір кешу інструкцій або даних та покращте локальність вашого коду збільшити коефіцієнт влучань та зменшити CPI.
- DDR та ефективна частотаПам'ять DDR працює 2 пересадки за цикл контролера, ось чому DDR4-3200 еквівалентна 1600 МГц memclk. Теоретична пропускна здатність за модулем апроксимується як memclk × 2 × ширина шини (біт) × кількість каналів, і виражається в байтах/с (поділити на 8). Класичний приклад DDR4-3200, 64-бітна шина, двоканальний режим: 1.600.000.000 2 64 2 × 409.600.000.000 × XNUMX × XNUMX = XNUMX XNUMX XNUMX XNUMX біт/с ≈ 51,2 Гб / с.
- Затримка обертання жорсткого диска (коли голова вже на колії): оцінюється як 0,5 обертів / (об/хв/60). Для 7200 об/хв: 0,5 / (7200/60) ≈ 4,16 мс. Буфери та кеші дисків можуть скоротити час доступу, але вони не усувають механічної природи затримки.
- Вимоги до пам'яті та обчислювальної технікиУ високопродуктивних навантаженнях аналіз проводиться з операційна інтенсивність (флопс/байт), що стосується Інструкції з плаваючою комою та переміщення даних. Низька інтенсивність зраджує обмеження пам'ятівисокий, обчислювальне обмеження. Оптимізуйте макети та послідовний доступ може повністю змінити профіль продуктивності.
Споживання та ефективність: TDP, динамічна потужність та інструменти
З іншого боку, у нас також є питання споживання та ефективності:
- TDP не є фактичним споживанням: є теплотехнічним/проектним завданням. Споживання залежить від ефективного навантаження, напруги та частотиПід невеликими навантаженнями, Фактичне середнє споживання зазвичай значно нижче, ніж TDP.
- Приблизна динамічна потужність: P = C · V² · F. C - комутована ємність, V напруга та F частота. Збільшення напруги призводить до квадратичного штрафу; отже, розгін із перенапруженням спричиняє значні стрибки споживання та тепла. Окрім динамічної частини, існують витоки, які зростають з температурою та процесом..