Материал опубликован - 05/03/2001
Несколько слов об FPU
Я часто встречаю утверждения о том, что интеловские процессоры
всегда имели самые быстрые сопроцессоры. И в связи с этим интеловские процессоры
называют самыми быстрыми и надежными. Попробуем разобраться - так ли это?
Ну что ж, заглянем немного в прошлое. С появлением сопроцессора i387 у извечных
конкурентов - Cyrix, AMD и некоторых других(кстати раньше их было больше) появились
альтернативные разработки. И вот здесь нас ожидает сюрприз - самыми быстрыми
и точными процессорами этого класса были сопроцессоры Cyrix. Да, да, именно
того Cyrix, который сейчас имеет самый слабый сопроцессор. Например, вместо
реализованных в интеловских сопроцессорах алгоритмов, использовались матричные
умножители.Но в то же самое время на рынке появились еще более быстрые числодробилки
- сопроцессоры Weitek. Эти процессоры были построены по другой архитектуре и
поэтому были несовместимы с интеловскими. Но! Они имели на порядок более высокое
быстродействие. Некоторые программы имели возможность использовать эти сопроцессоры,
но микропроцессорный гигант победил, и о фирме Weitek сейчас никто не помнит.
Интересный факт - фирма Intel всегда переключалась на производство более новых
процессоров раньше своих конкурентов. В результате конкуренты создавали усовершенствованные
процессоры старой архитектуры, порой конкурирующие с новейшими разработками
Intel(так было с 386 и 5х86). Из-за этого самые мощные процессоры предыдущих
разработаны фирмами AMD и Cyrix.
Теперь вспомним появление пентиумов. Первые из них имели ошибку именно в блоке
плавающей запятой, причем фирма Intel согласна была заменить процессор только
в том случае, если вы сможете доказать, что эта ошибка может серьезно повредить
вашей работе. В противном случае - извините... Кстати, Pentium Pro имел более
слабый сопроцессор, чем простой Pentium.(Что же тогда означает довесок - Pro?).
На этот раз конкурирующие фирмы прозевали нарастающую популярность сопроцессора
и сильно испортили свою репутацию. Еще больше ухудшило положение введение Р-рейтинга.
Сейчас объясню почему. Сопроцессоры альтернативных производителей уступали интеловским
процессорам ~15% производительности но одинаковой частоте. Маркированные с использованием
Р-рейтинга процессоры реально работали на меньшей частоте(например AMD K5-PR133
работал на частоте 100Mhz). При этом разрыв в быстродействии FPU увеличивался
до 25-30%. Окончательно ухудшило ситуацию программное обеспечение - оптимизированное
под конвейерный сопроцессор Intel, оно довело разницу до устрашающих пределов.
Я не хочу сказать, что Intel Pentium плохой процессор, напротив, применение
конвейерного сопроцессора большой шаг вперед(к RISC). Просто не надо раздувать
из мухи слона. Новейшая технология AMD 3Dnow! позволяет достичь 10-кратного
превосходства над традиционными FPU, но поклонники Intel продолжают утверждать,
что сильнее Intel зверя нет.
В заключение, я хотел бы напомнить, что не следует путать понятия процессор
и сопроцессор(изначально это были разные микросхемы). Ведь целочисленный блок
у конкурирующих процессоров всегда был сильнее, чем у Intel. А именно он и является
по определению процессором (или основной его частью).
P.S. Вопрос о будущем х86 - А можно ли создать хороший, быстрый процессор, если
его набор команд составляет несколько сотен инструкций?.
Первоисточник: hardware.ul.ru
