Программы, ограничения которых связаны с процессором

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

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

  • Применяемого алгоритма
  • Исходного кода и структур данных, созданных программистом
  • Последовательности команд на машинном языке, созданной компилятором
  • Размера и структуры кэш-памяти процессора
  • Архитектуры и тактовой частоты самого процессора (см. Определение быстродействия процессора).

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

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