⇣ Содержание
Опрос
|
реклама
Самое интересное в новостях
Во сколько раз Athlon FX быстрее Pentium 166MMX?
Автор: Лев Дымченко
Следующая страница →
Уже давным-давно, в прошлом столетии, высокопроизводительные персональные компьютеры получили повсеместное распространение. Собственно, высокопроизводительными они были только на момент выпуска, очень скоро новые системы, превращались в устаревшее, мало пригодное для современных программ железо, нужное разве что скупщикам БУ. С другой стороны, производительность процессоров в новых персональных компьютерах значительно превышала мощность дорогостоящих рабочих станций и суперкомпьютеров прошлого. Последнее десятилетие было во многом особенным в развитии вычислительной техники, нарастание скорости процессоров шло высокими темпами, не останавливаясь ни на минуту. Причём, увеличение производительности сопровождалось постоянным снижением стоимости готовых решений. Производительность процессоров стала такой большой, что многие программы стали производить безо всякой оглядки на производительность, всё равно скорость новых систем превысит мыслимые потребности. Проще подождать слегка более новых процессоров, чем заниматься оптимизацией быстродействия. Достаточно часто возникает вопрос - во сколько именно раз самый современный процессор быстрее самого быстрого процессора вчерашнего дня? К сожалению, обзоры на популярных Интернет-ресурсах, посвящённых компьютерному "железу", не могут дать исчерпывающий ответ на этот вопрос. С течением времени состав набора тестов менялся, одни тесты постепенно заменялись другими. Выходили новые приложения и игры, новые версии и патчи и навряд ли вы найдёте даже одно неизменное по прошествии лет приложение. Есть и другие трудности, часто критичные к производительности приложения оптимизируются в расчёте на современную им архитектуру процессоров и на более ранних менее производительных процессорах они выполняются не оптимальным образом, так как всё равно не рассчитаны на работы на медленных процессорах. Таким образом, сравнительная производительность старых процессоров получается заниженной по отношению к новым на тот момент. С другой стороны, оптимизированные под старую архитектуру приложения могут не так быстро выполняться на процессорах новых поколений. Они и не знают о новых наборах инструкций и других возможностях, появившихся в новых процессорах. Таким образом, сравнить скорость старых и новых процессоров не просто, даже если вы благодаря Машине времени, смогли раздобыть все необходимые системы разных лет, и запустить на них один и тот же набор тестов производительности. Тесты SpecЧто же делать? Как измерить соотношение скоростей различных поколений процессоров? Мы воспользуемся набором тестов Spec. Это более-менее признанный в индустрии межплатформенный набор тестов производительности процессора, чипсета и памяти. В какой-то мере и операционной системы. В чём его суть и почему он - межплатформенный? Входящие в тест программы изначально даны в исходных текстах на языках программирования высокого уровня и не привязаны ни к какой-то определённой процессорной архитектуре, ни к операционной системе. Для тестирования некой системы её производитель выбирает самую лучшую операционную систему и самый лучший оптимизирующий компилятор. Набор исходных текстов тестовых приложений компилируется в расчёте на конкретный процессор со всем возможными оптимизациями. Таким образом, один и тот же набор задач используется для тестирования совершенно разных систем, так, что бы все системы были в равных условиях. Можно, конечно? отметить, что это не совсем чистый процессорный тест. Качество, в первую очередь, компилятора имеет большое значение. Если реализовывать задачи в ручную с применением ассемблера, то могут получиться совсем другие результаты. Но использование ассемблера и трудоёмкой ручной оптимизации оправдано только в отдельных случаях, хотя и важных. В большинстве же случаев это не выгодно, так что процессор без хорошего компилятора не очень ценен. Или если процессорная архитектура пусть в принципе производительна, но трудна с точки зрения создания компилятора с автоматической оптимизацией программ под данную архитектуру, это тоже не так хорошо. Таким образом, идея тестов Spec имеет право на существование, хотя нельзя её абсолютизировать. Кстати, ещё один недостаток такого подхода заключается в постепенной потери актуальности задач из неменяющегося тестового набора. Как кто-то пошутил, Spec - это тестирование завтрашних компьютеров на вчерашних задачах. Но это, собственно, нам и надо для нашего исследования производительности различных поколений процессоров. Мы используем результаты тестов из Spec2000 и Spec95. Собственно, Spec2000 создан в 2000 году и не менялся до сих пор, он охватывает все современные процессоры. Spec95 идёт где-то с 95 года и оценивает уже почти что древние процессоры, но, тем не менее, воспоминания о них вполне свежи в нашем сознании. Для сравнения производительности процессоров, измеренной Spec95, с производительность систем, определённой на основе Spec2000, мы введём условные передаточные коэффициенты между Spec2000 и Spec95 на основе результатов процессоров, которые попали в пересечение времени существования двух тестов. И для которых, таким образом, есть результаты измерения в обоих тестовых наборах. Поскольку нам нужно довольно примерно сравнить производительность, то такой подход сгодится. Да, использование результатов, опубликованных на сайте Spec.org, разрешено только честным образом в соответствии с принципами честного использования результатов тестов Spec, которые сформулированы здесь. Мы будем использовать данные тестов честным образом. В состав тестового набора Spec2000 входит 26 приложений, они довольно условно разбиты на две группы Spec Int - программы, выполняющие целочисленные операции - и Spec FP - программы, интенсивно использующие вычисления с вещественными числами. ПроцессорыВыберем теперь для исследования несколько процессоров разных лет. На сайте этой организации по оценке производительности есть великое множество результатов тестирования процессоров, но не все. Некоторые процессоры производители не желают тестировать и публиковать их результаты, например, для новых Celeron данные так просто не найти. То ли по причине их крайне низкой производительности, то ли наоборот, слишком высокой. Наверное, официальное объяснение заключается в том, что Celeron не предназначен для задач, включённых в Spec, это задачи, в основном, научно-технического свойства, а не непосредственно потребительские. К ознакомлению списка тестовых приложений мы ещё перейдём, а пока выберем процессоры. Многих амдешных процессоров тоже нет, AMD вообще некоторое время игнорировало Spec и она не принимала особого участия в заготовке тестов. До введения AMD набора инструкций SSE2 процессоры Athlon не показывали высокие результаты, поскольку в тестах, в основном, используются вещественные числа с двойной точностью, с которыми и работает этот набор инструкций. Итак, начнём с Pentium100. Это будет отправной точкой для сравнительной производительности. Далее, популярный Pentium166MMX, мощный для своего времени PentiumII 350, PentiumII 450, Pentium III 450 на легендарном чипсете BX, Pentium III 500, классический Pentium III 800EB, он же разогнанный по шине Pentium III 600E, процессор из времени расцвета AMD Athlon 900, поздний Pentium III 1100, модифицированный Pentium III 1400 и самый первый Pentium 4 1300 с RDRAM. Один из последних простых Athlon 1200, Athlon XP 1600+, продолжатель дела Pentium III процессор Pentium M 1000, устоявшийся Pentium4 2000A, Athlon XP 2200+, самый прогрессивный в своё время Pentium4 2400C, и, напоследок, Athlon XP 3200+, Pentium4 3200E Prescott и ускоренная редакция Athlon 64 процессор AthlonFX-51.
Необходимо отметить, что важным параметром является не только размер КЭШа, но и скорость его работы. Например, первые Pentium III имели КЭШ объёмом 512KB, но он работал на половинной частоте процессора. Далее Pentium III получили КЭШ размером 256KB, но на полной частоте. У первых же Pentium КЭШ второго уровня вообще располагался отдельно от кристалла. ТестыПоскольку тут присутствуют процессоры, протестированные различными версиями Spec, приведём в первую очередь относительные результаты по сравнению с индексом производительности Pentium100. Однако, следует помнить, что приведённые на spec.org данные тестирования производителями своих процессоров могут быть меньше максимально возможных. По многим причинам, например, Intel любит тестировать процессоры на своих собственных материнских платах, не имеющих агрессивной настройки на производительность. И тайминги памяти тоже не самые быстрые устанавливаются. AMD, в свою очередь, использует для компиляции тестов, как правило, Intel Compiler, но не самую последнею версию, поскольку самая последняя на тот момент ещё не стала общедоступной. Так что результаты могут иметь погрешность до 5-10% процентов, но для примерной оценки соотношения производительности это значения не имеет. В некоторых случаях тестировались компьютеры класса рабочая станция с использованием памяти с коррекцией ошибок, что так же несколько снижало результаты. И со временем для старых процессоров могли появляться новые более производительные чипсеты и типы памяти. В ниже приведённой таблице собранны данные тестов Spec Int 2000 и Spec FP 2000, а так же среднее значение, по отношению к показателю процессора Pentium100, и, для справки, абсолютные значения тестов. Результаты, отмеченные * получены путём экстраполяции значений Spec 2000 на более старые процессы при помощи сравнения результатов Spec 95. Athlon 900 примерно в десять раз быстрее Pentium100, а Athlon XP 1600+ в десять раз быстрее Pentium166 MMX. Pentium III 500 в шесть раз быстрее Pentium100, а Pentium3200, в свою очередь, более чем в шесть раз быстрее Pentium III 500. Athlon FX-51 в четыре раза быстрее Athlon 900. Самый последний Pentium4 почти в три раза быстрее самого первого. Видно, что архитектура Pentium II была существенно более продвинута и по производительности, и по частоте, чем первые Pentium, и только самые новые Pentium4 опережают младшие модели Pentium II в десять раз. Pentium III 800EB всего в четыре раза проигрывает самым современным моделям. А Pentium4 2000 уже почти в два раза медленнее самых новых процессоров. Итак, со времён Pentium100 производительность процессоров для персональных компьютеров увеличилась примерно в сорок раз. За десять лет с 1995 по 2004 года каждый год производительность увеличивалась в среднем в 1.44 раза, то есть, удваивалась каждые два года. Рост производительности, кстати, даже несколько опередил рост частоты процессоров. Причём, не только для процессоров AMD, последние процессоры которой имеют частоту 2.2-2.4 GHz, но и для Intel. Pentium4 3200 имеет частоту в 32 раза больше, чем Pentium100, а работает он примерно в 40 раз производительней. Возможно, тут свою роль так же сыграло улучшение качества компиляторов. Но всё же увеличение частоты в целом было главной и основной причиной роста производительности. Производители процессоров в первую очередь стремились обеспечить масштабирование производительности по частоте, уменьшить ограничения, связанные с памятью и т.п. Сплошной линией показана сглаженная линия результатов Spec, вокруг которой колеблются текущие результаты. Чётко виден экспоненциальный характер роста производительности. Заметно, что в некоторые периоды времени показатель Spec Int увеличивался быстрее, чем Spec FP, и наоборот. К рассмотрению специфики Spec Int и Spec FP мы вскоре и перейдём. Так или иначе, последние десять лет мы могли наслаждаться бурным экспоненциальным ростом быстродействия настольных компьютеров. И конца этому не было видно. Если Вы заметили ошибку — выделите ее мышью и нажмите CTRL+ENTER.
|