ИСТИНА |
Войти в систему Регистрация |
|
ФНКЦ РР |
||
Основное направление развития вычислительных систем последнего десятилетия - наращивание параллелизма и разработка новых программных и архитектурных решений, предназначенных для работы на параллельных системах. Сегодня большинство процессоров являются многоядерными и содержат десятки вычислительных блоков. К 2018 году количество ядер в процессоре составит тысячи [1]. Эффективное взаимодействие такого количества устройств внутри кристалла является актуальной и сложной научно-технической и инженерной задачей, не решенной на сегодняшний день [2]. На аппаратном уровне взаимодействие устройств внутри процессора сводится к обмену данными и служебными сигналами по внутренним каналам, так называемый интерконнект. Первоначально различные блоки процессора соединялись общей синхронной параллельной шиной с арбитражем для обеспечения работы многих устройств - топология типа «шина». Синхронность, большая ширина (64 и более разрядов) и протяженность таких шин не позволяла значительно повышать рабочую частоту и количество блоков процессора на такой шине. С прогрессом кремниевых технологий произошел переход от параллельных шин к высокочастотным пакетным сетям с топологией типа "звезда"или "дерево" , так называемым коммуникационным фабрикам (communication fabrics). Такой интерконнект обеспечивает существенно большую пропускную способность и масштабируемость. Пока одно устройство на параллельной шине передает данные, остальные блоки ожидают. Внутри коммуникационной фабрики одновременно может протекать множество транзакций, проводимых разными устройствами и находящихся на разных стадиях исполнения. Сommunication fabrics давно стали нормой для x86 процессоров. В 2001 году компания AMD анонсировала point-to-point шину Hypertransport. Сегодня применяется пятая версия - Hypertransport 3.1. Компания INTEL для быстрой низколатентной связи процессоров применяет point-to-point интерконнект QPI. Наиболее известным интерконнектом для ARM процессоров является шина AMBA 4, доступная в том числе для связи блоков в программируемых логических схемах (ПЛИС), которые являются одним из наиболее современных и эффективных способов апробации новых схемотехнических в "железе". В рамках данной работы для ПЛИС Xilinx семейств Virtex5, Virtex6 разработана коммуникационная сеть с малыми задержками для объединения сотен вычислительных ядер внутри процессора. Разработанная нами сеть SPB (Simple Packet Bus) является исключительно легкой по затратам ресурсов ПЛИС : communication fabrics на 64 ядра требует 1500 LUT на ядро. Сеть является низколатентной и высокочастотной: задержка при двухстороннем обмене между ядрами от 23 тактов при рабочей частоте до 300 МГц. SPB обепечивает обмен между вычислительными ядрами, работу с общей памятью, блочные передачи, в т.ч. DMA, поддержку "легких потоков". Проведенное в работе сравнение с аналогичными сетями, среди которых AXI4, Hypertransport, PCIe, показывает конкурентноспособность разработанной SPB, как интерконнекта прототипа масштабируемой многоядерной системы на ПЛИС. Рассматриваемая коммуникационная сеть разработана и применяется в рамках проекта MALT - Multicore Architecture with Lightweight Threads [3]. Это открытый проект создания прототипа масштабируемого сервера, предназначенного для применения в хостинг-центрах и энергоэффективных ЦОД, содержащего тысячи или десятки тысяч предельно простых процессорных ядер с разрешением конфликтов одновременного доступа к данным на уровне контроллера общей памяти и аппаратными механизмами планирования и исполнения легких потоков, работающего под управлением единой POSIX-совместимой операционной системы. 1. John Shalf, Sudip Dosanjh, and John Morrison Exascale Computing Technology J.M.L.M. Palma et al. (Eds.): VECPAR 2010, LNCS 6449, pp. 1–25, 2011. 2. Li-Shiuan Peh, Stephen W. Keckler, and Sriram Vangal On-Chip Networks for Multicore Systems Springer Science+Business Media, LLC 2009 3. Cоздание прототипа масштабируемого сервера на базе ПЛИС, http://maltsystem.ru/ru/
№ | Имя | Описание | Имя файла | Размер | Добавлен |
---|