Дизайн AMD Heterogeneous Queuing для APU: в преддверии революции
23-10-2013
Вторая - та, которую избрал, -
Нетоптаной травою привлекала:
Примять ее - цель выше всех похвал,
Хоть тех, кто здесь когда-то путь пытал,
Она сама изрядно потоптала.
Роберт Фрост «Неизбранная дорога»
Мастера шахматной игры от новичка отличает умение видеть в, казалось бы, равной и ничем не примечательной позиции начало выигрышной комбинации. И ради ее осуществления он может пожертвовать даже самой сильной фигурой, сделав ставку на конечный выигрыш в партии. В процессе он может делать, на первый взгляд, глупые и необдуманные ходы, но все они подчинены единому плану и служат его конечной цели.
Эволюцию процессоров компании AMD за последние несколько лет и можно назвать отличной шахматной комбинацией. Большинству из нас лишь теперь доступен для понимания четкий замысел AMD и видна конечная цель, которая была сформулирована уже в «далеком» 2006 году, когда в недрах компании родился замысел объединить на одном кристалле процессорные и графические ядра. Но суть концепции «APU» не столько в размещении их на одном кристалле, сколько в реформировании самого принципа их взаимодействия между собой, который оставался неизменным в течение многих лет.
«Нелепо… и ради чего!», - подумали многие в 2011 году, когда компания AMD вместо нового и улучшенного поколения процессоров AMD Phenom / Athlon, успешно конкурирующих с моделями компании Intel, представила линейку APU AMD A (Llano).
«Оригинально, любопытно, но не впечатляюще!», - кружилось в мыслях после появления первых результатов их реального тестирования. Тем не менее, компания AMD упорно продолжала выполнять намеченную стратегию, которую она назвала «Heterogeneous Systems Architecture» (HSA). Уже в начале 2012 года она показала свою конечную цель, но, как и подобает настоящему стратегу, не открыла планов ее достижения.
Даже не смотря на довольно сложное финансовое положение (которое, к слову, по результатам третьего квартала 2013 года существенно улучшилось и впервые за несколько кварталов были задекларированы не убытки, а прибыль) и полгода деятельности без генерального директора (в начале 2011 года пост CEO покинул Дирк Мейер и лишь в августе 2011 года был назначен Рори Рид), компания AMD упорно продвигалась по намеченному курсу, цель которого уже близка.
В чем же конечная цель? В разработке такого дизайна APU, который позволяет создавать производительные и энергоэффективные системы различных форм-факторов и различного предназначения: персональные компьютеры, ноутбуки, планшеты, серверные системы. При этом задействовать всю вычислительную мощь процессорных и графических ядер. А также позволить программам выбирать наиболее эффективный тип ядер в конкретной задаче, ведь не секрет, что центральный процессор лучше справляется с последовательным потоком данных, а графический – с параллельными нагрузками. И, конечно же, все это было бы напрасно без поддержки со стороны разработчиков программного обеспечения.
Переводя все это в плоскость конкретных задач, можно сказать, что улучшенный дизайн APU нацелен на более качественное воспроизведение видео (формат Ultra HD 4K), ускоренное редактирование фото- и видеоматериалов, создание реалистических игровых эффектов, применения новых методов управления компьютером (с помощью жестов, голосовых команд и других) и т.д.
Для достижения поставленных целей на первом этапе нужно было объединить процессорные и графические ядра на одном кристалле (APU AMD Llano). Затем улучшить эту структуру, оптимизировав саму микроархитектуру и добавив несколько важных блоков (APU AMD Trinity). И лишь теперь в ход вступают главные технологии, которые и помогут раскрыть заложенный в APU потенциал. Речь идет об уже знакомой нам концепции AMD heterogeneous Uniform Memory Access (AMD hUMA) и новом дизайне AMD Heterogeneous Queuing (AMD hQ).
AMD hUMA позволяет процессорным и графическим ядрам получать доступ ко всей оперативной памяти, поскольку до этого они использовали раздельное адресное пространство. Такой подход существенно упрощает их взаимодействие: чтобы передать любые данные из оперативной памяти, CPU достаточно указать на них. В свою очередь GPU их сразу же увидит, обработает и передаст соответствующий указатель на результаты. До этого вместо указателя на соответствующие ячейки оперативной памяти им необходимо было копировать весь массив данных.
Концепция AMD hQ представляет собой не менее революционное новшество в сфере взаимодействия центрального и графического процессора. Традиционная модель, которая используется во всех существующих моделях, предполагает лишь односторонний обмен с участием операционной системы и драйвера. Если CPU нужно задействовать вычислительные возможности GPU, то он обращается к специальной службе операционной системы, далее подключается драйвер (переводит запрос в формат, который понятный для GPU определенного вендора) и только потом необходимые данные поступают в очередь на обработку GPU. При этом сам графический процессор не имеет возможности создавать задания для обработки на CPU.
Что же предлагает AMD hQ? Во-первых, стандартизировать формат пакетов, чтобы убрать необходимость использования драйвера и соответствующей службы операционной системы. Во-вторых, позволить программам напрямую ставить задачи для графического процессора без задействования для этих целей CPU.
В результате мы получим гибкую структуру, которая способна эффективно обмениваться информацией (AMD hUMA) и задачами (AMD hQ) без задействования операционной системы или драйвера. Она может быстро переадресовать задачи и напрямую взаимодействует с программами.
Концепция AMD hQ также предоставляет нескольким программам прямой доступ к вычислительным возможностям графического процессора (в порядке очереди, конечно) без задействования драйвера и с использованием стандартизованного формата пакетов заданий.
Применения архитектур AMD hUMA и AMD hQ существенно повысить эффективность работы APU в любых задачах. А если учитывать возможности GPU видеокарты? Смогут ли процессоры компании Intel составить конкуренцию такой объединенной структуре, где распределение задач и памяти происходит на аппаратном уровне без применения операционной системы? А ведь именно создание такой структуры и является конечной целью архитектуры AMD HSA.
В конечном итоге дизайн AMD hQ позволяет:
- повысить производительность выполнения любых поставленных задач;
- эффективнее использовать электроэнергию или заряд батареи в мобильных устройствах;
- применять ее во всех HSA-платформах, включая традиционные ПК, планшеты и сервера;
- упростить программные модели для графического процессора.
А благодаря усилиям компании AMD, к поддержке и интеграции архитектуры HSA уже присоединились ARM-альянс, компании Samsung, Qualcomm, Mediatek, Texas Instruments и многие другие. Все это позволяет надеяться на светлое будущее для компании AMD и ее HSA-архитектуры.
В завершение лишь добавим, что с 11 по 13 ноября 2013 года в Сан-Хосе (Калифорния, США) пройдет очередной форум AMD Developer Summit. Вполне возможно, что там компания AMD продемонстрирует реальные результаты работы архитектур AMD hUMA и AMD hQ, а также поделится новыми подробностями следующего поколения APU – AMD Kaveri.
Автор: Сергей Будиловский
Опубликовано : 23-10-2013
Подписаться на наши каналы | |||||