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

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


Скачать книгу
болезнь канала между памятью и процессором – его ограниченная пропускная способность – не исчезла, несмотря на прогресс в области технологии за прошедшие с тех пор 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].

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


Скачать книгу