В компьютерной архитектуре, инструкций за цикл (IPC ), обычно называемых инструкциями за такт, является одним из аспектов процессора Производительность : среднее количество инструкций, выполняемых за каждый такт. Это обратное умножение от циклов на инструкцию.
Вычисление IPC выполняется путем выполнения заданного фрагмента кода, вычисляя количество требуемых инструкций машинного уровня для его завершения, а затем с помощью высокопроизводительных таймеров для расчета количества тактов, необходимых для его завершения на реальном оборудовании. Окончательный результат получается из деления количества инструкций на количество тактов процессора.
Количество инструкций в секунду и операций с плавающей запятой в секунду для процессора может быть получено путем умножения количества инструкций за цикл на тактовую частоту. частота (количество циклов в секунду указано в Герц ) рассматриваемого процессора. Количество инструкций в секунду - это приблизительный показатель вероятной производительности процессора.
Количество инструкций, выполняемых за такт, не является постоянным для данного процессора; это зависит от того, как конкретное запущенное программное обеспечение взаимодействует с процессором и, в сущности, со всей машиной, особенно с иерархией памяти . Тем не менее, некоторые функции процессора обычно приводят к созданию конструкций, которые имеют значения IPC выше среднего; наличие нескольких арифметико-логических блоков (ALU - это подсистема процессора, которая может выполнять элементарные арифметические и логические операции) и коротких конвейеров. При сравнении различных наборов команд более простой набор команд может привести к более высокому показателю IPC, чем реализация более сложного набора команд с использованием той же технологии микросхемы; однако более сложный набор инструкций может обеспечить более полезную работу с меньшим количеством инструкций. Таким образом, сравнение показателей IPC между различными наборами инструкций (например, x86 и ARM) обычно бессмысленно.
Заданный уровень инструкций в секунду может быть достигнут с высоким IPC и низкой тактовой частотой (например, AMD Athlon и более ранние Intel Core Series ), или от низкого IPC и высокой тактовой частоты (например, Intel Pentium 4 и до в меньшей степени AMD Bulldozer ). Оба являются допустимыми конструкциями процессоров, и выбор между ними часто продиктован историей, инженерными ограничениями или давлением маркетинга. Однако высокий IPC с высокой частотой всегда дает лучшую производительность.
Полезная работа, которую можно выполнить с любым компьютером, зависит от многих факторов, помимо скорости процессора. Эти факторы включают в себя архитектуру набора команд, микроархитектуру процессора и организацию компьютерной системы (например, дизайн системы дискового хранилища, а также возможности и производительность других подключенных устройств), эффективность операционной системы и, что наиболее важно, высокоуровневый дизайн используемого прикладного программного обеспечения.
Для пользователей и покупателей компьютерной системы количество инструкций за такт не является особенно полезным показателем производительности их системы. Для точного измерения относящейся к ним производительности гораздо полезнее приложения тесты. Осведомленность о его существовании полезна, поскольку дает простой для понимания пример того, почему тактовая частота не является единственным фактором, влияющим на производительность компьютера.