Серия вебинаров XACC Tech Talk
XACC - Xilinx Adaptive Compute Clusters - это инициатива по поддержке новых исследований в области адаптивного ускорения вычислений для высокопроизводительных вычислений (HPC). Объем программы широк и охватывает системы, архитектуру, инструменты и приложения.
Пока объявлено о двух сессиях.
XACC Tech Talk 1
Состоится 10 июня 17:00-18:00 (CET/GMT+2)
Ссылка на регистрацию
Темы докладов:
- Coyote: Имеют ли смысл абстракции ОС в ПЛИС?
Гибридные вычислительные системы, состоящие из ЦП-сервера в сочетании с FPGA для ускорения приложений, сегодня являются обычным делом в центрах обработки данных и облаках. ПЛИС могут обеспечить огромное повышение производительности и энергоэффективности для целого ряда рабочих нагрузок, но разработка и развертывание приложений на основе ПЛИС остается громоздкой.
Мы задаем другой вопрос: в какой степени традиционные абстракции ОС имеют смысл в контексте FPGA как части гибридной системы? Чтобы ответить на этот вопрос, мы создали и оценили Coyote, портативную настраиваемую “оболочку” с открытым исходным кодом для ПЛИС, которая предоставляет полный набор абстракций ОС, работающих с основной ОС. Coyote поддерживает безопасное пространственное и временное мультиплексирование ПЛИС между виртуальной памятью, связью и управлением памятью в единой среде выполнения. Накладные расходы Coyote невелики, а выгода от производительности значительна.
Coyote: https://github.com/fpgasystems/Coyote
- Ориентированное на данные программирование ПЛИС с многоуровневым дизайном
Хотя инструменты высокоуровнего синтеза (HLS) значительно повысили производительность программистов по сравнению с языками описания аппаратуры, разработка для ПЛИС остается утомительной и подверженной ошибкам. Программисты должны изучить и реализовать большой набор синтаксиса, шаблонов и трюков, специфичных для конкретного производителя ПЛИС, чтобы оптимизировать (или даже успешно скомпилировать) свои приложения.
Мы предлагаем новый способ разработки, оптимизации и компиляции программ FPGA. Платформа параллельного программирования, ориентированного на данные (DaCe - Data-Centric), позволяет приложениям определяться их потоком данных и потоком управления через представление мультиграфа потока данных с отслеживанием состояния (SDFG - Stateful DataFlow multiGraph), фиксируя абстрактные характеристики программы и предоставляя множество возможностей оптимизации. SDFG расширяются многоуровневыми библиотечными узлами, которые включают в себя как доменную, так и платформенную оптимизацию маршрута проектирования. Мы покажем, как мощный бэкэнд DaCe, генерирует эффективный код HLS, который структурирован и аннотирован для реализации требуемых архитектур и достижения высокой производительности на практике
DaCe: https://github.com/spcl/dace