AMD FireStream
AMD FireStream — это AMD торговая марка Radeon, для их линейки продуктов на базе предназначенной для потоковой обработки и/или GPGPU в суперкомпьютерах . Первоначально разработанная ATI Technologies для Radeon X1900 XTX в 2006 году, эта линейка продуктов ранее называлась как ATI FireSTREAM и AMD Stream Processor . [1] AMD FireStream также можно использовать в качестве с плавающей запятой сопроцессора для разгрузки вычислений ЦП, что является частью инициативы Torrenza . Линия FireStream была снята с производства в 2012 году, когда рабочие нагрузки GPGPU были полностью перенесены в линейку AMD FirePro .
Обзор
[ редактировать ]Линейка FireStream представляет собой серию дополнительных карт расширения, общего назначения выпущенных с 2006 по 2010 год и основанных на стандартных графических процессорах Radeon, но предназначенных для использования в качестве сопроцессора , а не для рендеринга и вывода 3D-графики. Как и в линейке FireGL/FirePro , им было предоставлено больше памяти и пропускной способности памяти, но карты FireStream не обязательно имеют порты видеовыхода. Все поддерживают 32-битную одинарной точности плавающую запятую , и все версии, кроме первой, поддерживают 64-битную двойную точность . Линейка была объединена с новыми API для обеспечения более высокой производительности, чем OpenGL и Direct3D могли обеспечить существующие API шейдеров , начиная с Close to Metal , за которым следовали OpenCL и SDK Stream Computing, и в конечном итоге интегрировались в APP SDK .
Для высокопараллельных математических задач с плавающей запятой карты могут ускорить большие вычисления более чем в 10 раз; Folding@Home, самый ранний и один из наиболее заметных пользователей GPGPU, добился увеличения производительности процессора в 20–40 раз. [2] Каждый пиксельный и вершинный шейдер или унифицированный шейдер в более поздних моделях может выполнять произвольные вычисления с плавающей запятой.
История
[ редактировать ]После выпуска графических ядер Radeon R520 и GeForce G70 с программируемыми шейдерами большая пропускная способность операций с плавающей запятой привлекла внимание академических и коммерческих групп, экспериментировавших с их использованием для неграфических задач. Интерес побудил ATI (и Nvidia ) создать продукты GPGPU, способные вычислять математические формулы общего назначения в массовом параллельном режиме — для обработки тяжелых вычислений, традиционно выполняемых на центральных процессорах с плавающей запятой и специализированных математических сопроцессорах . Предполагалось, что графические процессоры будут иметь немедленный прирост производительности в 10 или более раз по сравнению с современными вычислениями с использованием только нескольких процессоров.
Поскольку разработка высокопроизводительного процессора X1900 XFX почти завершилась, ATI взяла за основу свой первый потоковый процессор, объявив его как будущий ATI FireSTREAM вместе с новым API Close to Metal на выставке SIGGRAPH 2006. [3] Само ядро практически не изменилось, за исключением удвоения встроенной памяти и пропускной способности, аналогично FireGL V7350 ; Поддержка новых драйверов и программного обеспечения сыграла большую роль. Компания Folding@home начала использовать X1900 для общих вычислений, используя предварительную версию драйвера ATI Catalyst 6.5, и сообщила об улучшении производительности графического процессора в 20–40 раз по сравнению с центральным процессором. [2] Первый продукт был выпущен в конце 2006 года и был переименован в AMD Stream Processor . после слияния с AMD [4]
В 2007 году бренд стал AMD FireStream со вторым поколением потоковых процессоров на базе чипа RV650 с новыми унифицированными шейдерами и поддержкой двойной точности. [5] Асинхронный DMA также улучшил производительность, позволяя использовать больший пул памяти без помощи ЦП. Была выпущена одна модель, 9170, по начальной цене 1999 долларов. Планы включали разработку к 2008 году потокового процессора на модуле MXM для портативных компьютеров. [6] но так и не был выпущен.
Третье поколение быстро последовало в 2008 году с существенным улучшением производительности по сравнению с ядром RV770; 9250 имел почти вдвое большую производительность, чем 9170, и стал первым однокристальным процессором с терафлопсом , несмотря на снижение цены до менее 1000 долларов. [7] Вскоре после этого был выпущен более быстрый брат, 9270, по цене 1999 долларов.
В 2010 году вышло последнее поколение FireStreams, карты 9350 и 9370, основанные на чипе Cypress, используемом в HD 5800. В этом поколении производительность снова удвоилась по сравнению с предыдущим: до 2 терафлопс у 9350 и 2,6 терафлопс у 9370. , [8] и был первым, созданным с нуля для OpenCL . Это поколение также было единственным, которое имело полностью пассивное охлаждение, а активное охлаждение было недоступно.
Поколения Northern и Southern Islands были пропущены, и в 2012 году AMD объявила, что новые серии FirePro W (рабочие станции) и S (серверы), основанные на новой архитектуре Graphics Core Next, заменят карты FireStream. [9]
Модели
[ редактировать ]- FireStream 9170 включает Direct3D 10.1, OpenGL 3.3 и APP Stream.
- FireStream 92x0 включает Direct3D 10.1, OpenGL 3.3 и OpenCL 1.0.
- FireStream 93x0 включает Direct3D 11, OpenGL 4.3 и OpenCL 1.2 с последними обновлениями драйверов.
Модель ( Кодовое имя ) | Запуск | Архитектура ( Потрясающе ) | Шинный интерфейс | Потоковые процессоры | Тактовая частота | Память | Вычислительная мощность [а] ( ГФЛОПС ) | TDP ( Ватт ) | |||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Ядро (МГц) | Память (МГц) | Размер ( МБ ) | Тип | Ширина шины ( бит ) | Пропускная способность ( ГБ /с) | Одинокий | Двойной | ||||||
Потоковый процессор (580 рэндов) | 2006 | 500 рэндов 80 нм | 240 | 600 | 1024 | ГДДР3 | 256 | 83.2 | 375 [10] | Н/Д | 165 | ||
FireStream 9170 (РВ670) [11] [12] | 8 ноября 2007 г. | ТераСкейл 1 55 нм | PCIe 2.0 x16 | 320 | 800 | 800 | 2048 | ГДДР3 | 256 | 51.2 | 512 | 102.4 | 105 |
FireStream 9250 (РВ770) [13] [14] | 16 июня 2008 г. | ТераСкейл 1 55 нм | PCIe 2.0 x16 | 800 | 625 | 993 | 1024 | ГДДР3 | 256 | 63.6 | 1000 | 200 | 150 |
FireStream 9270 (РВ770) [15] [16] | 13 ноября 2008 г. | ТераСкейл 1 55 нм | PCIe 2.0 x16 | 800 | 750 | 850 | 2048 | ГДДР5 | 256 | 108.8 | 1200 | 240 | 160 |
FireStream 9350 (Кипарис ХТ) [17] | 23 июня 2010 г. | ТераСкейл 2 40 нм | PCIe 2.1 x16 | 1440 | 700 | 1000 | 2048 | ГДДР5 | 256 | 128 | 2016 | 403.2 | 150 |
Огненный поток 9370 (Кипарис ХТ) [18] | 23 июня 2010 г. | ТераСкейл 2 40 нм | PCIe 2.1 x16 | 1600 | 825 | 1150 | 4096 | ГДДР5 | 256 | 147.2 | 2640 | 528 | 225 |
- ^ Производительность точности рассчитывается на основе базовой (или повышающей) тактовой частоты ядра на основе операции FMA .
Программное обеспечение
[ редактировать ]AMD FireStream был выпущен с поддержкой широкого спектра программных платформ. Одной из поддерживающих фирм была PeakStream (приобретенная Google в июне 2007 года), которая первой предоставила открытую бета- версию программного обеспечения для поддержки процессоров CTM и AMD FireStream, а также процессоров x86 и Cell (Cell Broadband Engine). Утверждалось, что после запуска программного обеспечения PeakStream FireStream в типичных приложениях работает в 20 раз быстрее, чем обычные процессоры. [ нужна ссылка ] . RapidMind также предоставила программное обеспечение для обработки потоков, которое работало с ATI и NVIDIA, а также с процессорами Cell. [19]
Комплект разработки программного обеспечения
[ редактировать ]Отказавшись от своего недолговечного API Close to Metal , AMD сосредоточилась на OpenCL . Stream Computing AMD впервые выпустила свой SDK (v1.0) в декабре 2007 года в соответствии с лицензионным соглашением AMD EULA для работы в Windows XP . [19] SDK включает в себя «Brook+», аппаратно оптимизированную версию языка Brook от AMD , разработанную Стэнфордским университетом, которая сама по себе является вариантом языка ANSI C ( язык C ), с открытым исходным кодом и оптимизированным для потоковых вычислений. ( Базовая математическая библиотека AMD ACML) и Библиотека производительности AMD (APL) с оптимизацией для AMD FireStream и видеобиблиотека COBRA (далее переименованная в «Ускоренное перекодирование видео» или AVT) для ускорения перекодирования видео Также будут включены . Другая важная часть SDK, уровень абстракции вычислений (CAL), представляет собой уровень разработки программного обеспечения, предназначенный для низкоуровневого доступа через аппаратный интерфейс CTM к архитектуре графического процессора для программного обеспечения для настройки производительности, написанного на различных языках программирования высокого уровня .
В августе 2011 года AMD выпустила версию 2.5 пакета разработки программного обеспечения ATI APP. [19] который включает поддержку OpenCL 1.1 , языка параллельных вычислений, разработанного Khronos Group . Концепция вычислительных шейдеров , официально называемая DirectCompute, в Microsoft API следующего поколения под названием DirectX 11 уже включена в графические драйверы с поддержкой DirectX 11.
SDK приложений AMD
[ редактировать ]Тесты
[ редактировать ]Согласно системе, продемонстрированной AMD [20] с двумя двухъядерными процессорами AMD Opteron и двумя ядрами графического процессора Radeon R600, работающими под управлением Microsoft Windows XP Professional , производительность в 1 терафлопс (TFLOP) может быть достигнута с помощью универсального вычисления умножения-сложения (MADD). Для сравнения, процессор Intel Core 2 Quad Q9650 3,0 ГГц в то время мог достигать производительности 48 гигафлопс. [21]
В ходе демонстрации антивирусного сканирования Kaspersky SafeStream, оптимизированного для потоковых процессоров AMD, в 2007 году удалось сканировать в 21 раз быстрее с помощью ускорения на основе R670, чем при поиске, полностью работающем на Opteron. [22]
Ограничения
[ редактировать ]- Рекурсивные функции не поддерживаются в Brook+, поскольку все вызовы функций встроены во время компиляции. Используя CAL, функции (рекурсивные или иные) поддерживаются до 32 уровней. [23]
- Поддерживается только билинейная фильтрация текстур; MIP- текстуры и анизотропная фильтрация не поддерживаются.
- Функции не могут иметь переменное количество аргументов. Та же проблема возникает и с рекурсивными функциями.
- Преобразование чисел с плавающей запятой в целые числа на графических процессорах выполняется иначе, чем на процессорах x86; он не полностью совместим с IEEE-754 .
- Выполнение «глобальной синхронизации» на графическом процессоре не очень эффективно, что заставляет графический процессор разделить ядро и выполнить синхронизацию на процессоре. Учитывая переменное количество мультипроцессоров и другие факторы, идеального решения этой проблемы может не быть.
- Пропускная способность шины и задержка между процессором и графическим процессором могут стать узким местом .
См. также
[ редактировать ]- Потоковая обработка
- РПЦм
- Гетерогенная системная архитектура
- NVIDIA Tesla от Nvidia Аналогичное решение
- Аналогичное решение Intel Xeon Phi от Intel
- Открытый язык вычислений ( OpenCL ) — отраслевой стандарт.
- Compute Unified Device Architecture ( CUDA ) — собственное решение только для Nvidia.
- Список графических процессоров AMD
Ссылки
[ редактировать ]- ^ Пресс-релиз AMD
- ^ Перейти обратно: а б Гасиор, Джефф (16 октября 2006 г.). «Подробнее о Folding@home на графическом процессоре» . Технический отчет . Проверено 26 мая 2016 г.
- ^ Презентация ATI SIGGRAPH 2006 (PDF) (отчет). АТИ Технологии. Архивировано из оригинала (PDF) 21 декабря 2016 г. Проверено 26 мая 2016 г.
- ^ Валич, Тео (16 ноября 2006 г.). «Обнародована плата ATI FireSTREAM AMD Stream» . Спрашивающий . Архивировано из оригинала 21 августа 2009 года . Проверено 26 мая 2016 г.
{{cite news}}
: CS1 maint: неподходящий URL ( ссылка ) - ^ «AMD представляет первый потоковый процессор с технологией плавающей запятой двойной точности» . АМД. 8 ноября 2007 г. Архивировано из оригинала 19 июня 2017 г. Проверено 26 мая 2016 г.
- ^ Презентация AMD WW HPC 2007 (PDF) (Отчет). п. 37.
- ^ «Потоковый процессор AMD первым преодолел барьер производительности в 1 терафлоп» . АМД. 16 июня 2008 г. Архивировано из оригинала 19 июня 2017 г. Проверено 26 мая 2016 г.
- ^ «Новейшие вычислительные ускорители графических процессоров AMD FireStream™ обеспечивают почти двукратное увеличение пиковой производительности одинарной и двойной точности и производительности на ватт по сравнению с предыдущим поколением» . АМД. 23 июня 2010 г. Архивировано из оригинала 19 июня 2017 г. Проверено 26 мая 2016 г.
- ^ Смит, Райан (14 августа 2012 г.). «Обзор AMD Firepro W9000 W8000, часть 1» . Anandtech.com . Проверено 28 июня 2016 г.
- ^ «За гранью 3D — ATI R580: Radeon X1900 XTX и Crossfire» . За пределами 3D .
- ^ «AMD представляет первый потоковый процессор с технологией плавающей запятой двойной точности» . АМД. 8 ноября 2007 года . Проверено 26 мая 2016 г.
- ^ «Технические характеристики AMD FireStream 9170» . TechPowerUp .
- ^ AMD FireStream 9250 — страница продукта. Архивировано 13 мая 2010 г. на Wayback Machine.
- ^ «Технические характеристики AMD FireStream 9250» . TechPowerUp .
- ^ AMD FireStream 9270 — страница продукта. Архивировано 16 февраля 2010 г. на Wayback Machine.
- ^ «Технические характеристики AMD FireStream 9270» . TechPowerUp .
- ^ «Технические характеристики AMD FireStream 9350» . TechPowerUp .
- ^ «Характеристики AMD FireStream 9370» . TechPowerUp .
- ^ Перейти обратно: а б с Страница загрузки AMD APP SDK. Архивировано 3 сентября 2012 г. на Wayback Machine и Stream Computing SDK EULA. Архивировано 6 марта 2009 г. на Wayback Machine , получено 29 декабря 2007 г.
- ↑ Отчет HardOCP . Архивировано 4 марта 2016 г. на Wayback Machine , получено 17 июля 2007 г.
- ^ Показатели соответствия экспорта микропроцессоров Intel
- ^ Валич, Тео (12 сентября 2007 г.). «GPGPU радикально ускоряет работу антивирусного ПО» . Спрашивающий . Архивировано из оригинала 23 сентября 2009 года . Проверено 26 мая 2016 г.
{{cite news}}
: CS1 maint: неподходящий URL ( ссылка ) - ^ Справочное руководство AMD по промежуточным языкам, август 2008 г.