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

Презентация:



Advertisements
Похожие презентации
Многоядерные процессоры Многоядерные процессоры Рудаков С.А.
Advertisements

Процессор - это устройство, управляющее ходом вычислительного процесса, выполняющее арифметическое и логическое действия. Процессор - это микросхема на.
Архитектура ЭВМ (лекция 7) проф. Петрова И.Ю. Курс Информатики.
Иерархия памяти в компьютере. Кэш-память Процессоры работают быстрее чем память! При обращении процессора к памяти из-за разницы в скорости работы процессору.
Кэш - память. Кэш-память это высокоскоростная память произвольного доступа, используемая процессором компьютера для временного хранения информации.
Выполнили: Мартышкин А. И. Кутузов В. В., Трояшкин П. В., Руководитель проекта – Мартышкин А. И., аспирант, ассистент кафедры ВМиС ПГТА.
1. Теоретические основы операционных систем (планирование заданий и использования процессора, обеспечение программ средствами коммуникации и синхронизации,
Машинная команда Энциклопедия учителя информатики Газета «Первое сентября»
Автор: учитель информатики Комкова Мария Сергеевна, г.Москва.
Выполнил ученик 10-А класса cредней школы 120 Малецкий Максим.
Работу выполнили ученики 21 гимназии 10 А класса.
OpenGL и Direct3D сравнение стандартов Выполнил: Пенкин А. Группа И-204.
Назначение и устройство компьютера yagod-sch.ucoz.ru (все уроки) Составил учитель ИКТ Фоломкин А.И.
Выполнили: Корсун Илья, Харламов Максим 10 Б. Помогают прикладным программам использовать ресурсы компьютера Дают возможность человеку использовать компьютер.
Лекция 6 Понятие операционных систем Учебные вопросы: 1. Характеристики ОС 2. Свободные и проприетарные ОС.
Выполнил: Гусев Данил. Что такое программное обеспечение? Возможности современного ПК столь велики, что все большее число людей находят ему применение.
Программное обеспечение компьютера. Совокупность программ, хранящихся в долговременной памяти компьютера, составляют программное обеспечение (ПО) компьютера.
Программное обеспечение компьютера. Компьютер без программного обеспечения и операционной системы – это бесполезный хлам, груда железа.
Структурная схема компьютера Взаимодействие устройств компьютера.
Создание реляционной БД с помощью СУБД MS Access 2007 Презентация практической работы 1.
Транксрипт:

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

Два подхода к увеличению производительности процессора 1.Увеличение тактовой частоты процессора. 2.Увеличение количества инструкций программного кода, выполняемых за один такт процессора. Переход к многоядерным процессорам реализует второй подход Многоядерные процессоры Рудаков С.А. 2

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

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

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

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

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

Сравниваемые системы. В тестировании Pentium Extreme Edition 840 работал на предсерийной материнке Intel D955XBK с чипсетом D955X и с двумя 512 Мб модулями памяти DDR Сравнивалась эта система с Pentium на материнке 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 SP Многоядерные процессоры Рудаков С.А.

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

Результаты тестирования: Игровые тесты: во всех играх 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 от Ahead использовался в тесте, чтобы сжать фильм "Никита" с четырех до одного гигабайта. Это приложение многопоточное, поэтому эффект от многоядерности очень заметен Многоядерные процессоры Рудаков С.А.

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

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

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

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

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

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

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

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