Даг Бургер (Doug Burger) из группы научных разработок Microsoft Research в ноябре 2012 года предложил радикально новую концепцию технического перевооружения дата-центров, на которых работает поисковая система Bing. Он предложил использовать специализированные микросхемы FPGA (программируемые пользователем вентильные матрицы).
Преимущество FPGA в том, что их можно сконфигурировать под нужды конкретного приложения, изменив логику работы принципиальной схемы. FPGA являются одной из архитектурных разновидностей программируемых логических интегральных схем (ПЛИС) и могут быть модифицированы практически в любой момент в процессе использования.
Вполне логично, что если оптимизировать FPGA под специализированные задачи поисковой системы, то можно значительно повысить эффективность вычислений, сократив энергопотребление серверов. Дагу Бургеру удалось реализовать этот сложный проект. Поначалу руководство дало «зелёный свет» на создание кластера из 1600 тестовых серверов, а сейчас одобрило установку FPGA производства Altera в реальных дата-центрах с «боевыми» серверами. Это состоится в начале следующего года, пишет Wired.
В пилотном проекте инженеры Microsoft соорудили кластер, который назвали Catapult, из 1632 серверов. На каждом из них установлен один процессор Xeon и плата с чипом Altera FPGA, подключённая к общей сети. Система обрабатывает запросы Bing, перекладывая значительную часть работы на FPGA, которые запрограммированы на специфические вычисления для генерации поисковой выдачи. Такие вычисления FPGA осуществляет в 40 раз быстрее обычного ЦПУ. Это означает существенную экономию электроэнергии в дата-центрах. К тому же, инженеры обещают и некоторое ускорение работы самого поисковика Bing в части скорости обработки запросов.
Что тоже важно, архитектуру FPGA можно обновлять и оптимизировать практически так же легко, как обычное программное обеспечение, в случае, если найдут баги или более эффективные алгоритмы. Microsoft будет обновлять FPGA через стандартное ПО для управления серверами, которое у них называется Autopilot.
Усилия Microsoft — один из примеров того, как владельцы большого количества дата-центров пытаются разработать аппаратное обеспечение, более соответствующее их нуждам. Google и Facebook тоже оптимизируют дизайн серверов.