FAQ - Частые вопросы
Все дело в том, что у P4 очень длинный конвейер выполнения инструкций. Чем длиннее конвейер, тем легче наращивать тактовую частоту, но тем меньше производительности получается на каждый полученный мегагерц. И наоборот. Чем на большее количество стадий рассчитан конвейер, тем меньше работы приходится на каждый отдельный такт и тем быстрее этот такт выполняется. Допустим, у нас имеется простейший блок из нескольких, связанных друг с другом операций:
Первая операция будет находиться в кэше инструкций столько времени, сколько понадобится для выполнения операции 2. Вторая операция будет выполняться тем больше тактов, чем длиннее конвейер. Pentium 3 имеет конвейер длиной 12 стадий, Athlon - 10 стадий. Pentium 4 пока является абсолютным чемпионом по длине конвейера, то есть имеет самое меньшее время выполнения такта, позволяющее достичь максимальной тактовой частоты, но и самые большие задержки для связанных друг с другом операций. Более важным становится предсказание того, выполнение какой инструкции понадобится, задолго до самого процесса ее выполнения. И, естественно, ошибка на этой стадии - выбор не той ветви, по которой пойдет процесс выполнения программы, будет весьма и весьма сказываться на производительности процессора. В целочисленных операция P4 работает очень хорошо, а вот в операциях с плавающей точкой у него ситуация похуже, там он проигрывает AXP. На самом деле все сложнее, но не имеет особого смысла вникать во все эти тонкости... Также важно, что еще недавно очень мало было приложений поддерживающих набор инструкций SSE2, использованный в P4 и способный значительно скорость его работы. При перекодировании больших объемов данных, где львиную долю всего процесса занимает переписывание информации из одного места памяти в другое, P4 лидирует. В играх же, начать следующие вычисления, как правило, не удается, не закончив предыдущие (процессор частично простаивает, пока предыдущая инструкция не выйдет с конвейера). И вот тут голову поднимает AXP. Масла в огонь подливают и различные наборы инструкций: 3DNow, 3DNow+, SSE, SSE2, - где скорость работы зависит от того, под какой процессор оптимизировано приложение. Первые модели P4 на ядре Willamette действительно ощутимо проигрывали иногда даже низшим по частоте моделям Pentium 3, не говоря уж об Athlon'ах. Но сейчас это отставание проявляется очень редко, если говорить о последних P4 Northwood c 533Mhz шиной (максимальная частота шины у AXP пока - 333Mhz). |