В рамках ежегодной конференции для разработчиков AMD APU 13 компания AMD представила новый гибридный чип, объединяющий возможности универсальных (CPU) и графических процессоров. Это первый чип компании, построенный и функционирующий в рамках архитектуры HSA (Heterogeneous System Architecture). Вообще конференция AMD считается Меккой гетерогенных вычислений и точкой сбора для всего сообщества людей и компаний, продвигающих идеи HSA. Здесь собираются энтузиасты, занимающиеся разработкой гетерогенных и облачных систем. Гибридные процессоры и стали центральной темой в этом году.
Гетерогенные вычисления как класс породили уже целое сообщество крупных компаний. Для того чтобы прийти к общему знаменателю в вопросах разработки и подходах к программированию в области гетерогенных систем, построенных различными вендорами, в июне 2012 года было основано сообщество HSA Foundation. Кроме AMD, туда входят Texas Instruments, Samsung, Qualcomm, MediaTek, Imagination Technologies и ARM. В рамках конференции AMD, HSA Foundation представили несколько новых членов организации. Среди них опенсорсная компания Canonical, сетевой вендор Broadcom, азиатский производитель железа Huawei, небезызвестная Oracle и другие. Практически каждая из этих компаний либо производит HSA-устройства, либо разрабатывает софтверные решения и платформы, которые поддерживают эти устройства и раскрывают их преимущества - в зависимости от профиля организации. А все потому, что HSA дает чрезвычайно интересные преимущества для самого широкого диапазона задач. Гибридные процессоры с такой архитектурой могут применяться в смартфонах, десктопах, ноутбуках, рабочих станциях, серверах и, как следствие, в современных дата-центрах. Что же такого интересного предлагает AMD в рамках гетерогенной системной архитектуры?
Первые процессоры с архитектурой HSA выйдут уже в январе 2014 года под кодовым названием Kaveri. Изначально это будут десктопные чипы, но архитектура предполагает использование таких процессоров практически в любых устройствах, способных обеспечить достаточное электропитание. В рамках традиционной архитектуры CPU и GPU работают параллельно, и у каждого процессора есть собственный кеш. Мало того, что данные постоянно копируются между сегментами памяти процессоров, так CPU ещё и контролирует работу GPU, что создает дополнительную задержку в вычислениях.
HSA решает эту проблему за счёт того, что универсальный и графический процессор обращаются к одной и той же области памяти, то есть имеют общий кеш. Благодаря этому разработчики могут заставить приложения обращаться именно к тому процессору, который лучше всего подходит для выполнения той или ной задачи. То есть несколько вычислений может производиться в одной и той же области памяти: такой подход применяется в многоядерных CPU. Ещё HSA с многоядерной архитектурой роднит то, что оба процессора могут работать в рамках одного кристалла кремния, что по сути делает этот процессор примером SoC - системы на кристалле.
Глава серверного направления AMD Эндрю Фельдман (Andrew Feldman) считает, что у HSA большие перспективы на серверном рынке. Хорошими примерами отраслей, где можно применить HSA как часть серверного массива, могут служить облачные игровые сервисы или ЦОДы нефтегазовых компаний, где требуется много расчётов и в то же время визуализации.
Фил Роджерс (Phil Rogers), работающий над Kaveri, сказал, что больше всего HSA архитектура подойдет для тех серверных приложений, которые разработаны для видеопроцессинга и анализа данных. Видеопроцессинг - вообще узкое место для серверов, и поэтому HSA-процессоры найдут свое место в этой нише. Большая часть такого процессинга производится сегодня на CPU, а это неэнергоэффективно и времязатратно. CPU обрабатывает такие данные пакетно - а это значит, что в реальном времени вести такой процессинг невозможно.
Другая обширная область применения процессоров с новой архитектурой - анализ данных. По сути, наиболее объёмная часть такой работы заключается в сравнении выявленных закономерностей и шаблонов, и это создает необходимость в параллельных вычислениях. Многие компании сегодня используют Hadoop, а следовательно, и MapReduce для обработки больших данных. Если добавить в этот процесс HSA-чипы, то эффективность работы с Big Data возрастёт в несколько раз.
Таким образом, AMD сегодня играет сразу на двух футбольных полях - или, если угодно, стремится усидеть на двух стульях, гетерогенном и гомогенном. Если HSA архитектура - это универсальные чипы для параллельных вычислений, то в рамках вычислений гомогенных компания тоже ведёт активные разработки. Компания SeaMicro, не так давно приобретенная AMD, делает микросерверы, которые подходят для выполнения отдельных задач и поддержания отдельных приложений в рамках крупной инфраструктуры - например, ЦОДа.
В новых серверах, произведенных SeaMicro, уже нет ARM-чипов: они работают на базе обычных серверных процессоров. Но логика их работы ближе к мобильным чипам, нежели к традиционным. Таким образом, SeaMicro не оставляет попыток построить сервер на базе максимально энергоэффективных процессоров. И одна из основных технологий, подстёгивающих этот процесс, заключается в особом способе связи чипов между собой. Это то, что называется server fabric и, по сути, объединяет все процессоры сервера в электрическую цепь посредством специальных коннекторов. Технология, разработанная CTO SeaMicro Гари Лойтербахом (Gary Leuterbach), позволяет объединить в одной машине десятки чипов, притом что данные перемещаются между процессорами на большой скорости и с высокой эффективностью. Но в SeaMicro не ограничились процессорами и объединили с помощью данной технологии ещё и диски, причем как HDD, так и SSD.
Получается, что серверный рынок подогревается сразу с двух сторон одной и той же компанией. С одной стороны, это параллельные вычисления и вся HSA-эпопея, а с другой - монофункциональные микросерверы, которые тоже востребованы определёнными игроками рынка. Оба направления активно поддерживаются и другими крупными компаниями. Микросерверами небезуспешно занимается ARM, а список организаций, вступивших в HSA Foundation, я приводил выше, и это действительно внушительные имена. Причём в рамках сообщества гетерогенных вычислений ведётся мощная софтверная проработка. На той же конференции AMD выступал вице-президент подразделения Oracle, отвечающего за Java. Нандини Рамани (Nandini Ramani) говорила о разработке Java-приложений для GPU-вычислений. Для рынка серверов и дата-центров всё это изменения скорее эволюционные, нежели революционные. Но в последнее время темпы эволюции очень уж ускорились.