Многоядерные процессоры

Содержание

Слайд 2

Два подхода к увеличению производительности процессора Увеличение тактовой частоты процессора. Увеличение

Два подхода к увеличению производительности процессора

Увеличение тактовой частоты процессора.
Увеличение количества инструкций

программного кода, выполняемых за один такт процессора.
Переход к многоядерным процессорам реализует второй подход

*

Многоядерные процессоры Рудаков С.А.

Слайд 3

Многоядерный процессор - центральный процессор, содержащий два и более вычислительных ядра

Многоядерный процессор -

центральный процессор, содержащий два и более вычислительных

ядра на одном процессорном кристалле или в одном корпусе.
Ядром процессора - это система исполнительных устройств (набор арифметико-логических устройств), предназначенных для обработки данных.

*

Многоядерные процессоры Рудаков С.А.

Слайд 4

Кэш- сверхоперативная память В многоядерных процессорах кэш первого уровня у каждого

Кэш- сверхоперативная память

В многоядерных процессорах кэш первого уровня у каждого ядра

своя, а кэш 2-го уровня существует в нескольких вариантах:
разделяемый — кэш расположен на одном с обеими ядрами кристалле и доступен каждому из них в полном объёме (процессоры семейств Intel Core).
индивидуальный — отдельные кэш равного объёма, интегрированные в каждое из ядер. Обмен данными из кэш L2 между ядрами осуществляется через контроллер памяти — интегрированный (Athlon 64 X2) или внешний (Pentium D).

*

Многоядерные процессоры Рудаков С.А.

Слайд 5

Производительность. В приложениях, оптимизированных под многопоточность, наблюдается прирост производительности на двухъядерном

Производительность.

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


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

*

Многоядерные процессоры Рудаков С.А.

Слайд 6

Наращивание количества ядер. На сегодняшний день основными производителями процессоров — Intel

Наращивание количества ядер.

На сегодняшний день основными производителями процессоров — Intel и

AMD дальнейшее увеличение числа ядер процессоров признано как одно из приоритетных направлений увеличения производительности. Уже освоено производство 8-ядерных процессоров для домашних компьютеров, а также 16-ядерных в серверных системах.

*

Многоядерные процессоры Рудаков С.А.

Слайд 7

Сравнение процессоров: одноядерного и двухъядерного * Многоядерные процессоры Рудаков С.А.

Сравнение процессоров: одноядерного и двухъядерного

*

Многоядерные процессоры Рудаков С.А.

Слайд 8

Сравниваемые системы. В тестировании Pentium Extreme Edition 840 работал на предсерийной

Сравниваемые системы.

В тестировании Pentium Extreme Edition 840 работал на предсерийной материнке

Intel D955XBK с чипсетом D955X и с двумя 512 Мб модулями памяти DDR2-667.
Сравнивалась эта система с Pentium 4 660 на материнке Intel D925XECV2 (чипсет i925XE) и с двумя 512 Мб модулями памяти DDR2-533 Corsair CM2X512.
Прочие параметры стендов:
графика: MSI Geforce 6800 GT с 256 Мб памяти, драйвер Forceware66.77;
HDD: Serial-ATA Maxtor Maxline III 250 Гб;
ОС: Windows XP Professional SP2.

*

Многоядерные процессоры Рудаков С.А.

Слайд 9

* Многоядерные процессоры Рудаков С.А.

*

Многоядерные процессоры Рудаков С.А.

Слайд 10

Результаты тестирования: Игровые тесты: во всех играх Pentium Extreme Edition 840

Результаты тестирования:

Игровые тесты: во всех играх Pentium Extreme Edition 840 уступает

Pentium 4 660, т.к. создатели игр не "параллелят" свои творения.
Тест Sysmark 2004 в дисциплине Office Productivity: многоядерность не сыграла заметной роли.
Internet Content Creation: присутствуют элементы обработки потоковых данных — а такие работы хорошо параллелятся. Adobe Photoshop, 3D Studio Max и Windows Media Player, использующиеся в этом подтесте, показывают до 30% прироста производительности.
Заметен эффект от многоядерности в CineBench, который и раньше умел использовать все доступные процессоры, и в Spec CPU2000, который мы запускали в режиме "rate_base", позволяющем выполнять на каждом физическом и виртуальном ядре копию теста.
Nero Recode 2.2.6.9 от Ahead использовался в тесте, чтобы сжать фильм "Никита" с четырех до одного гигабайта. Это приложение многопоточное, поэтому эффект от многоядерности очень заметен.

*

Многоядерные процессоры Рудаков С.А.

Слайд 11

Итоги. Если вам часто приходится заниматься обработкой музыкальных файлов и изменением

Итоги.

Если вам часто приходится заниматься обработкой музыкальных файлов и изменением формата

видеофайлов, то многоядерность — это однозначно то, что вам нужно. Именно здесь работает формула 1+1 = 2. То есть добавление второго ядра может привести к повышению производительности до 90%.
Во всех остальных случаях ситуация выглядит не столь радужно. Однако даже в офисном ПК на сегодня найдется не одна программа, желающая загрузить второе ядро.

*

Многоядерные процессоры Рудаков С.А.

Слайд 12

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

Многоядерные процессоры и программирование.

Скоростной потенциал процессоров стал зависеть от качества работы

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

*

Многоядерные процессоры Рудаков С.А.

Слайд 13

Intel Parallel Studio состоит из следующих компонентов: Parallel Inspector — аналитический

Intel Parallel Studio состоит из следующих компонентов:

Parallel Inspector — аналитический инструмент,

позволяющий выявлять проблемы с потоками и памятью; ·
Parallel Composer — набор инструментов, включающий компилятор Intel C++ и соответствующие библиотеки; ·
Parallel Amplifier — инструмент для анализа производительности вашей программы; ·
Parallel Advisor Lite — инструмент через несколько шагов проводящий вас к параллелизму. (Технически Parallel Advisor Lite не является частью Intel Parallel Studio, а представляет собой самостоятельный инструмент.)

*

Многоядерные процессоры Рудаков С.А.

Слайд 14

Intel Parallel Studio. Приложения, написанные с помощью Intel Parallel Studio, будут

Intel Parallel Studio.

Приложения, написанные с помощью Intel Parallel Studio, будут совместимы

с будущими многоядерными процессорами Intel, включая Larrabee — разрабатываемый многоядерный процессор общего назначения архитектуры x86 со встроенной высокопроизводительной графикой.
Parallel Inspector помогает выявить наиболее часто встречающиеся проблемы параллельного программирования, особенно взаимные блокировки и случаи одновременного обращения к одним и тем же данным (data races).

*

Многоядерные процессоры Рудаков С.А.

Слайд 15

Как работает Intel Parallel Studio? Инструмент запускает вашу программу и ведет

Как работает Intel Parallel Studio?

Инструмент запускает вашу программу и ведет

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

*

Многоядерные процессоры Рудаков С.А.

Слайд 16

Проблемы многоядерности. Многоядерные и Hyper-Threading процессоры не только увеличивают производительность, но

Проблемы многоядерности.

Многоядерные и Hyper-Threading процессоры не только увеличивают производительность, но и

порождают многочисленные проблемы - некоторые приложения (драйвера) начинают работать нестабильно, выбрасывая критические ошибки или обрушивая систему в голубой экран смерти.
Основной "удар" различий одно- и многопроцессорных машин операционная система и BIOS берут на себя.

*

Многоядерные процессоры Рудаков С.А.

Слайд 17

Проблемы многоядерности. Прикладное приложение или драйвер устройства, спроектированный для однопроцессорной системы,

Проблемы многоядерности.

Прикладное приложение или драйвер устройства, спроектированный для однопроцессорной системы, не

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

*

Многоядерные процессоры Рудаков С.А.