Источник: http://www.ict.edu.ru/vconf/files/11499.pdf
О применении реконфигурируемых унифицированных вычислителей для решения научно-технических задач
С.Я. Гильгурт
Программируемые логические интегральные схемы (ПЛИС) в настоящее время все чаще используются для решения ресурсоемких вычислительных задач. Помимо реконфигурируемых суперкомпьютеров развивается альтернативное направление -применение недорогих типовых устройств, реконфигурируемых унифицированных вычислителей (РУВ), подключаемых к существующим универсальным компьютерам. Ключевым фактором их массового распространения является стандартизация и унификация обмена данными между загруженной в РУВ вычислительной структурой и остальными компонентами вычислительной системы. В работе проанализированы способы реализации такого обмена по современным интерфейсам. Исследованы возможности применения РУВдля решенияконкретных научно-технических задач.
1. Введение
В 50-е годы прошлого столетия, на заре электронных вычислений, трудно было предположить, что унификация и стандартизация компьютерного оборудования, а также программная и ОС-совместимость станут решающими факторами, предопределившими направление развития отрасли.
В 80-е годы, когда начиналась эпоха персональных ЭВМ, история в значительной степени повторилась. Но на этот раз кое-кто сумел оценить предыдущий опыт и правильно предугадать направление.
Сегодня, на исходе 00-х годов нового тысячелетия, ситуация с параллельными вычислениями и суперкомпьютингом в значительной степени повторяет две предыдущие истории. Создается множество разнородных, несовместимых, уникальных систем, ведутся споры о том, какая архитектура для каких классов задач предпочтительнее. Вкладываются огромные средства, составляются долгосрочные программы. При этом о возможности единообразного унифицированного решения на все случаи жизни даже не заходит речь. А ведь уже через 10-12 лет каждому инженеру будет доступна вычислительная мощь сегодняшних суперкомпьютерных систем – участниковсписка "Top500".
Анализ истории вычислительной техники неумолимо наводит на мысль, что уже в недалеком будущем появится многочисленное семейство суперкомпьютеров, таких же однотипных и универсальных, как современные ПЭВМ. Не вызывает сомнений, что и в третий раз унификация и, как следствие, массовое распространение позволят снизить их стоимость, что в свою очередьприведет к лавинообразному удешевлению, росту спроса и производства таких систем.
Исследование закономерностей в развитии электроники и компьютеростроения позволяет предсказать наиболее вероятные подходы к построению завтрашних высокопроизводительных систем.
В настоящей работе предлагается при прогнозировании путей развития высокоэффективных вычислительных средств не отталкиваться от актуальности задач, требующих неотложного решения сегодня, и необходимой для этого мощности, а исходить из минимизации затрат на разработку и изготовление, простоты реализации, а также минимизации риска потерь вложений вследствиеморального старенияоборудования.
2. Потенциал программируемой логики
Появление и массовое распространение ПЭВМ обязано революционному прорыву в области микроэлектроники – созданию микропроцессора. Сегодня с трудом верится, что изначально микропроцессоры задумывались и создавались исключительно для применений в области электроники. Лишь со временем, достигнув определенного уровня вычислительной мощности, они выступили в качествеосновы для персональных компьютеров.
Сегодня соизмеримым по значимости прорывом в микроэлектронике являются программируемые логические интегральные схемы (ПЛИС). Первоначально программируемая логика позиционировалась в качестве замены сложных БИС, ориентированных, как когда-то микропроцессоры, только на "электронные" применения. Однако на сегодняшний день ПЛИС достигли такого уровня развития, что могут быть с успехом задействованы (и уже используются) в качестве элементной базы для эффективного решения вычислительных задач, в том числе -высокопроизводительных.
В чем же заключается революционность и беспрецедентный потенциал программируемой логики?
Долгое время единственной возможностью доступного по стоимости решения конкретной ресурсоемкой вычислительной задачи было создание специального нестандартного устройства. Ориентированный на одну задачу или на очень узкий класс задач специализированный вычислитель обеспечивал требуемую производительность, но область его применений этим классом задач и ограничивалась. Универсальные ЭВМ, и ПЭВМ в частности, с их высокой гибкостью и широким спектром решаемых задач существенно проигрывали спецвычислителям в быстродействии.
Современные микросхемы программируемой логики содержат миллионы эквивалентных логических элементов и позволяют синтезировать внутри себя довольно мощные цифровое устройства, в том числе – высокопроизводительные параллельные структуры. Загрузка требуемой конфигурации в ПЛИС (фактически – изготовление схемы) занимает по времени доли секунды. Количество циклов реконфигурирования неограниченно. Эти особенности дают программируемой логике возможность в значительной степени разрешить противоречие между универсальными и специализированными процессорами, совмещая в себе гибкость первых и быстродействие вторых.
3. Необходимость стандартизации
Одним из важнейших факторов снижения стоимости и широкого распространения ПЭВМ является разделение труда.
Организации и коллективы, создававшие первые ЭВМ были вынуждены самостоятельно решать весь комплекс сопутствующих проблем, таких как изготовление и обслуживание аппаратуры, разработка системного и прикладного программного обеспечения (ПО). В случае с ПЭВМ ситуация выглядит совершенно иначе. Различными вопросами в соответствующих областях занимается большое число фирм и организаций. В общем случае можно наблюдать наличие отдельных лидеров в таких сферах, как разработка и изготовление центральных процессоров, наборов системной логики (чипсетов), видео-аудио-и сетевых компонентов, модулей памяти, постоянных и сменных накопителей информации и т.п. вплоть до систем охлаждения. В сфере производства программного обеспечения разделение еще более масштабное. Самые удачны разработки, как правило, принадлежат компаниям, сосредоточившим усилия в узкой конкретной области. Многочисленные фирмы создают системное, инструментальное и прикладное ПО для самых различных приложений.
Следует обратить внимание, что принципиальную возможность разделения труда, о котором здесь говорится, дает унификация и стандартизация технических решений, интерфейсов и протоколов.
Суперкомпьютингу, как более сложному и высокоорганизованному явлению, разделение труда необходимо в значительно большей степени. Использование программируемой логики в дополнение к вышеперечисленным позволяет выделить принципиально новую область приложения усилий: разработка и отладка конфигураций, загружаемых в ПЛИС. Соответственно еще больше возрастает потребность в согласовании действий специалистов разных областей, в стандартизации.
Отсутствие единых, унифицированных подходов к построению вычислительных систем на базе программируемой логики сводит на нет огромный потенциал реконфигурируемой техники. Беспрецедентная гибкость, обусловленная возможностью загрузки в ПЛИС произвольной структуры, практически полностью обесценивается, как только вычислительный процесс выходит за пределы программируемой БИС. Различные разработчики реконфигурируемых параллельных систем по-своему решают вопросы взаимодействия ПЛИС с остальными компонентами суперкомпьютера, что в целом приводит к неоправданным расходам в данной отрасли.
Еще одним путем снижения стоимости и экономии вложений является использование, максимально возможное задействование существующих решений и ресурсов. При создании первых персональных ЭВМ, существовавший опыт разработки аппаратуры и ПО тогдашних мейнфреймов мало чем мог пригодиться. Сейчас ситуация иная. Огромное количество наработок, особенно в области программного обеспечения не может быть проигнорировано. Для задействования существующего потенциала реконфигурируемые вычислительные средства должны максимально плотно взаимодействовать с существующим микропроцессорным оборудованием.
4. Взаимодействие ссуществующей техникой
В работе [1] на основе анализа ряда факторов был сделан вывод о том, что развитие реконфигурируемой техники широкого применения пойдет по пути тесного сотрудничества, взаимодействия с существующими вычислительными средствами, как однопроцессорными, так и параллельными, для которых накоплен богатый опыт разработки и эксплуатации. В процессе исследования были также выявлены и изучены различные формы взаимодействия гибкой и «жесткой» логики, предпринята попытка классифицировать широкий спектр возможных технических решений, оценить их эффективность.
Главным результатом работы является формирование концепции реконфигурируемого унифицированного вычислителя (РУВ). Применительно к теме настоящей работы такое устройство можно рассматривать как типовой элемент высокопроизводительной системы, содержащий одну микросхему программируемой логики и минимум вспомогательных компонентов. Аппаратный состав вычислителя должен обеспечивать эффективный обмен данными с остальными компонентами системы, атакже с другимиРУВ.
Экономичность такого решения обусловлена максимальным использованием существующих технологий и наработок традиционной широко распространенной вычислительной техники. В первую очередь это относится к каналам связи с управляющим центральным процессором, памятью, накопителями данных, сетевой инфраструктурой.
Высокая масштабируемость рассматриваемого решения позволяет начать работы в данном направлении без существенных начальных вложений. Для проведения первых экспериментов достаточно иметь стандартную ПЭВМ и одно или несколько устройств, отвечающих основным требованиям, предъявляемым к РУВ. В качестве таких устройств на начальном этапе могут быть задействованы некоторые из так называемых плат прототипа, предназначенных для разработки приложений на программируемой логике. В источнике [2] собрана и поддерживается в актуальном состоянии подробная информация оботладочных средствах дляПЛИС.
5. Реконфигурируемый унифицированный вычислитель
Требования к структуре и составу РУВ, сформулированы, например, в работе [3]. Рассмотрим и кратко прокомментируем перечень обязательных компонентов, которые должен содержать реконфигурируемых вычислитель.
5.1 Микросхема ПЛИС
Большая интегральная схема ПЛИС является главным компонентом вычислителя, реализующим требуемую функциональность после загрузки в нее соответствующей конфигурации. Наличие всего одной микросхемы является принципиальным моментом, поскольку в случае наличия двух и более ПЛИС возникает необходимость стыковать их между собой внутри РУВ, а это приведет к снижению универсальности, зависимости от производителя и типа семейства микросхемы, что резко ограничит возможности унификации устройства.
5.2 Контроллер обменаданными
Контроллер, аппаратно реализующий алгоритм какой-либо скоростного интерфейса передачи данных необходим для обмена информацией с центральным процессором, прочими компонентами вычислительной системы, а также с другими РУВ. Другой важной функцией этого контроллера является обеспечение загрузки в ПЛИС требуемой конфигурации. Именно по этой причине реализация контроллера как части реконфигурируемой структуры недопустимо, поскольку технологически большинство микросхем программируемой логики, пригодных для использования в реконфигурируемых вычислителях (типа FPGA) устроено по принципу статического ОЗУ, содержимое памяти конфигурации которых энергозависимо (теряется при пропадании питающего напряжения).
На практике контроллер обмена данными может быть реализован как в виде специализированной БИС, так и на основе небольшой вспомогательной ПЛИС. Фиксированная конфигурация в этом случае хранится либо в энергонезависимой флэш-памяти, либо загружается автоматически из специального ПЗУ после подачи на устройство питающего напряжения.
Виды интерфейсов, которые могут быть использованы для обмена данными, рассмотрены в следующем разделенастоящей работы.
5.3. Локальное ОЗУ
Быстродействующее локальное двухпортовое ОЗУ небольшого объема необходимо для сверхоперативного хранения промежуточных результатов обработки информации, производимой в реконфигурируемом вычислителе. Строится оно, как правило, на базе памяти статического типа.
Применение в РУВ запоминающих устройств большой емкости в виде устанавливаемых в стандартные разъемы типовых модулей памяти, например типа DDR-II, нецелесообразно, поскольку резко повышает стоимостьвычислителя и снижает его универсальность. Следуеттакже заметить, что модули памяти – самые быстроизменяемые компоненты современных универсальных компьютеров. Их использование в составе РУВ приведет к быстрому моральному старению последних.
5.4. Прочие компоненты
В качестве примера вспомогательных элементов, облегчающих эксплуатацию РУВ, могут служить отладочные микропереключатели и светодиоды. Наличие этих минимальных диагностических средств упростит в случае необходимости тестирование и анализ технического состояния изделия.
6. Интерфейсы обмена данными
Спектр возможных вариантов подключения реконфигурируемого вычислителя к универсальному компьютеру довольно широк. В общем случае для этой цели может быть задействованы любые имеющиеся в ПЭВМ интерфейсы периферийных устройств, интерфейсы обмена с накопителями данных, а также системные шины, связывающие различные компоненты компьютера.
В таблице 1 сведены наиболее производительные каналы обмена данными из вышеперечисленных категорий.
Таблица 1. Интерфейсыобмена данными сРУВ.
Рассмотрим их подробнее.
Интерфейсная периферийная шина USB является самым медленным из рассматриваемых решений. К достоинствам данного варианта можно отнести возможность задействования большого числа РУВ, удобство подключения к ПЭВМ (в том числе – в режиме "на лету"), а также возможность построения суперкомпьютерной системы набазе мобильных компьютеров.
Подключение РУВ аналогично накопителям данных, в частности, через интерфейс Serial ATA также не очень эффективно по быстродействию.
Использование для обмена с РУВ системных шин в большинстве случаев является оптимальным по соотношению производительность/стоимость решения. Число используемых вычислителей может быть достаточным для построения относительно больших реконфигурируемых систем. Этот вариант также является одним из самых надежных в плане защиты от морального старения, поскольку стандарты системных шин в современных универсальных ЭВМ являются одними из самых консервативных.
Вариант применения РУВ, конструктивно выполненных в виде модуля памяти на первый взгляд представляется привлекательным из-за высокого быстродействия. Однако ему присущи и существенные недостатки. Прежде всего, это небольшое количество свободных слотов, которые необходимо делить с модулями памяти. Кроме того, на размеры РУВ в этом варианте накладываются существенные ограничения.
Решение, основанное на технологии HyperTransport, является самым новым среди упомянутых. По этой причине трудно провести объективную оценку данного варианта. Из известных на сегодняшний день преимуществ можно назвать высокое быстродействие, а также возможность реализации РУВ в конструктиве, аналогичном центральному процессору, то есть в виде модуля, вставляемого в процессорный сокет на материнской плате, изготовленной, например, в двухпроцессорном варианте. Примечательно, что в этом случае охлаждение вычислителя может осуществляться стандартным кулером, ориентированным на применение с ЦП. Очевидными недостатками решения являются высокая стоимость и ограничение по числу одновременно подключенных РУВ. Негативным также следует признать тот факт, что данная технология в настоящее время не поддерживается основным производителем микропроцессоров и наборов системной логики для персональных ЭВМ – фирмой Intel. Впрочем, данная компания ведет своисобственныеразработки в данном направлении.
7. Решение конкретных задач
В работах [4-10] на конкретных примерах исследованы возможности применения РУВ для решения задач распознавания, нейросетевых вычислений, в области защиты информации (в частности, в качестве криптопроцессоров, для аутентификации пользователей компьютерных систем по клавиатурному почерку, в целях аппаратной защиты информационных систем от вредоносного ПО), проблем хранения и обработки больших объемов данных и других актуальных научно-технических задач.
8. Заключение
По результатам настоящего исследования можно сделатьследующие выводы.
Применение реконфигурируемых унифицированных вычислителей представляется целесообразным для создания недорогих суперкомпьютерных систем широкого применения.
Программируемая логика является тем революционным достижением современной микроэлектроники, которое существенно повлияет на дальнейшее развитие высокопроизводительных вычислений.
Для снижения стоимости, которое приведет к массовому производству реконфигурируемых суперкомпьютеров широкого применения, необходима стандартизация и унификация, а также разделение труда разработчиков аппаратуры, загружаемых в ПЛИС конфигураций и различного программного обеспечения.
Другим источником снижения затрат на разработку и изготовление реконфигурируемых суперкомпьютеров является ориентация на максимальное использование существующих наработок и технологий вобласти компьютеровширокого применения.
Оптимальным по соотношению производительность/стоимость (а также в плане защиты от морального старения) решением для обмена данными с РУВ является использование системных шин PCI / PCI-X / PCI Express.
Литература
1. Гильгурт С.Я. Применение типовых устройств на базе программируемой логики для решения вычислительных задач // Тез. докл. II международной конф. «Параллельные вычисления и задачи управления», 4–6 окт. 2004 г. – М.: Институт проблем управления им.В.А.Трапезникова РАН, 2004. – С. 514–530.
2. FPGA Boards and Systems – http://www.fpga-faq.com/FPGA_Boards.shtml
3. Гильгурт С.Я., Гиранова А.К. Программное обеспечение для тестирования аппаратных средств реконфигурируемых вычислителей // Моделювання та інформаційні технології. Зб. наук. пр. ІПМЕ НАН України. – Вип. 38. – Київ: 2006. – С. 8–14.
4. Гильгурт С.Я. К вопросу о применении реконфигурируемых вычислителей в современных технологиях хранения данных // Тез. доп. XXV наук.-техн. конф. «Моделювання» – Київ: Інститут проблем моделювання в енергетиці ім.Г.Є.Пухова НАН України, 2006. – С. 171–175.
5. Гильгурт С.Я., ДавиденкоА.Н. Решение задач распознавания с применением реконфигурируемых вычислителей. Искусственный интеллект. Интеллектуальные и многопроцессорные системы – 2006 // Тез. докл. Международной научно-технической конференции. Т. 2. – Таганрог: Изд-во ТРТУ, 2006. – С. 76–79.
6. Гильгурт С.Я., Давиденко А.Н, Кочурков А.А. Анализ требований к шифраторам на базе ПЛИС, предъявляемых современными информационными технологиями // Зб. наук. пр. ІПМЕ НАН України. – Вип. 30. – Київ: 2005. – С. 17–26.
7. Давиденко А.М., Гільгурт С.Я., ВисоцькаО.О., КочурковА.А., Чернова Ю.О. Експериментальне дослідження програми для автентифікації користувачів комп'ютерної системи за клавіатурним почерком за допомогою імовірнісної нейронної мережі // Вісник Національного технічного університету «ХПІ». – Х.: НТУ «ХПІ». – 2005. - №56. С. 66– 69.
8. Гильгурт С.Я. Аппаратные средства реализации нейронных сетей на базе реконфигурируемых вычислителей // Тез. докл. III международной конф. «Параллельные вычисления и задачи управления», 2–4 окт. 2006 г. – М.: Институт проблем управления им.В.А.Трапезникова РАН, 2006. – С. 441–450.
9. Гильгурт С.Я. К вопросу о применении реконфигурируемых вычислителей в современных технологиях хранения данных // Тез. доп. XXV наук.-техн. конф. «Моделювання» – Київ: Інститут проблем моделювання в енергетиці ім.Г.Є.Пухова НАН України, 2006. – С. 171–175.
10. Гильгурт С.Я. Особенности применения реконфигурируемых вычислителей для аппаратной защиты информационных систем // Зб. наук. пр. ІПМЕ НАН України. – Вип. 38.
– Київ: 2007. – С. 36–41.