LibKing » Книги » sci_tech » Алла Владова - Разработка масштабируемых программ для многоядерных архитектур

Алла Владова - Разработка масштабируемых программ для многоядерных архитектур

Тут можно читать онлайн Алла Владова - Разработка масштабируемых программ для многоядерных архитектур - бесплатно ознакомительный отрывок. Жанр: Tech, издательство Литагент БИБКОМ, год 2006. Здесь Вы можете читать ознакомительный отрывок из книги ознакомительный отрывок из книги онлайн без регистрации и SMS на сайте LibKing.Ru (ЛибКинг) или прочесть краткое содержание, предисловие (аннотацию), описание и ознакомиться с отзывами (комментариями) о произведении.
Алла Владова - Разработка масштабируемых программ для многоядерных архитектур
  • Название:
    Разработка масштабируемых программ для многоядерных архитектур
  • Автор:
  • Жанр:
  • Издательство:
    Литагент БИБКОМ
  • Год:
    2006
  • ISBN:
    нет данных
  • Рейтинг:
    5/5. Голосов: 11
  • Избранное:
    Добавить в избранное
  • Ваша оценка:

Алла Владова - Разработка масштабируемых программ для многоядерных архитектур краткое содержание

Разработка масштабируемых программ для многоядерных архитектур - описание и краткое содержание, автор Алла Владова, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru
В лабораторном практикуме изложены предпосылки разработки и основы многоядерной архитектуры на примере процессоров Intel и AMD, особенности проектирования и написания многопоточных программ с акцентом на причины их плохой масштабируемости. Практикум содержит методические указания к выполнению лабораторных и самостоятельных работ.

Разработка масштабируемых программ для многоядерных архитектур - читать онлайн бесплатно ознакомительный отрывок

Разработка масштабируемых программ для многоядерных архитектур - читать книгу онлайн бесплатно (ознакомительный отрывок), автор Алла Владова
Тёмная тема

Шрифт:

Сбросить

Интервал:

Закладка:

Сделать

Я предлагаю назвать этот канал «бутылочным горлом фон Неймана». Наверняка должно быть менее примитивное решение, чем перекачивание огромного количества данных через «узкое бутылочное горло». Такой канал не только создает проблему для трафика, но еще и является «интеллектуальным бутылочным горлом», которое навязывает программистам «пословное» мышление, не позволяя рассуждать в более высоких концептуальных категориях» [1].

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

Фон-неймановская архитектура компьютера не является единственно возможной. С точки зрения организации обмена командами между процессором и памятью все компьютеры можно разделить на четыре класса (классификация Флинна) [11]:

SISD (Single Instruction Single Data) – «один поток команд, один поток данных»»;

SIMD (Single Instruction Multiply Data) – один поток команд, много потоков данных;

MISD (Multiple Instruction Single Data) – много потоков команд, один поток данных;

MIMD (Multiple Instruction Multiple Data) – много потоков команд, много потоков данных.

Из этой классификации видно, что фон-неймановская машина является частным случаем, попадающим в категорию SISD. Возможные усовершенствования в рамках архитектуры SISD ограничиваются включением в нее конвейеров и других дополнительных функциональных узлов, а также использованием разных методов кэширования. Две другие категории архитектур (SIMD, в которую входят векторные процессоры, и конвейерные архитектуры MISD) были реализованы в нескольких проектах, но не стали массовыми. Если оставаться в рамках этой классификации, то единственной возможностью преодоления ограничений «бутылочного горла» остается развитие архитектур класса MIMD. В их рамках обнаруживается множество подходов: это могут быть и различные параллельные и кластерные архитектуры, и многопотоковые процессоры.

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

Для коммерческого рынка – корпоративные IT-системы получат значительное увеличение производительности, используя оптимизированные мультипоточные приложения. Внедрение новых процессоров позволит создавать более сложные системы, с минимальными вложениями, опираясь на существующую инфраструктуру. Кроме того, такие системы отличаются простым управлением, упрощенным менеджментом, низкой совокупной стоимостью владения, высокой эффективностью и производительностью.

Для бизнеса и конечных пользователей – мультиядерная технология AMD способна существенно увеличить количество выполняемой работы в задачах требующих интенсивных вычислений, например таких, как мультимедиа, создание цифрового контента, обеспечения безопасности и других.

Разработчики и тестеры программного обеспечения озадачены созданием новых алгоритмов, обрабатывающих данные одновременно. [2].

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

2.1 Архитектура Intel Core

Рассмотрим технологию Intel Core на примере двухядерного процессора Presler, выполненного по 65-нанометровому технологическому процессу, каждое ядро которого имеет собственный кэш второго уровня L2 объемом 2 Мбайт. Он поддерживает 64-битное расширение памяти Intel EM64T и технологию Executable Disable Bit, с отключенной на аппаратном уровне технологии HyperThreading.

В отличие от двухядерных процессоров Pentium Extreme Edition и Pentium D в процессоре Presler два ядра размещены на разных кристаллах, то есть это будут два физически разделенных кристалла в одной упаковке в соответствии с рисунком 2. Такой подход к организации двухядерной архитектуры предоставляет достаточно гибкие возможности для отбраковки кристаллов, позволяя увеличить долю выхода годных двухядерных процессоров, а к тому же (и скорее всего, в этом главная причина) это позволяет одновременно с двухядерным процессором Presler выпускать и одноядерный аналог, причем кристаллы для обоих процессоров могут «нарезаться» из одних и тех же пластин [3].

Рисунок 2 Структурная схема процессора Presler Микроархитектура Intel Core - фото 2

Рисунок 2 – Структурная схема процессора Presler

Микроархитектура Intel Core, реализованная в процессорах Intel позволяет улучшить соотношение производительности и энергопотребления. Характеристики новой микроархитектуры Intel® Core™:

Технология Intel® Wide Dynamic Execution позволяет обрабатывать больше команд за такт процессора, повышая эффективность выполнения приложений и сокращая энергопотребление. Каждое ядро процессора, поддерживающего эту технологию, может выполнять до четырех инструкций одновременно, используя эффективный конвейер из 14 стадий.

Технология Intel® Intelligent Power Capability делает энергопотребление более низким, активируя отдельные логические подсистемы только по мере необходимости.

Технология Intel® Advanced Smart Cache включает совместно используемую кэш-память 2-го уровня, которая снижает энергопотребление, сводя к минимуму обмен данными с памятью, и повышает производительность, позволяя одному из ядер процессора использовать всю кэш-память при бездействии другого ядра.

Читать дальше
Тёмная тема

Шрифт:

Сбросить

Интервал:

Закладка:

Сделать


Алла Владова читать все книги автора по порядку

Алла Владова - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




Разработка масштабируемых программ для многоядерных архитектур отзывы


Отзывы читателей о книге Разработка масштабируемых программ для многоядерных архитектур, автор: Алла Владова. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
Большинство книг на сайте опубликовано легально на правах партнёрской программы ЛитРес. Если Ваша книга была опубликована с нарушениями авторских прав, пожалуйста, направьте Вашу жалобу на PGEgaHJlZj0ibWFpbHRvOmFidXNlQGxpYmtpbmcucnUiIHJlbD0ibm9mb2xsb3ciPmFidXNlQGxpYmtpbmcucnU8L2E+ или заполните форму обратной связи.
img img img img img