Видео: РС DONI ft Ð¢Ð¸Ð¼Ð°Ñ Ð¸ Ð Ð¾Ñ Ð¾Ð´Ð° Ð Ñ ÐµÐ¼Ñ ÐµÑ Ð° клипа, 2014 (Ноябрь 2024)
Одна из самых интересных тенденций, которые я видел в серверных вычислениях, - это отход от стандартных процессоров и переход к большей обработке на графических чипах (GPU) и реконфигурируемых процессорах, известных как программируемые вентильные массивы (FPGA). Это явление часто называют гетерогенными вычислениями.
Концепция здесь не нова: на протяжении многих лет графические процессоры и другие ускорители все чаще используются в высокопроизводительных вычислениях (HPC) или суперкомпьютерах. Но в последнее время мы стали больше слышать о том, как Intel адаптировала некоторые пакеты серверных чипов для включения FPGA в дополнение к традиционному ЦП, ориентированному в основном на крупных поставщиков облачных вычислений гипермасштабного уровня, у которых есть специальные алгоритмы, которые они могут выполнять в качестве аппаратных инструкций на FPGA. Это должно быть намного быстрее, чем выполнять их как программное обеспечение на более общих инструкциях ЦП.
Это было ключевым фактором недавнего плана Intel по приобретению производителя ПЛИС Altera. Генеральный директор Intel Брайан Крзанич (Brian Krzanich) сказал, что он ожидает, что до 30 процентов облачных рабочих нагрузок будут иметь какое-то ускорение FPGA к концу десятилетия. Microsoft уже использует ПЛИС Altera для поддержки многих своих облачных сервисов, таких как поиск Bing.
Для большинства компаний, использующих FPGA - или, если на то пошло, GPU, - было одно серьезное препятствие в более типичных случаях корпоративных вычислений: заставить программное обеспечение работать одновременно на этих чипах вместе с процессором очень сложно. (Для корпоративных рабочих нагрузок и даже для высокопроизводительных вычислений вам всегда понадобятся некоторые ЦП; в других видах приложений, таких как сети, производители оборудования могут просто использовать FPGA.) Для вычислений на GPU мы видели такие вещи, как CUDA от Nvidia и Khronos. Стандарт OpenCL группы, который облегчает работу, и мы, конечно, видели, что многие алгоритмы HPC и машинного обучения используют графические процессоры. Сейчас производители FPGA, такие как Altera, также поддерживают OpenCL, но в более общем случае корпоративных вычислений это оказалось слишком сложным.
В последнее время я разговаривал с парой компаний, которые надеются сделать это проще.
Bitfusion - это стартап, который я впервые увидел на TechCrunch Disrupt; его технология нацелена на то, чтобы позволить вам переместить приложение из CPU в GPU или FPGA, не переписывая его для каждой платформы. Как объяснил генеральный директор Subbu Rama, пакет теперь работает, ища общие библиотеки с открытым исходным кодом, используемые разработчиками программного обеспечения, и заменяет функции внутри них функциями, которые могут использовать преимущества GPU или FPGA. Как он объяснил, крупные компании могут переписать свой код, но компании среднего бизнеса не могут. Приложения включают в себя научные вычисления, финансовые приложения, такие как анализ рисков и высокочастотную торговлю, а также аналитику данных, например работу с данными датчиков нефти и газа.
В конце концов он сказал, что это может работать с любым языком, который вызывает такие библиотеки. Он отметил, что замена библиотек может быть не такой эффективной, как написание собственного кода для ПЛИС или графических процессоров, но это намного проще.
Bitfusion планирует предлагать свои продукты в трех разных моделях - как чистое программное обеспечение для компаний, которые уже имеют свои собственные ускорители; предустановлен на технику; или для приложений, развернутых в облаке, через партнерство с Rackspace. Первоначально для этого будут использоваться ПЛИС Altera, хотя компания заявляет, что может работать и с другими процессорами. Рама говорит, что первые клиенты используют это сейчас, а публичная доступность запланирована на ближайшие пару месяцев.
SRC использует несколько иной подход. С 1999 года он создает «реконфигурируемые серверы» для правительственных учреждений и в настоящее время разрабатывает решение, нацеленное на гипермасштабные центры обработки данных и веб-операции. Названный сервером Saturn 1, это картридж, который подключается к корпусу HP Moonshot, и SRC заявляет, что он может обеспечить производительность компьютера, которая в 100 раз выше, чем у традиционных конструкций микропроцессоров. (Компания также продает более крупные и монтируемые в стойку полноразмерные системы, как правило, для своих крупных клиентов.)
По словам генерального директора Джона Хуппентала, особенность, которая отличает это, - это специальный компилятор, известный как Carte, который преобразует код в кремниевый дизайн, который может работать на архитектуре FPGA. Он рассказал мне, что SRC потратила годы на создание компилятора, первоначально для бизнес-клиентов, с тех пор как в 90-х годах фирма была основана пионером суперкомпьютера Сеймуром Креем и Джимом Гузи. По его словам, одно из различий в подходе SRC заключается в том, что Carte не предназначен для универсальных систем, а скорее привязан именно к архитектуре SRC, что придает ему большую производительность и согласованность. Saturn 1 использует две FPGA Altera - одну, которая выполняет код пользователя; другой, который поддерживает быстродействие системы, вместе с одним процессором Intel. В настоящее время, добавил он, компания находится на 12-м поколении реконфигурируемых процессоров.
Это более дорогое решение, ориентированное в основном на довольно крупные вычислительные центры, но оно все же более доступно, чем предыдущие подходы
Идея использования ПЛИС или реконфигурируемых процессоров для более масштабных задач не нова. Тем не менее, потребовалось много времени, чтобы это стало даже возможностью для более традиционных клиентов, помимо разработчиков оборудования или военных приложений. Эти новые подходы могут предвещать начало более широкого использования этой технологии, но только в том случае, если улучшения в соотношении цена / производительность действительно соответствуют заявленным поставщикам требованиям и технология становится более простой в использовании. Новые подходы являются шагом в этом направлении.