Алтайский государственный университет
Опубликован: 12.07.2010 | Доступ: свободный | Студентов: 1462 / 389 | Оценка: 4.02 / 3.93 | Длительность: 16:32:00
ISBN: 978-5-9963-0349-6
Специальности: Разработчик аппаратуры
Лекция 1:

Предпосылки, вызовы, модели мира современных высокопроизводительных вычислений

Лекция 1: 12 || Лекция 2 >

Возможные пути обхода проблем

Можно допустить существование следующих альтернативных схем. Одна, фон-неймановская, предполагает, что вычислительным процессом управляет поток команд, а данные, в основном статичные, выбираются из каких-то систем хранения или из памяти. Вторая схема основывается на том, что процессом вычислений управляют входные потоки данных, которые на входе системы попадают в подготовленную вычислительную инфраструктуру, обладающую естественным параллелизмом. С точки зрения реализации первая схема гораздо проще, кроме того, она универсальна, программы компилируются и записываются в память, а вторая требует специальной сборки нужной для определенной задачи аппаратной конфигурации. Вторая схема старше; пример тому - табуляторы, изобретенные Германом Холлеритом и с успехом использовавшиеся на протяжении нескольких десятилетий. Корпорация IBM достигла своего могущества и стала одной из самых влиятельных компаний в США, производя электромеханические табуляторы для обработки больших массивов информации, не требующей выполнения логических операций. Их программирование осуществлялось посредством коммутации на пульте, а далее устройство управления в соответствии с заданной программой координировало работу остальных устройств.

Антимашина

Рис. 1.1. Антимашина

От машины фон Неймана антимашина [1] отличается наличием одного или нескольких счетчиков данных, управляющих потоками данных. Она программируется с использованием потокового обеспечения (Flowware), а роль центрального процессора в ней играют один или несколько процессоров данных (Data Path Unit, DPU). Центральной частью антимашины может стать память с автоматической последовательностью (Auto-Sequence Memory) ( рис. 1.1).

Асимметрия между машиной и антимашиной наблюдается во всем, за исключением того, что антимашина допускает параллелизм внутренних циклов, а это значит, что в ней решается проблема параллельной обработки данных. В антимашине доступ к памяти обеспечивается не по адресу команды или фрагмента данных, записанному в соответствующий регистр, а посредством универсального генератора адресов (Generic Address Generator, GAG). Его преимущество в том, что он позволяет передавать блоки и потоки данных. В то же время компиляция, посредством которой создается специализированная под определенную задачу система, заключается в объединении нужного количества настроенных процессоров данных в общий массив (Data Process Array, DPA), на котором выполняются алгоритмы Flowware и который может быть реконфигурируемым.

Методология GAG непоследовательна, а потому обладает такими достоинствами, как возможность работы с двумерными адресами, что дает неоспоримые преимущества при работе с видеоданными и при выполнении параллельных вычислений. Счетчик данных (data counter) - альтернатива счетчику команд в машине фон Неймана; его содержимым управляет Flowware. Для новой методологии придумано и новое название - twin.paradigm; оно отражает симбиоз вычислительных ядер двух классов как обычных центральных процессоров, построенных по фон-неймановской схеме, так и процессоров данных, реализующих антимашины.

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

Теоретически возможно существование трех подходов к созданию реконфигурируемых процессоров.

Специализированные процессоры (Application-Specific Standard Processor). Процессоры, имеющие набор команд, адаптированный к определенным приложениям.

Конфигурируемые процессоры (Configurable Processor). Своего рода "заготовки" для создания специализированных процессоров, содержат в себе необходимый набор компонентов, адаптируемый к требованиям приложений. В таком случае проектирование специализированного процессора оказывается проще, чем с чистого листа.

Динамические реконфигурируемые процессоры (Dynamically Reconfigurable Processor). Процессоры, содержащие стандартное ядро и расширяющее его возможности устройство, которое может быть запрограммировано в процессе исполнения; обычно это бывает программируемая логическая матрица (Field Programmable Gate-Array, FPGA).

В качестве еще одного пути развития вычислительных средств, сочетающего в себе и переход к параллельным системам и процессорам, и управление данными, можно назвать постепенный переход к системам на базе или с применением искусственного интеллекта. Действительно, если рассмотреть традиционное сравнение характеристик систем искусственного интеллекта с традиционными программными системами, видно, что в них подразумевается и адаптивность структуры, и высокий уровень параллелизма - таким образом, есть потенциальная возможность наиболее полно использовать возможности многоядерных архитектур ( таблица 1.1 [3]).

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

Таблица 1.1. Сравнение свойств обычных ЭВМ и компьютеров для реализации экспертных систем
Свойства обычных компьютеров Свойства компьютеров для экспертных систем
Процедурно управляемый поток вычислений Поток вычислений, управляемый данными
Числовая обработка Символьная обработка
Рассуждения с расширяющимся множеством выводов Рассуждения с уменьшающимся множеством выводов
Фон-неймановская архитектура Архитектура, отличная от фон-неймановской
Алгоритмическая обработка Эвристическая обработка
Обслуживание программистами Обслуживание инженерами знаний
Последовательная обработка Интерактивная и параллельная обработка
Структурированный процесс проектирования (линейный) Интерактивный процесс проектирования (циклический)

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

Краткие итоги

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

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

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

Контрольные вопросы

  1. В чем состоят проблемы выполнения закона Мура?
  2. Охарактеризуйте особенности использования современных вычислительных систем.
  3. Дайте оценку следующим параметрам микропроцессоров с точки зрения их развития: размер, энергопотребление, память, параллелизм.

Упражнения

  1. Охарактеризуйте круг фундаментальных и прикладных проблем процессорной техники.
  2. Проследите основные тенденции развития микропроцессоров за последние 10 лет.
  3. Посмотрите характеристики энергопотребления современных приложений в различных областях.
Лекция 1: 12 || Лекция 2 >
Сергей Горбунов
Сергей Горбунов

 

прошел курс и сдал экзамен   Многоядерные процессоры   

система сертификат не выдала. почему?