描述

Сохранение прав интеллектуальной собственности на «чипы» в семенной промышленности

просмотр: источник: время:2024-07-09

FPGA может быть использована для решения нескольких задач, требующих больших вычислений. опираясь на конвейерную параллельную архитектуру, FPGA имеет технические преимущества по сравнению с GPU и CPU в обратной задержке результатов вычислений.

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

image.png

производительность FPGA при выполнении вычислительных задач:

производительность вычислений относительно процессора: например, FPGA серии Stratix выполняет целочисленное умножение, его производительность эквивалентна производительности 20-ядерного процессора, а производительность умножения с плавающей запятой эквивалентна производительности 8-ядерного процессора.

производительность вычислений сравнивается с GPU: FPGA для целочисленного умножения и умножения с плавающей запятой, и существует разница на порядок между производительностью и GPU. она может быть близка к производительности GPU, настраивая множители и вычислительные единицы с плавающей запятой.

основное преимущество FPGA в реализации задач, требующих больших вычислений: сортировка поисковых систем, обработка изображений и другие задачи требуют строгих временных ограничений для возврата результатов, и необходимо сократить задержку на этапе вычислений. при традиционной схеме ускорения GPU размер пакета велик, и задержка может достигать уровня миллисекунд. в соответствии со схемой ускорения FPGA задержка PCIe может быть уменьшена до микросекунд. с помощью технологии Forward задержка передачи данных CPU и FPGA может быть снижена до менее чем 100 наносекунд.

f636afc379310a5523272a10d94d78a0832610e0.png

FPGA может построить равное количество трубопроводов (параллельная структура трубопровода) в зависимости от количества шагов пакетов, и пакеты могут быть выведены сразу после обработки несколькими трубопроводами. параллельный режим данных GPU опирается на различные единицы данных для обработки различных пакетов данных, и единицы данных нуждаются в последовательном вводе и выходе. для потоковых вычислений конвейерная параллельная архитектура FPGA имеет естественное преимущество с точки зрения латентности.

когда FPGA используется для решения задач, связанных с коммуникацией, она не ограничивается сетевой картой и лучше, чем CPU, с точки зрения пропускной способности и задержки пакетов, и имеет сильную стабильность задержек.

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

14ce36d3d539b600c9c382399c580e23c75cb7c5.jpg14ce36d3d539b600c9c382399c580e23c75cb7c5.jpg

FPGA выполняет задачи, связанные с коммуникацией:

1преимущество пропускной способности: схема процессора для решения задач, связанных с коммуникацией, должна получать данные через сетевую карту, что легко ограничено производительностью сетевой карты (сетевая карта обработки байтовых пакетов ограничена, количество слотов PCIe и материнской платы PCIe ограничено). схема GPU (высокая производительность вычислений), чтобы справиться с коммуникационно-емкими пакетами задач, отсутствие сетевого порта, необходимость полагаться на сетевую карту для сбора пакетов данных, пропускная способность данных ограничена процессором и сетевой картой, и задержка длительна. FPGA может получить доступ к сетевым линиям 40 Гбит / с и 100 Гбит / с, а также обрабатывать все виды пакетов данных со скоростью проволоки, что может снизить стоимость конфигурации сетевой карты и коммутатора.

2преимущество задержки: схема CPU собирает пакеты данных через сетевую карту и отправляет результаты расчета на сетевую карту. ограниченная производительностью сетевой карты, в рамках обработки пакетов DPDK задержка процессора в решении задач, связанных с коммуникацией, составляет почти 5 микросекунд, а стабильность задержки процессора слаба. при высокой нагрузке задержка может превышать десятки микросекунд, что приводит к неопределенности в планировании задач. FPGA не нуждается в инструкциях и может обеспечить стабильность и очень низкую задержку. FPGA в сотрудничестве с CPU гетерогенным режимом может расширить применение схемы FPGA в сложных устройствах.

развертывание FPGA включает кластеризацию, распределение и так далее, а также постепенный переход от централизации к распределению. при различных режимах развертывания эффективность серверной связи и эффект проводимости неисправностей различны.

встроенная нагрузка на питание FPGA: вложение FPGA мало влияет на общее энергопотребление сервера. возьмем в качестве примера проект FPGA по ускоренному машинному переводу, осуществляемый катапультой и Microsoft, общая вычислительная мощность модуля ускорения достигает 103Tops / W, что эквивалентно 100000 GPU. относительно говоря, вложение одной FPGA увеличивает общее энергопотребление сервера примерно на 30 Вт.


особенности и ограничения развертывания FPGA:

1характеристики и ограничения развертывания кластеров: чипы FPGA образуют выделенный кластер и образуют суперкалькулятор, состоящий из ускорительных карт FPGA (например, ранние экспериментальные платы серии Virtex развертывают 6 FPGA на том же кремниевом чипе, а 4 экспериментальные платы переносятся на юнит-сервер).

выделенный режим кластера не может взаимодействовать между различными машинами FPGA

другие машины в центре обработки данных должны отправлять задачи в кластер FPGA централизованно, что может легко вызвать задержки в сети.

одна точка отказа ограничивает общую пропускную способность центра обработки данных