1.2.2 Архитектура процессора
Из приведенной формулы вытекает, что, кроме тактовой частоты, производительность процессора зависит и от количества инструкций, выполняемых за один такт процессора, которое, в свою очередь, определяется архитектурой процессора, то есть от количества исполняемых блоков, от длины конвейера и от эффективности его заполнения, от блока предвыборки и т. д. Кроме того, естественно, существует также зависимость от оптимизации программного кода к данной архитектуре процессора.
В результате того, что основные производители (Intel и AMD) столкнулись со значительными трудностями на пути увеличения тактовых частот, как процессорных ядер, так и шин передачи данных, а пользователи и разработчики программного обеспечения по-прежнему требовали увеличения мощности систем, пришлось искать другие выходы из сложившегося положения.
В этом свете наиболее перспективным решением стало увеличение количества ядер микропроцессора. Следует сказать, что подобная идея впервые пришла на ум «голубому гиганту» (IBM) еще в далеком 1999 году, когда он представил опытный образец двуядерного Power4, а в 2001 году совместно с Apple уже вовсю торговал готовыми решениями.
Производители процессоров для платформы х86 спустя год после этого события (2002) заявили о своих намерениях развивать многоядерную архитектуру микропроцессоров. Стремясь подтвердить свой статус лидера отрасли, компания Intel первой выпустила подобный чип в марте 2005 года. Ее главный конкурент, AMD, отстав всего на три дня, представил полную линейку серверных двуядерных процессоров Opteron, анонсировал двуядерные процессоры Athlon 64 Х2 для настольных систем и начал поставки Opteron 8xx.
Апофеозом противостояния двух ведущих компаний стал момент выхода на рынок продуктов Intel Core 2. Это событие датируется 27 июля 2006 года, что не только изменило расстановку сил на рынке, но и коренным образом повлияло на критерии оценки производительности.
Маркетологи из Intel предложили вместо тактовой частоты оперировать категориями энергоэффективности. В этом свете ключевым параметром стала оптимальная производительность, которая отражает количество энергии, затрачиваемой процессором на выполнение определенного набора инструкций.
Рассмотрим формулу, предложенную Intel, более детально. Производительность (Performance) определяется как произведение тактовой частоты процессора (Frequency) на величину IPC, определяющую количество инструкций, исполняемых CPU за один такт:
.
Получается, что увеличить быстродействие можно двумя способами: поднимая частоту и/или увеличивая количество инструкций, выполняемых за один такт.
Параметр Frequency зависит от технических характеристик процессора. Для конкретного экземпляра процессора частоту можно увеличить сверх номинала, подняв напряжение и не забыв при этом поставить более мощную систему охлаждения.
В свою очередь, второй аргумент формулы зависит от логической структуры процессорного ядра: количества декодеров инструкций и количества вычислительных блоков. Функциональные особенности каждого из этих узлов играют не менее, важную роль, чем их количество. В частности, повышение производительности процессора возможно за счет уменьшения числа операций для обработки одного и того же объема данных. Типичным примером является внедрение SIMD-команд, таких как 3DNow!, SSE, SSE2, SSE3 и SSE4.
Что же касается энергопотребления, то оно вычисляется как произведение тактовой частоты процессора на квадрат напряжения U, при котором функционирует процессорное ядро, и некую величину Cdynamic (динамическая емкость), определяемую архитектурой процессора и зависящую от количества транзисторов и их активности во время работы процессора:
.
Из этих двух формул вытекает следующее соотношение, определяющее энергоэффективность процессора:
Из него следует, что для получения наилучшего показателя производителям необходимо работать над оптимизацией архитектуры с целью улучшения функциональности исполнительных блоков, при этом, не допуская чрезмерного увеличения динамической емкости.
Как мы уже вскользь упоминали, напряжение питания ядра, также оказывающее влияние на соотношение производительности и энергопотребления, зависит не столько от архитектуры, сколько от технологических особенностей изготовления процессора. В этом легко убедиться, сравнив два процессора с одним и тем же индексом, но произведенных по различным техпроцессам.
Что касается тактовой частоты, то, как показывают наши выкладки, на рассматриваемое соотношение она вообще не влияет. Поэтому, сделав такой элегантный ход конем, Intel вышла из гонки, не только сохранив репутацию, но и озадачив при этом AMD, чьи изделия на тот момент также были довольно «горячи».
На первый взгляд все эти формулы и логические выкладки от Intel весьма перспективны, однако подобный подход в оценке эффективности не является самым оптимальным, ведь замечательными показателями энергоэффективности при желании смогут похвастаться и маломощные процессоры.
В свете сомнительной формулы от Intel главный конкурент в долгу не остался. В своей инновационной разработке под кодовым именем Fusion инженеры из AMD предложили пойти еще дальше и оценивать продукт по формуле «операция на ватт и на доллар».
В частности, концепция Fusion предполагает объединение ядер различного назначения в одном чипе. Каждое из них (или каждая из групп ядер) будет обращаться к собственной кэш-памяти, а в качестве связующей шины выступит HyperTransport. Процессоры Fusion будут напрямую обращаться к системной памяти, разделяемой между нуждами центральной и графической частей процессора. Вероятно, даже техпроцесс изготовления CPU и GPU будет различаться.
- Предисловие
- Глава 1. Общие сведения о микропроцессорах
- 1.1 Классификация микропроцессоров
- 1.2 Характеристики микропроцессоров
- 1.2.1 Тактовая частота
- 1.2.2 Архитектура процессора
- 1.2.3 Технологический процесс производства
- 1.2.4 Частота системной шины
- 1.2.5 Размер кэша
- 1.3 Типы архитектур микропроцессоров
- 1.4 Структурная схема микропроцессоров
- 1.4.1 Микропроцессор Фон-Неймана
- 1.4.2 Конвейер
- 1.4.3 Зависимость между частотой и количеством ступеней конвейера
- 1.5 Представление информации в эвм
- 1.5.1 Двоичное представление целых чисел
- 1.5.2 Представление символьной информации
- Глава 2. Архитектура микропроцессоров ia-32
- 2.1 Состав и функции регистров
- 2.1.1 Основные регистры
- 2.1.2 Регистры дополнительных функциональных модулей
- 2.2 Типы адресации
- 2.3 Система команд
- 2.3.1 Классификация команд
- 2.3.2 Формат команды
- 2.3.3 Однобайтовые команды
- 2.3.4 Непосредственно заданные операнды
- 2.3.5 Команды с регистровыми операндами
- 2.3.7 Команды с операндами, расположенными в памяти
- Глава 3. Организация многоуровневой памяти
- 3.1 Принцип построения многоуровневой памяти
- 3.2 Организация кэш-памяти
- 3.3 Протоколы когерентности памяти микропроцессоров
- 3.4 Страничная организация памяти
- Глава 4. Режимы работы процессоров ia-32
- 4.1 Обзор режимов работы
- 4.2 Реальный режим адресации
- 4.3 Защищённый режим
- 4.3.1 Дескрипторные таблицы
- 4.3.2 Дескрипторные регистры
- 4.3.3 Дескриптор
- 4.3.4 Односегментная модель памяти
- 4.3.5 Многосегментная модель памяти
- Глава 5. Страничная организация памяти в процессорах ia‑32
- 5.1 Каталог страниц
- 5.2 Таблица страниц
- 5.3 Страничная переадресация
- 5.4 Диспетчер виртуальных машин системы Microsoft Windows
- Глава 6. Архитектура процессоров с параллелизмом уровня команд
- 6.1 Подходы к использованию ресурса транзисторов в микропроцессорах
- 6.2 Суперскалярные процессоры и процессоры с длинным командным словом
- 6.3 Зависимости между командами, препятствующие их параллельному исполнению
- 6.4 Предварительная выборка команд и предсказание переходов
- 6.5 Условное выполнение команд в vliw-процессорах
- 6.6 Декодирование команд, переименование ресурсов и диспетчеризация
- 6.7 Исполнение команд
- 6.8 Завершение выполнения команды
- 6.9 Направления развития архитектуры процессоров с параллелизмом уровня команд
- Глава 7. Мультитредовые микропроцессоры
- 7.1 Основы мультитредовой архитектуры
- 7.2 Выявление тредов
- 7.3 Мультитредовые процессоры с тредами, выявляемыми путем анализа потоков управления программы
- 7.3.1 Мультитредовая модель выполнения программы
- 7.3.2 Мультитредовые программы
- 7.3.3 Аппаратные средства мультитредовой архитектуры
- 7.3.4 Преимущества мультитредовой архитектуры
- 7.4 Мультитредовые процессоры с тредами, выявляемыми путем анализа потоков данных программы
- 7.5 Специфика мультитредовых моделей распараллеливания
- Глава 8. Модуль обработки вещественных чисел
- 8.1 Представление чисел с плавающей запятой
- 8.2 Состав модуля fpu
- Глава 9. Основы 64-разрядной архитектуры
- 9.1 Состав и назначение регистров микропроцессора ia-64
- 9.2 Особенности архитектуры epic
- 9.3 Архитектура x86-64
- 9.4 Структура одноядерного процессора
- 9.5 Многоядерные процессоры
- 9.6 Зачем нужны “лишние” разряды?
- Глава 10. Современные 64-разрядные микропроцессоры корпораций Intel и amd
- 10.1 Архитектура Intel Core 2
- 10.1.1 Intel Wide Dynamic Execution
- 10.1.2 Intel Intelligent Power Capability
- 10.1.3 Intel Advanced Smart Cache
- 10.1.4 Intel Smart Memory Access
- 10.1.5 Intel Advanced Digital Media Boost
- 10.1.6 Логическая схема процессора
- 10.2 Архитектура Intel Core i7
- 10.2.1 Технология Hyper-Threading в архитектуре Nehalem
- 10.2.2 Иерархия кэш-памяти в архитектуре Nehalem
- 10.3 Хронология развития семейств микропроцессоров с архитектурой Nehalem
- 10.4 Архитектура amd Athlon 64
- 10.4.1 Ядро процессора
- 10.4.3 Контроллер памяти
- 10.4.4 Контроллер HyperTransport
- 10.5 Архитектура amd k10
- 10.4.1 Технология amd Memory Optimizer Technology
- 10.5.2 Ядро процессора
- 10.5.3 Предвыборка данных и инструкций
- 10.5.4 Выборка из кэша
- 10.5.5 Предсказание переходов и ветвлений
- 10.5.6 Процесс декодирования
- 10.5.7 Диспетчеризация и переупорядочение микроопераций
- 10.5.8 Выполнение микроопераций
- 10.5.9 Технологии энергосбережения
- 10.5.10 Шина HyperTransport 3.0
- 10.5.11 Семейство процессоров Barcelona
- 10.5.12 Семейство процессоров Phenom
- Глава 11. Технологии, поддерживаемые современными микропроцессорами
- 11.1 Технологии тепловой защиты
- 11.1.1 Технология Thermal Monitor
- 11.1.2 Технология Thermal Monitor 2
- 11.1.3 Режим аварийного отключения
- 11.2 Технологии энергосбережения
- 11.2.1 Технология Enhanced Intel SpeedStep
- 11.2.2 Технология Cool'n'Quiet
- 11.3 Технология расширенной памяти
- 11.4 Технология антивирусной защиты
- 11.5 Технология виртуализации
- 11.6 Реализация технологий в современных микроархитектурах
- 11.6.2 Em64t – NetBurst
- 11.6.3 Intel Core
- 11.6.4 Intel Atom
- 11.6.5 Nehalem
- 11.6.6 Xeon
- Глава 12. Графические микропроцессоры
- 12.1 Основные термины и определения
- 12.2 Технологии построения трёхмерного изображения
- 12.2.1 Технологии повышения реалистичности трехмерного изображения
- 12.3 Шейдерный процессор
- 12.4 Особенности современных графических процессоров
- Глава 13. Однокристальные микроконтроллеры
- 13.1 Общая характеристика микроконтроллеров
- 13.2 Микроконтроллеры семейства avr
- Почему именно avr?
- 13.3 Общие сведения об омк avr
- 13.4 Характеристики avr-микроконтроллеров
- Глава 14. Технология производства микропроцессоров
- 14.1 Особенности производства процессоров
- 14.2 Новые технологические решения
- 14.3 Технология производства сверхбольших интегральных схем
- I. Выращивание кристалла кремния
- II. Создание проводящих областей
- III. Тестирование
- IV. Изготовление корпуса
- V. Доставка
- 14.4 Перспективы производства сбис
- Англо-русский словарь терминов и аббревиатур
- Библиографический список
- Интернет-ссылки
- 350072. Краснодар, ул. Московская, 2, кор. А.