Длина пути к инструкции

редактировать
Количество команд машинного кода, необходимых для выполнения раздела компьютерной программы

В производительности компьютера, длина пути команды - это количество команд машинного кода, необходимых для выполнения раздела компьютерной программы. Общая длина пути для всей программы может считаться мерой производительности алгоритма на конкретном компьютерном оборудовании. Длина пути простой условной инструкции обычно считается равной 2: одна инструкция выполняет сравнение, а другая - переход, если выполняется конкретное условие. Продолжительность времени для выполнения каждой инструкции обычно не учитывается при определении длины пути, поэтому длина пути является просто показателем относительной производительности, а не в любом смысле абсолютной.

При выполнении тестовой программы большая часть длины пути инструкции обычно находится внутри внутреннего цикла программы.

. До введения кешей длина пути была приблизительным временем выполнения, но в современных ЦП с кешем это может быть гораздо худшее приближение, когда некоторые инструкции загрузки занимают сотни циклов, когда данные не в кеше, или на несколько порядков быстрее, когда они находятся в кеше (даже та же инструкция в другом раунде цикла).

Содержание
  • 1 Ассемблерные программы
  • 2 Программы на языке высокого уровня (HLL)
  • 3 Факторы, определяющие длину пути инструкций
  • 4 Использование длин путей инструкций
  • 5 Внешние ссылки
Ассемблер программ

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

Длина пути инструкции программы на языке ассемблера обычно сильно отличается от количества исходных строк кода для этой программы, поскольку длина пути инструкции включает только код в исполняемом потоке управления для данного ввода и не включает код, не относящийся к конкретному вводу, или недостижимый код.

программы на языке высокого уровня (HLL)

Поскольку один оператор написан на высокоуровневом язык может создавать несколько машинных инструкций с переменным числом, не всегда возможно определить длину пути инструкций без, например, симулятора набора инструкций , который может подсчитывать количество «выполненных» инструкций во время симуляции. Если язык высокого уровня поддерживает и необязательно создает «список сборки», иногда можно оценить длину пути инструкции, изучив этот список.

Факторы, определяющие длину пути инструкции
Использование длин путей инструкций

Из вышеизложенного можно понять, что знание длин путей инструкций может быть используется:

  • для выбора подходящего алгоритма минимизации общей длины пути для программ на любом языке
  • для отслеживания того, насколько хорошо программа была оптимизирована на любом языке
  • к определить, насколько эффективны конкретные операторы HLL для любого языка HLL
  • в качестве приблизительного показателя общей производительности компьютера
Внешние ссылки
  • [1] Архитектура компьютера Автор: Джон Л. Хеннесси, Дэвид А. Паттерсон, Дэвид Голдберг, Крсте Асанович
  • [2] IBM - Глоссарий терминов производительности
Последняя правка сделана 2021-05-24 03:39:39
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте