Как измерить время выполнения процессора?

459
Hasan Tıngır

Я хочу измерить время выполнения процессора и сравнить их, как веб-сайты Bencmark.

как я знаю, у нас есть формула для расчета этого.

Execution time = CPI * I * 1/CR 

Но я застрял в формуле. Я имею в виду, как мы получаем эти данные? Я проверяю информацию любого процессора, но никогда не сталкивался с ними. (спецификации i7-6820EQ )

Например, как найти CPI (циклов на инструкцию)? насколько я знаю, это не то, что можно рассчитать .. кроме того, любой производитель ничего не дает о значении cpi ..

Итак ... Как мне измерить время выполнения любого процессора? Есть ли способ сделать это? Как тесты сайтов делают это?

0
Почему вы предполагаете, что эталонные сайты имеют эту информацию? Seth 6 лет назад 0
@ Хороший вопрос :) Тогда как они сравнивают процессор, не зная этой информации? Как они решают, какой из них лучше пропорционально Hasan Tıngır 6 лет назад 0
Вы запускаете произвольный тест (один и тот же для каждой платформы) и сравниваете полученные числа, сравнивая их друг с другом. Seth 6 лет назад 0
@Seth Но есть тысячи моделей процессоров. У меня нет достаточно времени, чтобы сделать это. Вместо этого для меня более полезно вычислять время выполнения и сравнивать друг с другом. (У меня есть большие данные о моделях процессоров и их характеристиках ..) Hasan Tıngır 6 лет назад 0
Но у вас нет данных, необходимых для этих расчетов. Так что просто использовать обычные данные тестов с других сайтов? Если вы посмотрите на определение [IPC] (https://en.wikipedia.org/wiki/Million_instructions_per_second), вы найдете дополнительную информацию о том, как его получить, например, посмотрите на Dhrystone. По сути, вы не получите данные, которые ищете, и, кроме того, они неточны. Инструкция AVX512 - это отдельная инструкция, которая довольно сложна по сравнению с простой 1 + 1. Таким образом, для данного периода времени процессор, просто выполняющий 1 + 1, будет иметь более высокий IPC, который бесполезен, если вы используете AVX. Seth 6 лет назад 0

2 ответа на вопрос

1
harrymc

Если вы ищете для сравнения моделей процессоров, ваш лучший источник информации - это веб-сайт PassMark Software, рекламируемый как:

1 000 000+ систем и 3 100+ моделей процессоров - обновляется ежедневно!

PassMark Software имеет свои собственные тесты для тестирования всех компонентов компьютеров, включая ЦП, диск, видео и ОЗУ, которые запускаются добровольцами и затем интегрируются в общую статистику.

1
alexanius

Сравнение процессора - сложная работа. Прежде всего вы должны понимать, что существуют разные классы вычислений, и процессор выполняет их по-разному. В зависимости от этого ваш CPI будет отличаться для одного процессора. В некоторых случаях сложно посчитать параметр I (например, для умозрительных инструкций). Также ваша формула не учитывает данные и инструкции киосков.

На мой взгляд, одним из лучших тестов является SPEC . Для CPU он делится на два набора задач: FP (с плавающей запятой) и INT (целое число). Каждый набор имеет разные задачи, которые показывают производительность процессора в разных случаях. Этот тест подсчитывает время (да, просто время) для выполнения каждой задачи, а затем вы можете сравнить различные процессоры и посмотреть, какой из них лучше для конкретного случая (время предварительно нормализовано).

Похожие вопросы