1995 | 1996 | 1997 | 1998 | 1999 | 2000 | 2001 | 2002 | 2003 | 2004 | Оглавление текущего номера /138, 1996 г./ | Бонус | Поиск  

Тестовая лаборатория

Pentium или Pentium Pro?

Иван Рузанов


© 2004, Еженедельник «Компьютерра» | http://www.computerra.ru/offline
Этого материала на сайте "Компьютерры", к сожалению, нет

Выпуск компанией Intel шестого поколения известного семейства микропроцессоров х86 взбудоражил компьютерную общественность –  Pentium Pro сразу же привлек к себе внимание обозревателей, аналитиков и простых пользователей. В то же время место этих процессоров на рынке не вполне ясно: то ли они заменят собой Pentium повсюду, от настольных и портативных систем до серверов, то ли удел Pentium Pro – высокопроизводительные рабочие станции и серверы верхнего уровня. Неясно также, сможет ли Pentium Pro составить конкуренцию RISC-процессорам в таких областях, как численные приложения и машинная графика.

Незнание порождает проблемы, а в данном случае заставляет многих покупателей гадать, какие же процессоры им приобретать – Pentium или Pentium Pro? Можно ли спокойно пользоваться плодами развития линии Pentium, устанавливая на ПК все более и более мощные процессоры, или нужно скорее переходить на новое поколение аппаратуры, чтобы не оказаться на обочине прогресса? Обоснованные ответы на эти вопросы зависят от реальной производительности новых процессоров, которую они смогут продемонстрировать на реальных приложениях.

Ситуацию усугубляет то, что специалисты делают самые разные прогнозы относительно производительности Pentium Pro из-за различия в методах ее оценки. Можно прочесть заявления как о двукратном превосходстве Pentium Pro над Pentium при одинаковой тактовой частоте, так и о небольшом (не более 30%) преимуществе Pentium Pro при работе с 32-разрядным кодом и данными и даже о его отставании при выполнении 16-разрядных приложений. В подтверждение подобных оценок приводятся результаты различных тестов, опубликованы уже десятки статей, в которых сравниваются Pentium и Pentium Pro, однако вопросы по-прежнему остаются В чем же дело? Прежде всего, подобные тестирования зачастую выполняются при работе процессоров лишь в одном режиме – 16- или 32-разрядном. Далее, многие признанные тесты, такие как WinBench, являются синтетическими, то есть испытывают несколько аспектов работы процессора, а полученные результаты усредняются с некоторыми весами для получения интегральной оценки. Подобные оценки достаточно хороши при сопоставлении компьютеров с одинаковыми процессорами, но неудобны при сравнении разных процессоров – по ним крайне трудно сделать вывод о том, как поведут себя процессоры при выполнении конкретных задач. Работа тестов, основанных на таких приложениях, как Microsoft Excel или Autodesk AutoCAD, сильно зависит от объема оперативной памяти, видеоадаптера и других компонентов компьютера, в которых влияние процессора прослеживается не столь явно, и это значит, что использовать их результаты для оценки быстродействия центрального процессора на других задачах достаточно сложно.

 

Такие распространенные тесты, как SPECint и SPECfp, лучше подходят для сравнения архитектур более сложных, чем IBM PC. Например, в тесты SPEC входят несколько подпрограмм, ориентированных на векторную и параллельную обработку, и неудивительно, что выдаваемые ими результаты быстродействия довольно безразличны покупателям персональных компьютеров. Индекс iCOMP, применяемый фирмой Intel для сравнения производительности своих процессоров, также является синтетическим, и в него крайне малый вклад вносят 32-разрядные тесты и тесты с плавающей точкой. С учетом всего перечисленного тестовая лаборатория "Компьютерры" решила разработать свой собственный тест для оценки производительности новых процессорных систем, считая, что в общую производительность компьютера помимо процессора вносят свою лепту кэш-память второго уровня, основная оперативная память и системная плата. Тест включает в себя фрагменты реальных программ, демонстрирующих работу процессорной системы в 16- и 32-разрядном режиме при обработке целых чисел, чисел в формате с плавающей точкой, а также эффективность взаимодействия с основной и кэш-памятью. Мы решили не объединять результаты тестов для того, чтобы читатели смогли сами выбрать те результаты, которые их интересуют больше всего. Тест состоит из следующих подпрограмм.

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

б) Подпрограммы сортировки и копирования 16- и 32-разрядных массивов, которые предназначены для оценки эффективности работы основной и кэш-памяти первого и второго уровней. Для этого мы сортировали методом Шелла и копировали массивы объемом в 512, 32768 и 524288 элементов с тем расчетом, чтобы первый массив целиком поместился в кэш-память первого уровня, второй – не поместился бы в кэш первого уровня, но целиком уместился бы в кэш-памяти второго уровня, а третий смог бы целиком расположиться только в основной памяти. Мы рассчитывали также, что в этих тестах проявятся некоторые возможные недостатки архитектурного решения Pentium Pro.

 

в) Подпрограммы для оценки быстродействия при операциях с числами с плавающей точкой одинарной и двойной точности, вычисляющие полное множество Мандельброта и обращающие матрицы размерности 90x90 методом Гаусса. В подпрограмме, вычисляющей множество Мандельброта, используются в основном арифметические операции над данными с плавающей ?????, а в подпрограмме, обращающей матрицы, существенный вклад вносят также команды обмена этими данными с памятью.

Так как число и тип операций, выполняемых процессором в каждом тесте, хорошо известны, не составит большого труда с достаточной точностью рассчитать быстродействие процессора и при выполнении многих других задач. Безусловно, созданные нами тестовые программы не претендуют на всеохватность – равно как и приводимые результаты не являются истиной в последней инстанции. Но стоит признать, что задачи, подобные включенным в наши тесты, встречаются в большинстве реальных приложений.

Здесь следует особо отметить исследование производительности операций над данными с плавающей точкой. Вполне возможно, что результаты таких тестов пока не столь важны для большинства пользователей – многие популярные приложения зачастую не выполняют подобных операций. Однако широкое развитие технологий multimedia, в частности работы со звуком и видео (например, сжатым по стандарту MPEG), несомненно, скоро повысит их значимость.

Сравнительный анализ двух процессорных подсистем с Pentium и Pentium Pro проводился в максимально близкой конфигурации на двух компьютерах, любезно предоставленных фирмой "Вист". Первый компьютер, VIST 1100, использовал в качестве центрального процессора Pentium с тактовой частотой 133 МГц (материнская плата Intel Zappa с базовым набором микросхем Triton, 256 Кбайт кэш-памяти второго уровня, 16 Мбайт основной оперативной памяти). Второй, VIST 2000, – это стандартная платформа Intel с процессором Pentium Pro 150 МГц (материнская плата Intel на микросхемах Orion, тоже 16 Мбайт оперативной памяти). Так как Pentium Pro интегрирует в себе кэш-память второго уровня объемом 256 Кбайт, то материнская плата таким кэшем не оснащалась.

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

Итак, о чем же свидетельствуют результаты тестов? Простой подсчет показывает, что Pentium Pro победил в 18 тестах из 24, при этом он оказался первым в 14 из 16 целочисленных тестов и лишь в 4 из 8 тестов с плавающей точкой. Если посмотреть на результаты более внимательно, то можно сделать вывод, что Pentium Pro не отстает от Pentium при выполнении 16-разрядных целочисленных тестов (только в одном из них Pentium оказался быстрее) и почти всегда оказывается первым в 32-разрядных тестах.

Что же касается преимущества Pentium при копировании больших 32-разрядных массивов, то оно, по-видимому, обусловлено различиями в работе алгоритмов контроллеров кэш-памяти второго уровня при многочисленных кэш-промахах, имеющих место в данном тесте. Такая ситуация не очень часто встречается в реальных задачах, но, вероятно, эти алгоритмы и набор микросхем Orion будут в дальнейшем оптимизированы.

Однако нельзя не отметить высокую эффективность работы кэш-памяти второго уровня Pentium Pro, особенно заметную при сравнении результатов тестов копирования 512- и 32768-элементных массивов. Парадоксом кажется то, что Pentium Pro копирует 16-разрядные массивы из 32768 элементов несколько быстрее, чем массивы из 512 элементов. Возможно, причиной этого является необходимость повторения нами каждого теста, и поэтому влияние соответствующего кода на небольших массивах становится более заметно. Здесь необходимо еще раз отметить превосходную работу внутренней кэш-памяти Pentium Pro.

Тесты с плавающей точкой показывают, что арифметические операции двойной точности быстрее выполняет Pentium. Это видно по результатам вычисления полного множества Мандельброта. Команды обмена с памятью данных с плавающей точкой быстрее выполняются на Pentium при 16-разрядном коде и на Pentium Pro – при 32-разрядном.

В целом, Pentium Pro показывает уверенное превосходство над Pentium при целочисленных вычислениях, причем не только на 32-разрядных приложениях. Очевидно, что оно будет только расти по мере доводки и оптимизации всего окружения процессора, а следовательно, Pentium Pro можно порекомендовать для выполнения приложений, использующих целочисленную арифметику.

Научные же программы, ориентированные на обработку данных с плавающей точкой, часто имеют следующую структуру не очень большой код, часто 16-разрядный для ускорения адресации, и значительный объем данных, обрабатываемых с повышенной точностью. На подобных приложениях Pentium будет работать быстрее, но все же, как уже давно известно, недостаточно быстро, чтобы обогнать RISC-процессоры. Поэтому и Pentium Pro вряд ли годится для серьезных приложений с такой структурой обработки данных.

Таким образом, Pentium Pro, скорее, не альтернатива, а, как и ожидалось, замена линии Pentium. Из-за своей цены новые процессоры сначала займут доминирующее положение в серверах и графических рабочих станциях и лишь затем – в простых настольных и портативных машинах.

В заключение добавим, что мы планируем сделать значительно более широкий обзор современных х86-со-вместимых микропроцессоров, втом числе всей линии Pentium (75-166 МГц), а также процессоров AMD/NexGen, Tl, Cyrix и других фирм.

От редакции: Тестовая лаборатория попыталась замерить показатели производительности процессорной системы на базе Pentium 150 МГц, но сборщики фирмы "Вист" "немного ошиблись", установив в компьютер процессор Pentium 90 МГц, что выяснилось лишь во время тестирования. Поэтому сравнить производительность процессоров с одинаковой тактовой частотой пока не представилось возможным.

 


1995 | 1996 | 1997 | 1998 | 1999 | 2000 | 2001 | 2002 | 2003 | 2004 | Оглавление текущего номера /138, 1996 г./ | Бонус | Поиск  

© 2004, Издательский дом «Компьютерра» | http://www.computerra.ru
Телефон редакции: (095) 232-22-61
E-mail редакции: inform@computerra.ru