Что такое fpu в компьютере. Голая производительность - Исследуем эффективность ALU и FPU. Тестирование качества работы GPGPU

FPU (Floating Point Unit) - блок, производящий операции с плавающей точкой (часто говорят запятой) или математический сопроцессор.

FPU помогает основному процессору выполнять математические операции над вещественными числами.

Сначала он применялся опционально, в качестве дополнительного процессора.

Непосредственно в кристалл процессора FPU был впервые интегрирован в 1989 году (процессор Intel 80486).

Драйвер AMD Radeon Software Adrenalin Edition 19.9.2 Optional

Новая версия драйвера AMD Radeon Software Adrenalin Edition 19.9.2 Optional повышает производительность в игре «Borderlands 3» и добавляет поддержку технологии коррекции изображения Radeon Image Sharpening.

Накопительное обновление Windows 10 1903 KB4515384 (добавлено)

10 сентября 2019 г. Microsoft выпустила накопительное обновление для Windows 10 версии 1903 - KB4515384 с рядом улучшений безопасности и исправлением ошибки, которая нарушила работу Windows Search и вызвала высокую загрузку ЦП.

Драйвер Game Ready GeForce 436.30 WHQL

Компания NVIDIA выпустила пакет драйверов Game Ready GeForce 436.30 WHQL, который предназначен для оптимизации в играх: «Gears 5», «Borderlands 3» и «Call of Duty: Modern Warfare», «FIFA 20», «The Surge 2» и «Code Vein», исправляет ряд ошибок, замеченных в предыдущих релизах, и расширяет перечень дисплеев категории G-Sync Compatible.

Драйвер AMD Radeon Software Adrenalin 19.9.1 Edition

Первый сентябрьский выпуск графических драйверов AMD Radeon Software Adrenalin 19.9.1 Edition оптимизирован для игры Gears 5.

Всем привет Сегодня моя задача состоит в том чтобы написать вам значение такого слова как FPU, ну вернее это даже не слово, а аббревиатура. И расшифровывается она как Floating Point Unit и знаете что это такое? Это блок, производящий операции с плавающей точкой, ну типа с запятой. Также можно сказать что это математический сопроцессор.

FPU помогает процессору (CPU) выполнять математические операции. Раньше, ну очень и очень давно FPU был отдельно, а уже потом в 1989-ом году он стал частью процессора. Хотя все равно все это древность.

Вот нашел картинку в тему, что тут показано, то это конечно я не особо понимаю:

Однако меня удивляет то, что я раньше не слышал про FPU, учитывая тот факт, что такие слова как Northwood и Prescott (они на картинке выше написано), то эти слова мне хорошо знакомы: это ядра процессоров Pentium 4. Я просто в прошлом был большой фанат Pentium 4..

Ладно, вот что еще интересного я узнал. Знаете есть программа под названием AIDA64? Ну это программа для того чтобы узнать температуру процессора, видеокарты, да в общем всего что только можно. Ну так вот, в этой программе также есть стресс-тест, можно протестировать компьютер на выносливость так бы сказать. Ну так вот, если этот тест запустить, ну то есть открыть окно теста, то вот там будет перечень того, что будет протестировано, ну и вот среди этих галочек тут есть также такое как Stress FPU:


Ну я так понимаю, что FPU это и есть математический сопроцессор, верно? Хотя не знаю, бред это или нет, но вот на другом сайте написано что FPU в AIDA64 это тест вентиляторов для охлаждения, ну которые стоят в компьютере… Но вроде это неверная информация, думаю что FPU это все таки сопроцессор

Вот нашел плату, смотрите:


Честно скажу, что я не знаю где именно, но тут вроде как есть сопроцессор FPU Intel 287-10, то есть он идет вроде как отдельно. Но где именно находится, то точно не могу сказать, увы. В любом случае все это сильная древность. Сейчас FPU уже сидит в самом проце и вообще о нем мало кто знает, ибо не особо интересно Однако я вот о чем подумал, а на производительность он влияет как-то?

    AIDA64EXTREME

    Тип лицензии :

    Крякнутая

    Языки :

    Windows 8, 8 64-bit, 7, 7 64-bit, Vista, Vista 64-bit, XP, XP 64-bit

    Скачано :

Тестирование производительности

AIDA64 предполагает наличие несколько тестов, используемых для определения производительности отдельных агрегатов оборудования или полной системы в целом. Такие тесты относят к разряду синтетических, способных оценить теоретическую наивысшую производительность системы. Тестирование пропускных возможностей памяти, самого центрального процессора или же FPU-блоков происходит на базе системы тестирования AIDA64, способной поддерживать до 640 потоков обработки одновременно, а также десяток групп процессора. Осуществляется поддержка гиперпотоковых и мнгоядерных технологий, также мультипроцессоров - SMP.

Система AIDA64 даёт возможность за счёт отдельных тестов проводить оценку пропускной способности считывания, записи, копирования и торможения кэша. Ко всему этому прилагается модуль-тест, позволяющий оценить работу накопительных устройств, в частности жестких дисков (S)ATA или SCSI, SSD-накопителей, RAID-массивов, карт памяти, оптических дисков, и USB-накопителей.

Тестирование качества работы GPGPU

Эта тестовая панели располагает набором тестов OpenCL GPGPU. Доступ к этой функции вы можете получить в разделе Сервис/Тест GPGPU. Благодаря им оценивают вычислительную производительность с использованием различных нагрузок OpenCL. Каждый отдельно взятый тест можно проходить на 16-ти графических процессорах, в том числе процессорах NVIDIA, AMD и Intel, или же их комбинировать. Несомненно, идёт полная поддержка конфигураций CrossFire, SLI, APU и dGPU. В целом такая функция позволяет определить уровень производительности любой вычислительной техники, предоставленной в качестве графического процессора устройств OpenCL.

AIDA64 проводит не только комплексные тесты, но и микротесты, которые есть в разделах "Тесты"/ "Страница". За счёт полной базы данных показатели можно сравнивать с аналогичными по другим конфигурациям.

Тестирование уровня производительности памяти

Такие тесты предлагают оценку наивысшей пропускной способности при осуществлении таких задач, как чтение, записывание и копирование. Написаны на языке ассемблера и оптимизированы под самые популярные ярда процессоров - VIA, AMDи Intel. Здесь применяются расширенные наборы команд: SSE, SSE2, SSE4.1, 8x86/x64, x87, 3DNow!, MMX, MMX+ и AVX, AVX2.

Кроме того, тест позволяет оценить задержку памяти, что происходит из-за считывания процессором данных из памяти системы. Задержка памяти являет собой время, на протяжении которого идёт передача данных в регистре целочисленной арифметики процессора после того, как происходит выдачи команды для считывания.

Целочисленный тест CPU Queen

Этот простой тест оценивает, как идёт работа по предсказанию ветвлений центрального процессора и осуществляется ошибочный прогноз ветви. Происходит выдача решений для головоломки с 8 ферзями, расположенными на шахматной доске 10х10. Учитываем теорию: если тактовая частота одинакова, тот процессор, который обладает более укороченным конвейером и у которого более низкий уровень накладных расходов, в результате ошибочного прогноза ветвления способен показать лучшие результаты теста. К примеру, отключая гиперпотоковость, Pentium 4 на основе Intel Northwood получит баллы выше, чем Intel Prescott. Это происходит потому, что в первом процессоре есть 20-ступенчатый конвейер, а в последнем - 31-ступенчатый. Целочисленные оптимизации CPU Queen - MMX, SSE2, SSSE3.

CPU PhotoWorxx

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

  • заполнение рисунка пикселями цветом, выбранным случайно;
  • поворот картинки против часовой стрелки на 90 градусов;
  • разворот изображения на 180 градусов;
  • дифференцирование изображения;
  • превращение пространства цветов, что может использоваться, к примеру, при преобразовании формата JPEG.

Тестпредназначе в основном для блоков арифметики SIMD-архитектуры главного процессора и существующих подсистем памяти. Наборы указаний CPU PhotoWorxx имеют следующие расширения: x87,MMX, MMX+,AVX, AVX2, 3DNow!, 3DNow!+, SSE, SSE2, SSSE3, SSE4.1, SSE4A, а также идёт поддержкаNUMA, мультипроцессоры (SMP), гиперпотоковость, и многоядерность (CMP).

CPU ZLib

Предложенный целочисленный тест даёт комбинированную оценку производительности главного процессора и подсистемы памяти благодаря сжатию данных ZLib. Инструкции применяются основные x86, но поддержка гиперпотока, мультипроцессоры (SMP) и многоядерность (CMP).

CPU AES

Представленный целочисленный тест оценивает производительность главного процессора при выполнении шифровки по криптоалгоритму AES (симметричному алгоритму шифрования по блокам). На сегодня AES используют в нескольких инструментах сжатия: 7z, RAR, WinZip. Применяют и в программных шифровках TrueCrypt, BitLocker, FileVault (Mac OS X). Инструкции следующие: x86, MMX и SSE4.1. Система аппаратно ускорена на процессорах VIA C3, C7, Nano и QuadCore, с технологиями поддержки VIA PadLock Security Engine. Применима и для процессора с набором команд Intel AES-NI. Идёт поддержка гиперпотоковости, мультипроцессоры (SMP) и многоядерности (CMP).

CPU Hash

Этот целочисленный тест определяет производительность центрального процессора за счёт алгоритма кэширования SHA1 в соответствии с Федеральным стандартом обработки данных 180-4. Код выполнен на языке ассемблер и оптимизирован под основные ядра AMD, Intel и VIA с учётом использования следующего набора команд SSE2, SSSE3, MMX, MMX+/SSE, AVX, AVX2, XOP, BMI, а также BMI2. Тест CPUHash - ускорен аппаратно на процессорах VIA C7, VIA Nano и VIA QuadCore, которые могут использовать технологию VIA PadLock Security Engine.

FPU VP8

Данный тест проводит анализ сжатия видео кодеком Google VP8 (WebM) по версии 1.1.0. Осуществляется кодировка за 1 проход видеопотока, имеющего расширение 1280x720 и идущего со скоростью 8192 кбит/с (с учётом максимально настроенного качества). Составляющие кадров генерируются при помощи модуля фракталов Жюлиа FPU. Здесь применяется следующие расширения и наборы команд: MMX, SSE2, SSSE3 или SSE4.1. Тут также поддерживается мультипроцессоры (SMP), многоядерность (CMP) и гиперпотоковость.

FPU Julia

При помощи этого теста оценивают производительность операций одинарной точности (с плавающей частотой для 32-битной системы). Происходит вычисление нескольких кусочков фрактала Жюлиа. Используют тот же язык, подходит под ядра AMD, Intel и VIA с использованием таких наборов команд: x87, 3DNow!, 3DNow!+, SSE, AVX, AVX2, FMA и FMA4. Поддержка аналогичная.

FPU Mandel

Операции двойной точности с плавающей запятой для 64-битной точности тестируют при помощи FPUMandel. Осуществляется моделирование частей фрактала Мандельброта. Язык тот же, процессоры такие же, поддержка, как и в предыдущих тестах. Набор команд: FMA и FMA4, x87, SSE2, AVX, AVX2,

FPU SinJulia

Тест проводит оценку операций повышенной точности с плавающей запятой (80-битная система). Вычисления делаются по каждому взятому кадру с применением фрактала Жюлиа(модифицированного). Язык - как и в предыдущих вариантах, ядра те же, использование тригонометрических и экспоненциальных инструкции архитектуры x87. Поддерживает гиперпотоковость, многоядерность (CMP) и мультипроцессоры (SMP).

08.08.2012

Вплоть до появления процессоров Intel Core никто не задумывался над понятием "эффективность ядра", а ведь его значение оказалось значительно выше, нежели воспеваемых до этого частот и объема кэшей. Но как представить эффективность ядра в цифрах. Мы предлагаем вам один из вариантов, используя который можно с другого угла оценить производительность.

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

Благодаря чему тот или иной процессор демонстрирует соответствующую производительность? Этот вопрос терзал многих любителей и профессионалов от мира железа. Очень давно главным мерилом производительности являлась тактовая частота. Чуть позже внимание переключилось частоту передней шины, затем на объемы кэшей, а после на количество ядер. Но всегда стороной обходилось кое-что, что действительно напрямую влияло на скорость вычислений.

Это кое-что, несомненно, чистая производительность двух важнейших блоков современных x86 процессоров: блока целочисленных вычислений (ALU – Arithmetic Logic Unit) и блока вычислений с плавающей запятой (FPU – Floating-Point Unit). Именно общность их характеристик и определяет понятие архитектуры – и к кэшу или частоте данное понятие не имеет никакого отношения, в то время как на общую производительность процессора влияет напрямую.

Итак, перед тем как начнем большое исследование, давайте разберемся, что же это за блоки, чем они занимаются и как устроены. Как я уже сказал, в данном материале не идет речь о работе с памятью, кэшами и прочими дополнениями, говорить мы будем только об ALU и FPU, ну и естественно, о двух их важных составляющих – конвейерах и блоке предсказания ветвлений. Ну и немного поговорим о технологии Hyper-Threading от Intel, так она напрямую влияет на производительность ядра при выполнении простейших операций.

Блок целочисленных операций

Первый и основной блок процессора. Хотя, правильнее сказать не блок, а блоки, так как их в процессорах несколько. Грубо говоря, на заре развития, кроме этого блока в процессоре практически ничего и не было. Основная задача ALU, начиная с самых первых моделей и заканчивая современными монстрами, не изменилась. Он все также работает с простыми (целыми) числами, производя операции сложения, вычитания, сравнения, преобразования чисел; выполняет простейшие логические операции, а также битовые сдвиги.

Заметьте, что на ALU не возложены задачи умножения и деления, а все потому, что данные типы вычислений встречаются довольно редко, и как следствие для них выделили собственный блок – “целочисленный умножитель”, благодаря которому удалось поднять производительность ALU, избавив его от нестандартных задач. Операции деления также возложены на умножитель, и выполняются с помощью специальной таблицы констант. Вот такой, весьма простой блок, производительность которого напрямую влияет на производительность процессора во многих задачах, например офисных приложениях, многочисленных специфических программах для расчетов и.т.д.

Блок вычислений с плавающей запятой

Этот блок появился в процессорах гораздо позже, чем ALU, и первое время даже рассматривался как сопроцессор. Однако позже он все же мигрировал в ядро основного процессора и с тех пор является его неотъемлемой и очень важной частью (также как и в случае с ALU, данный блок в процессоре не один). Как ясно из его названия, основной задачей FPU является именно операции над числами с плавающей запятой.

С тех пор как данный блок появился в составе CPU, нагрузка на него все время росла, что в итоге привело к тому, что нагрузка на FPU чаще всего превышает нагрузку на ALU. Кроме того, учитывая высокую универсальность данного блока, на него постепенно “навешивали” дополнительные функции, в частности в данный момент именно он работает со всеми потоковыми разрешениями и занимается обработкой векторных данных, коих в современных процессорах уже очень много. От производительности этого блока зависит производительность процессора в абсолютном большинстве приложений, особенно в мультимедиа, играх, 3D работе с фотографиями и.т.д.

Конвейер

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

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

Однако есть у конвейера и недостатки являющиеся следствием достоинств. Главный – это необходимость обнулять весь конвейер вследствие неожиданного изменения хода программы. Чаще всего, такое случается в случае использования в коде условных операторов, которые в зависимости от условий меняют дальнейшие данные и пути.

Есть и еще один важный момент: конвейеры разных процессоров имеют разное количество стадий. Плюс коротких конвейеров в том, что они позволяют достичь большей производительности при равной частоте, в то время как длинный конвейер способствует достижению большей тактовой частоты. Простой пример из жизни: процессоры AMD Athlon XP и Athlon 64 с архитектурами K7 и K8, соответственно, когда-то конкурировавшие с процессорами Intel Pentium 4 с архитектурой NetBurst. Как вы, наверное, помните, многие процессоры в данных линейках были очень близки между собой по производительности, но при этом категорически отличались по характеристикам. В частности, Athlon 64 3200+ при тактовой частоте 2200 мегагерц, чаще всего превосходил Pentium 4 с частотой 3200 мегагерц. Причина данного факта в разной длине конвейера: если AMD, традиционно, использовала короткий 12-стадийный, то Intel в Pentium 4 использовала гораздо более длинный 20-стадийный, а чуть позже и 31-стадийный! Отсюда и заметная разница в производительности.

Блок предсказания ветвлений (блок предсказания условных переходов)

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

Итак, чем же занимается этот блок? Все просто – он работает штатным ясновидящим процессора, то есть, превосходя события (читай расчеты ошибочной ветви данных), определяет, будет ли выполнен условный переход или нет. Естественно, никакого гадания на кофейной гуще нет. В данный момент основным и приоритетным, является динамический метод предсказания переходов, при котором блок предсказания ветвлений не только анализирует данные и инструкции, которые готовятся к обработке процессором, но еще анализирует историю аналогичных переходов, которую сам же и накапливает. Благодаря тому, что он постоянно отслеживает итоговый результат (угадал или нет), и сравнивает его со своим предсказанием, дополняя собственную статистику, эффективность предсказаний в аналогичных ситуациях в будущем значительно увеличивается. Из-за такой тактики, правильных предсказаний у данного блока гораздо больше, чем неправильных – современные процессоры от Intel и AMD в 95-97 случаях верно определяют направление условного перехода. Естественно, благодаря этому, обнуление конвейера происходит относительно редко.

Ну что же, небольшой ликбез по процессорам вы получили и теперь мы сможем рассмотреть, как же все это работает в реальности, насколько эффективна та или иная архитектура и как эффективны блоки ALU и FPU (и естественно, их вспомогательные блоки). Чтобы иметь возможность охватить как можно больший спектр процессорных ядер и одновременно минимизировать влияние на результаты тестов, таких немаловажных частей современных CPU как кэш, процессорная шина и пропускная способность подсистемы памяти, мы обратились к тестовому пакету AIDA 64. Причем из пакета были выбраны лишь два синтетических теста – CPU Queen и FPU SinJulia. Почему именно они? Ответ скрывается в самом принципе их функционирования и полном соответствии требованиям данного теста. Для того чтобы понять, как отражаются на результатах теста те или иные архитектурные особенности каждого теста, давайте заглянем в официальное описание:

CPU Queen

Простой целочисленный тест. Результат зависит, прежде всего, от производительности Блока Целочисленных Операций, но также очень чувствителен к эффективности Блока Предсказания Ветвлений, так как его код содержит множество условных переходов.

На равных тактовых частотах процессоров преимущество получит модель с более коротким конвейером и меньшим количеством ошибок предсказаний. В частности, при отключенном HyperThreading, процессор Pentium 4 на ядре Northwood получит более высокий результат, нежели модель с ядром Prescott, так как в первом случае используется более короткий 20-стадийный конвейер, против 31-стадийного во втором.

При этом включение HyperThreading может изменить расстановку сил и позволить победить уже Prescott. Кроме того, производительность процессоров AMD семейства K8 должна быть выше, нежели у моделей семейства K7, благодаря применению в них улучшенного Блока Предсказания Ветвлений.

Тест CPU Queen использует потоковые расширения MMX и SSE, вплоть до версии SSSE3. Занимает менее 1 мегабайта в оперативной памяти. Поддерживает HyperThreading, многопроцессорные системы (SMP) и многоядерные процессоры.

Выбор данного теста продиктован, прежде всего, возможностью полностью искоренить влияние на результат подсистемы памяти и объема кэшей всех уровней. То есть получить результат работы именно ALU, поддерживаемого блоком предсказания ветвлений. Другие тесты из пакета ALU, хоть и незначительно, но все же ощущают влияние частоты и объема кэшей, а также пропускной способности процессорной шины и шины памяти. А в нашем случае, когда будут сравниваться десятки процессоров разных поколений, разница в производительности этих подсистем может достигать нескольких порядков. Например, в одну таблицу попадают: процессор Pentium III использующий память типа SDR-133 с шириной шины памяти в 64 бита, и Core i7 имеющий 192-битную шину памяти и работающий с памятью DDR3-1333.

А вот поддержка HT в данном случае не очень радует, так как многие процессоры в списке его не поддерживают, как и многие реальные приложения. Впрочем, данный факт мы будем просто держать в уме при прямом сравнении двух процессоров с поддержкой и без поддержки HT.

FPU SinJulia

Тест на вычисления с плавающей запятой, и с увеличенной точностью (80 бит). В основе теста лежит расчет одного кадра модифицированного фрактала Julia. Код данного теста написан на ассемблере, а потому отлично оптимизирован как для процессоров Intel, так и AMD. В особенности тех ядер, которые могут использовать тригонометрические и экспоненциальные x87 инструкции.
Тест FPU SinJulia занимает менее 1 мегабайта в оперативной памяти. Поддерживает HyperThreading, многопроцессорные системы (SMP) и многоядерные процессоры.

Как видите, FPU тест SinJulia также как и CPU Queen, полностью независима от производительности подсистемы памяти, а также частоты и объема кэшей процессоров. Более того, результат SinJulia будет объективен даже при сравнении древнего K6-III и современного Phenom II, благодаря тому, что тест не использует потоковые расширения типа MMX и SSE. Ну а высокая точность вычислений позволяет сделать вывод адекватный для современных задач возлагаемых на CPU.

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

результат теста/количество ядер/таковая частота

Поделив данные значения для каждого процессора, мы получили результат одного ядра на один такт. Учитывая описание тестов необходимо сделать несколько поправок. Первая: при наличии поддержки HyperThreading, процессор всегда получает больший результат. Вторая: процессоры, не поддерживающие SSE, будут демонстрировать меньший результат в тесте ALU, то есть CPU Queen. Благо в списке таких процессоров не много, фактически это лишь AMD K6-III.

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

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

Теперь давайте поговорим о том, как же мы все это протестировали. Если вы уже посмотрели на сводную таблицу, то, наверное, заметили, что в ней присутствует 61 процессор разных поколений. Конечно, не все из них были протестированы в нашей лаборатории, процессоров протестированных в нашей тестовой лаборатории лишь чуть больше трети. Значительная часть результатов была взята из базы данных самой программы AIDA 64 2.50, которая была единственным тестовым пакетом в данном сравнении. Естественно, слепо полагаться на приведенные результаты мы не стали. И перепроверили результаты их базы, проведя собственные тесты, для нескольких аналогичных процессоров. Результаты, если учитывать погрешность на опорную частоту и соответственно разницу в таковых частотах, порадовали, продемонстрировав практически полную аналогичность. А потому мы без сомнения свели результаты из базы программы с собственными результатами в одну таблицу.

Здесь также стоит отметить, что в разных версиях AIDA, подсчет результатов может быть неодинаковым, а потому они не подлежат сравнению. В нашем случае все результаты получены только в версии 2.50.

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

Учитывая, что эффективность блоков FPU и ALU может сильно разница, вас не должны удивлять моменты, в которых один и тот же процессор имеет прекрасную производительность при работе с целочисленными данными, но при этом значительно хуже работает с данными с плавающей запятой. Хотя, бывает и наоборот. Перед тем как начать повествование, хотелось бы заметить, что очередность в моем описании будет идти по временной линии, в то время как в таблице результаты упорядочены по абсолютному результату теста ALU.

Первыми и самыми старыми процессорами в данном списке будут модели AMD K6-III на ядре Sharptooth и Pentium III на ядре Katmai. Эти процессоры имеют довольно короткий по нынешним временам конвейер – всего 12 ступеней у Intel и минимальные 6 ступеней у AMD. Благодаря этому, последнему практически не нужен блок предсказания ветвлений, так как ошибки связанные с неверным выбором пути не будут столь значительно влиять на результат, как в процессоре Pentium. Собственно такого в данном процессоре и не было, а вот в процессоре Intel был, и хоть по современным меркам его эффективность невысока, но механизмы анализа те же что и в современных процессорах. Как результат, в тесте ALU более высокий результат, за счет короткого конвейера имеет AMD K6-III. Его результат 2.03 ед./такт против 1.93 у конкурента. И это несмотря на то, что процессоры AMD данного поколения не имели поддержки потоковых расширений SSE! В то же время, в тесте FPU впереди, во многом благодаря блоку предсказания ветвлений, уже Pentium III с результатом 0.164 ед./такт против 0.128 у представителя архитектуры K6.


Pentium III отличался отменной эффективностью. Конкурировать с ним по этому параметру с переменным успехом мог только Athlon

Появившиеся позже очень удачные ядра Coppermine и Tualatin процессоров Pentium III сохранили архитектуру Katmai без изменений, а потому результаты двух процессоров: Celeron 700 и Pentium III 1333 аналогичны тем, что мы уже видели. А вот, AMD, ко времени выхода этих процессоров уже успело отказаться от архитектуры K6, так как она из-за очень короткого конвейера не позволяло достичь частот выше 550 мегагерц. В итоге новая архитектура K7 получила более длинный – 10-стадийный конвейер, и много дополнительных функций и изменений, которые принесли заметное улучшение производительности. Главным нововведением, и самым важным в рамках данного материала стало появление блока предсказания ветвлений. Однако превзойти по производительности блоков ALU, процессоры Pentium III, новинкам, получившим собственное имя Athlon, не удалось. Зато эффективность FPU значительно выросла: по этому параметру AMD K7 Athlon заметно превзошли K6 и сравнялись с конкурентами, продемонстрировав результат на уровне 0.163 ед./такт. А вот более длинный конвейер значительно снизил эффективность блока ALU – до 1.58 ед./такт, то есть почти на 25 процентов относительно K6. В прочем, это было оправданно, так как FPU в большинстве приложений на тот момент был важнее, да и более высокая частота, которой в итоге удалось достичь, покрыла данные потери с лихвой.

Переход AMD Athlon на ядро Thunderbird, никак не изменил расстановку сил и эффективность на такт, ведь данное ядро имеет ту же архитектуру. Зато, вскоре после них на рынке появились первые процессоры Pentium 4 построенные на совершенно новой архитектуре NetBurst. Быть может с точки зрения маркетинга и продаж данные процессоры были безусловным успехом, но с точки зрения инженерии и эффективности – худшей архитектуры в истории не было.


Pentium 4 на ядре Willamette. Один из первых процессоров основанный на неудачной, но на удивление живучей, архитектуре Netburst.

Причина такова: погнавшись за большими мегагерцами, которых так хотели покупатели, инженеры Intel пошли на нетривиальный ход, дабы достичь более высоких частот, они значительно удлинили конвейер – до 20 стадий. Конечно, в гонке за мегагерцы, они сразу стали лидерами, однако производительность на такт упала очень ощутимо. Средний результат процессоров Pentium 4 на ядрах Willamette и Northwood в тесте ALU равен 1.02, а в FPU 0.108. Сравните с результатами Pentium III – разница колоссальна! Для того чтобы опередить процессоры предыдущего поколения по производительности, Pentium 4 была нужна значительно большая частота. То есть фактически, для того чтобы получить равную эффективность блоков ALU c самым старшим процессором семейства Pentium III работающего на частоте 1400 мегагерц, ядро Pentium 4 должно работать на частоте 2536 мегагерц! А для достижения того же результата в тесте FPU нужны 2111 мегагерца, что чуть меньше, но тоже совсем не мало. То есть, если усреднить результаты, то по эффективности примерное равенство будут иметь процессоры Pentium III 1400 и Pentium 4 2.4.

В то же самое время AMD не погналась за Intel в частотах, и, сохранив практически неизменной архитектуру K7, выпустила линейку процессоров Athlon XP, процессоры в которой маркировалась уже не частотой, а рейтингами со знаком “плюс”, которые демонстрировали эффективность относительно процессоров Pentium 4. То есть по задумке маркетологов AMD, процессор Athlon XP 1800+ должен конкурировать с Pentium 4 работающим на частоте 1800 мегагерц.

Проверим, насколько адекватным был такой подход, учитывая, что эффективность ядер Athlon XP находится на уровне 1.58 ед./такт в ALU и 0.163 ед./такт в FPU. При реальной частоте модели 1800+ равной 1533 мегагерца, результат в 2422 единицы в CPU Queen и 250 в FPU SinJulia. В то же самое время, результат Pentium 4 с частотой 1.8 гигагерца составит 1908 и 195 единиц, соответственно. Похоже, рейтинг даже занижен. Хотя не стоит забывать, что производительность в реальных приложениях может быть несколько иной, если учитывать другие характеристики процессоров, вроде кэшей, шин и прочего.

Удивительно, но горький опыт, так и не научил инженеров Intel ничему хорошему, и в очередной раз, упершись в невозможность увеличить частоту, они вновь идут на увеличение длины конвейера. Причем, не на пару ступеней, а весьма значительно – если ядро Northwood имело 20 ступеней, то в Prescott их стало 31. А это уже не просто длинный, а очень длинный конвейер. Да, конечно, благодаря данному изменению, порог максимальной тактовой частоты у новых ядер был выше, но выше было и тепловыделение.


Ядро Prescott стало дальнейшим ухудшением архитектуры Netburst в погоне за большими мегагерцами. Самое НЕэффетивное ядро Intel за всю историю.

Однако самым главным изменением, которое смогли оценить далеко не все, стало значительнейшее падение эффективности относительно предшественника, и хотя, появление технологии HyperThreading в некотором смысле спасло ситуацию, то процессоры его не использующие показали просто ужасающий уровень эффективности. Найдите в таблице процессоры Pentium D 820 и 925, а также Celeron D 326 и поймете, о чем я говорю. Результат на такт, продемонстрированный в тесте CPU Queen, составил скромнейшие 0.75 единицы, а FPU SinJulia оценила эффективность обновленной архитектуры NetBurst всего в 0.081 единиц. Падение производительности относительно ядер Willamette/Northwood составило примерно 30 процентов в ALU и до 40 процентов в FPU.

Сравнивать Prescott-256 и Smithfield с процессорами AMD K8 и вовсе бессмысленно. Так как новая архитектура получила лишь на две ступени более длинный конвейер, нежели K7, но при этом обзавелась значительно улучшенным, более эффективным блоком предсказания ветвлений. И как результат, ядра, основанные на новой архитектуре демонстрируют чуть более высокую эффективность работы ALU и FPU. Средний показатель теста CPU Queen вырос до 1.74 единиц, а FPU SinJulia остался на уровне предшественника. Как видите, не зря процессоры Athlon 64 и Sempron в свое время очень ценились геймерами – их эффективность очень высока, более чем в два раза выше, нежели у распиаренных Pentium 4 с ядрами Prescott и Smithfield, которым в большинстве приложений не помогала ни высочайшая по тем временам частота, ни огромный объем кэша второго уровня.


Весьма успешное решение от AMD - Athlon 64. На фоне Pentium 4 эти процессоры выделялись небольшим энергопотреблением и отменной эффективностью.

Впрочем, на данном этапе стоит вспомнить, что именно в ядре Prescott появилась технология HyperThreading. Появилась она конечно не от хорошей жизни, и была небезуспешной попыткой замаскировать недостатки длинного конвейера. Именно благодаря этой, пусть на тот момент и еще несовершенной, технологии, инженерами удалось нивелировать удлинение конвейера. Например, процессор Pentium 4 2800E основанный на ядре Prescott и поддерживающий HT продемонстрировал эффективность аналогичную ядрам с 20-ступенчатым конвейером, но без HT. Впрочем, прироста эффективности от поддержки HyperThreading для ядер Willamette/Northwood добиться не удалось, об этом свидетельствует результат редчайшего процессора Pentium 4 3.46 GHz Extreme Edition, который основан на ядре Gallatin (аналог Northwood, но с 2-мегабайтным кэшем L3) и поддерживает данную технологию.

Чуть позже, уже на закате эру NetBurst, инженерам Intel удалось значительно улучшить HyperThreading и добиться неплохого прироста эффективности работы блока вычислений с плавающей запятой. Обратите внимание на быстрейшие в линейке, одноядерные Pentium 4 3.73 GHz Extreme Edition, и двухядерные Pentium 955 Extreme Edition. Их эффективность работы FPU составляет уже 0.138 единиц, хотя производительность ALU и находится на прежнем уровне. Впрочем, даже благодаря этому, опередить по производительности своих главных конкурентов – AMD Athlon 64 X2 не удалось, несмотря на то, что последние работают на более низкой тактовой частоте и не поддерживают HT.

Посмотрите на таблицу – тягаться с Athlon 64 X2 5200+ не может ни один из процессоров архитектуры NetBurst, что говорить о топовом на тот момент AMD Athlon 64 6400+. Впрочем, то, что погоня за “большими гигагерцами” была ошибкой, Intel поняла давно, а потому готовила новейшую архитектуру, которая предстояло стать не менее успешной в маркетинговом плане, чем Pentium 4, но гораздо более эффективной.


Athlon 64 X2 - пожалуй последний на сегодняшний день процессор, который мог опережать топовые процессоры Intel. Впрочем, побеждать неэффективные и горячие Pentium D было не сложно.

Речь идет, естественно, о Core. Разрабатывая данную архитектуру, инженеры Intel и вернулись к конвейеру, имеющему всего 14 стадий, то есть укоротили его по сравнению с последними представителями NetBurst более чем в два раза. Естественно, в таких условиях, речь о достижении 4 гигагерц уже не шла, но уже первые представители нового семейства, несмотря на небольшую частоту, демонстрировали высочайшую производительность. Оба процессора этого поколения – Pentium M 730 на ядре Dothan и Core Duo T2500 на ядре Yonah показали результат на такт, превосходящий даже Pentium III, и заметно выше, чем у конкурирующих AMD семейства K8.

Обкатанная на мобильных решениях архитектура в немного доработанном виде пришла и на десктопный рынок в виде процессоров Core 2 Duo и Pentium Dual Core. На момент выхода они не могли похвастать высокими частотами, но при этом демонстрировали высочайшую эффективность и как следствие производительность, даже, несмотря на отсутствие поддержки HyperThreading! На это, естественно работал и значительно улучшенный блок предсказания ветвлений. Посмотрите на результаты. В тесте CPU Queen средняя эффективность ядра Conroe и его производных поднялась на уровень более двух единиц за такт и достигла, в среднем, 2.13. В тесте FPU SinJulia результат тоже очень хорош – 0.175. Это, пусть и не намного, но больше чем у процессоров архитектуры Core первого поколения, и гораздо выше, чем у AMD K8 с которой так долго и безуспешно бились Pentium 4.


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

Высочайшую эффективность ядер в очередной раз доказал и вышедший немного позже одноядерный Celeron, который при скромной частоте, благодаря ядру Conroe-L, показал производительность на уровне предшественников работавших на частоте в два раза выше. И это, заметьте, при том же одном ядре. В общем и целом данная архитектура зарекомендовала себя максимально эффективной, и заставила уже AMD пытаться нагнать соперников.

И вот здесь у AMD начались проблемы. Теперь у них не было преимущества в эффективности ядра, и вместо того, чтобы заняться его полной перестройкой, инженеры, при создании поколения K10 и соответственно процессоров под названиями Phenom и Athlon, занялись наращиванием количества ядер и кэшей. Общая производительность данных решений, конечно, выросла, а вот на эффективность внесенные изменения повлияли незначительно. Производительность ALU немного увеличилась, видимо из-за доработанного, в очередной раз, блока предсказания переходов, а вот эффективность FPU осталась совершенно без изменений – с такими характеристиками тягаться с Core 2 было можно только за счет большего количества ядер или более высокой частотой. С последним у процессоров поколения K10 были, как вы, наверное, помните, очень серьезные проблемы.


Phenom - явно неудачный процессор. Эффективность его не дотягивалась до Core 2, да и с частотами были серьезные проблемы.

Как результат, Phenom так и не стал конкурентом процессорам Core 2 Duo и Core 2 Quad. Впрочем, вскоре проблема с частотами и решилась, и новые процессоры Phenom II и Athlon II архитектуры K10.5 готовы были составить конкуренцию решениям от Intel по данному показателю. А вот эффективность в новом поколении осталась на том же уровне, а потому бороться с конкурентами при равных частотах решения AMD не могли. К тому же при переходе на 45-нанометровый техпроцесс Intel вновь немножко поколдовала над архитектурой и добилась очередного повышения эффективности блока FPU, до уровня 0.185 ед./такт.

Несмотря на комфортное превосходство, в цехах и лабораториях Intel уже ковалось новое совершенное оружие, развивающее архитектуру Core, которое увидело свет в процессорах Core i3, i5 и i7 под общим названием Nehalem. Очередные изменения в блоках и улучшение всех параметров привели к отличному результату. Посмотрите на показатели Core i5-750: эффективность ALU осталась практически на уровне Core 2, но при этом производительность наиважнейшего на сегодняшний момент блока целочисленных операций возросла значительно – до 0.225 единиц на такт!

Но, кроме архитектурных улучшений, Intel готовила и еще одно супероружие – доведенную до ума технологию HyperThreading. Ее использование позволило получить просто фантастическую эффективность. Эта технология при правильной оптимизации дала огромный эффект и почти полуторакратное увеличение эффективности! 3,05 в ALU и 0,36 в FPU – это просто великолепный результат. Впрочем, и без поддержки этой технологии процессоры на архитектуре Nehalem оказались более эффективны, чем предшественники и конкуренты.


Nehalen стал первой архитектурой Intel, в которой максимум внимания было уделено эффективности ядер. Результата оказался отменным. Потомки в лице Sandy Bridge и Ivy Bridge показали, что потенциал еще есть.

Два последующих поколения от Intel – процессоры на ядрах Sandy Bridge и Ivy Bridge также демонстрировали более высокую производительность не только за счет увеличения частоты. Небольшие изменения в ядрах позволили последовательно увеличивать производительность блока целочисленных операций, на 0.25 ед./такт в каждом поколении, причем как с использованием HyperThreading, так и без. А вот изменения эффективности FPU нет. Впрочем, даже без улучшений этот показатель очень хорош. Учитывая тенденцию, мы вправе ожидать очередного увеличения эффективности и при появлении процессоров Intel следующего поколения.

AMD о подобной эффективности остается только мечтать. Впрочем, и они не сидят на месте, стараясь улучшить показатели своих процессоров. В частности, основанные на ядрах архитектуры K10.5 процессоры Llano продемонстрировали чуть более высокую, чем у последних Phenom и Athlon эффективность ALU. В основном благодаря улучшенному блоку предсказания ветвлений, в то время как эффективность FPU осталась на том же уровне что демонстрировали все предыдущие процессоры AMD начиная с самых первых Athlon семейства K7.


Последний представитель семейства AMD взявшего старт еще в поколении K7 - APU Liano. К сожалению тоже не блещет эффективностью на фоне последних процессоров Intel

Впрочем, даже Llano можно считать решением уже устаревшим, так как ближайшее будущее процессоров AMD будет связано с процессорами совершенно новой архитектуры Bulldozer, которая была представлена в процессорах AMD FX, и ее производных. Именно эти процессоры, которые получились отнюдь не бесспорными, поставили нас в тупик при расчете эффективности ядер. И все по причине того, что в них принцип организации ядер уж больно сложный. В частности в процессоре FX-8150 имеется четыре двуядерных модуля, и заявляется он компанией как восьмиядерный. Дабы наказать компанию за такое, вполне можно было посчитать его эффективность из расчета восьми ядер, но это было бы технически неправильно, да и результат оказался бы на уровне процессоров Intel на архитектуре NetBurst. Поэтому решено было считать эффективность не на ядро, а на модуль, что вполне оправданно, учитывая, что каждый модуль обладает лишь одним блоком вычислений с плавающей запятой.


AMD FX на архитектуре Bulldozer показал заметный рост эффективности, но сложная архитектура пока не раскрыла себя. И, быть может, уже не раскроет.

С ALU все сложнее – таких блоков в четырехмодульном процессоре действительно восемь, но работать параллельно с достаточной эффективностью они не могут из-за особенностей диспетчера задач Windows 7 и более ранних ОС от Microsoft. Поэтому, было принято решение и эффективность ALU считать в расчете на количество модулей. Это решение спорное, и я не буду настаивать на объективности данного результата. А результаты, кстати, оказались относительно неплохими. Относительно предшественников, конечно же. В частности, по эффективности спорного результата ALU, процессоры архитектуры Bulldozer показали результат 2,2 ед./такт, что заметно выше, чем у K10.5, Llano и даже чуть больше чем у Core 2, хотя до Sandy Bridge, даже без поддержки Hyper Threading еще далековато. Эффективность FPU (этому результату можно полностью доверять) также заметно превзошла все предыдущие решения AMD, и оказалось аккурат между ранней и поздней архитектурами Core 2.

Исходя из этих результатов можно сделать вывод, что процессоры архитектуры Bulldozer однозначно не конкуренты процессорам Intel начиная с Nehalem, а вот с Core 2 может бороться весьма эффективно, и даже превосходить на равных частотах. Не самый позитивный вывод для "зеленых".

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

На, этом в нашем исследовании можно ставить многоточие. Нет, не точку, потому что данный материал не претендует на абсолютную глобальность, и как я говорил в начале материала, не учитывает эффективность многих весьма важных блоков процессора. Впрочем, без производительных ALU и FPU быстрых процессоров не бывает, и данный материал полностью подтвердил данный постулат. История все расставила на свои места, и с высоты пройденных лет можно легко и непринужденно ставить штампы и указывать на ошибки. Но именно эти ошибки и есть неизменный спутник прогресса, который, несмотря на все тупиковые ветви, неуклонно ведет нас к счастливому цифровому будущему.

Похожие материалы:
  • В продолжение темы:
    Сварка

    Сверлильный станок необходим не только на производственных предприятиях. В домашней мастерской, ремонтных цехах и гаражных боксах – везде, где есть потребность в высокой...

    Новые статьи
    /
    Популярные