Диссертация (1090497), страница 27
Текст из файла (страница 27)
Хотя ГП непосредственно предназначен для выполнения графическихопераций, в последнее время возрастает интерес к использованию ГП в целяхускорения неграфических вычислений.В качестве четвертого образца исследования рассмотрим графическуюплату фирмы Nvidia GeForce GTX560 [142] на основе процессора GF114 сархитектурой Fermi, которая работает совместно с УП Intel Core i5 2400 (4 ядра)3,1 ГГц, ОЗУ 4Гб, 64 разряда. При такой структуре ГП освобождает УП отоднотипных вычислительных задач. В этом случае ГП используется каксопроцессор, что даёт существенное ускорение выполнения “длинных” операций,обладающих выраженным параллелизмом.192Основные преимущества ГП, по сравнению с другими вычислителями:-большаяпроизводительность,благодарябольшомуколичествувычислительных ядер;- бесплатное ПО, простота и гибкость программирования параллельныхвычислений на языках высокого уровня: Си, Фортран.
Имеются сотни готовыхбиблиотечных программ (FFT, BLAS, Signal processing и т.д.). Благодаря данноймодели программирования требовательные к ресурсам блоки программ ЦОСвыполняются на ГП, остальная часть приложений выполняется на УП;- разработка программ для ГП является средней по трудоёмкости. Благодаряготовой среды ПО, программирование становится доступным, язык ввода: CUDACи;- более быстрое развитие и появление новых видов и типов ГП, посравнению с ЭБ других типов.
Появление специально предназначенной дляматематических вычислений архитектуры- Tesla;- возможность наращивать (параллелить) ГП и тем самым создаватьмасштабируемые вычислительные системы (где увеличение производительностипропорционально увеличению дополнительных ресурсов);- высокая скорость I/O через шину PCI Express (десятки ГБ/с);- диапазон исполнений: коммерческое, индустриальное, которое доступнодля приобретения в России.Вместе с тем ГП имеет ряд недостатков:- совместное использование вместе с УП, который выполняет подготовкуданных к обработке;- обработка данных на ГП носит блочный характер. Нельзя использовать ГПв режиме непрерывного потока или по прерыванию, т.е. программа являетсяпроцедурой;- обработка большого массива данных однотипными операциями безветвления;- специфическая структура ГП не связанная с ЦОС;- один порт I/O, который является шиной (PCI Express);193- потребность в разработке и изготовление интерфейсной ячейки приёмаданных для УП;- большая мощность потребления и, как следствие, мощность рассеивания;- ограниченная поддержка вычислений с двойной точностью в семействеFermi, т.е.
этот режим поддерживается не всеми типами ГП этого семейства. Принеобходимостивыполнениявычисленийсдвойной(илипроизвольной)точностью, приходится использовать специальные алгоритмы (представлениечисла в виде нескольких переменных) либо алгоритмы коррекции вычислений,что снижает производительность системы. Полностью режим с двойнойточностью поддерживается только в семействе Tesla, которая имеет высокуюстоимость.Особенность “технологии” CUDA, обусловленной аппаратной архитектуройГП фирмы Nvidia является то, что все операции проводятся одновременно надгруппой, состоящей из 32 ”потоков” данных или над несколькими такимигруппами.
Это накладывает определенные ограничения на класс задач, решаемыхс помощью ГП, затрудняющие их использование и сужающие областьвозможного применения. Наибольшая эффективность достигается в том случае,если алгоритм решения требует большого количества одинаковых операций надбольшим объёмом данных (прежде всего это основные операции ЦОС:умножение с накоплением, перемножение матриц, решение линейных уравненийи т.д.).Показатели производительности, основные характеристики и результатытестирования указаны в таблице П4.1.
Тестирование производительности ГП привычислении комплексного БПФ производилась в среде программирования VisualStudio 2010 с библиотекой CUFFT. В таблице П4.4 представлено времявыполнения одномерного комплексного БПФ для различных количеств точек наГП типа G114 фирмы Nvidia, платы GeForce GTX 560, ОЗУ 4 MГб; УП типа Inteli5 2400 3,1 ГГц, 4 ядра. Условие: ОС Window 7, среда программирования VisualStudio 2010, CUFFT- базовая библиотека FFT_W, одинарная точность (32194разряда). На рисунке П4.3 показана зависимость ширины полосы сигнала отколичества точек, которая может быть обработана в реальном времени.Рисунок П4.3 − Пропускная способность ГП G114 на основе GeForce GTX 560Из рисунка П4.3 можно сделать следующие выводы:1.
ГП может обрабатывать сигнал с полосой около 1 ГГц в реальноммасштабе времени (при условии, что все элементы информационного трактапередачи имеют неограниченное быстродействие);2. полоса обрабатываемого сигнала фактически ограничена частотойтактирования ядра и объёмом глобальной памяти.На основе данных исследований были получены графики, представленныена рисунках П4.4…П4.6, при операции комплексного БПФ одинарной точности.Из рисунка П4.4 видно, что при небольшом количестве точек менее 2048, ГПпроигрывает по производительности всем существующим вычислителям, в томчисле СП и УП. Но при увеличении объёма вычислений производительность ГПэкспоненциально увеличивается.
Это объясняется тем, что при увеличенииобъёма задачи подключаются все больше и больше арифметических блоков,увеличивая общую производительность. На рисунке П4.5 и П4.6 представленысравнительные характеристики по выделяемой мощности ЭБ различного типа.195Рисунок П4.4 − Время выполнения комплексного БПФ: ПЛИС: XC6VSX315T; СП:ADSP-TS201S; УП: Intel Core i5 2400; ГП: GF114.Рисунок П4.5 − Сравнительные характеристики различной ЭБ по выделяемоймощностиРисунок П4.6 − Сравнительные характеристики различной ЭБ по удельнойпроизводительностиИз рисунка П4.5 и П4.6 следует вывод, что структура ПЛИС имеет самыйвысокийпоказательпоудельнойпроизводительности(отношениепроизводительности к выделяемой мощности), благодаря специализированной196структуреопределяемойпользователем.Нанейможнореализоватьвычислительную систему с минимальным тепловыделением.
По выделяемоймощности ГП самый тепловыделяемый (так как при обработке задействуютсяболее 300 блоков АЛУ).П.4.4 Выводы1. Сравнение производительности ЭБ различного типа показало, что: вопервых, программируемая архитектура ПЛИС позволяет решать задачи ЦОС(умножение с накоплением и фильтрации) эффективнее по быстродействию, чемспециализированный СП в связи с тем, что в ПЛИС обеспечен глубокий конвейеропераций (при одинаковых тактовых частотах). Во-вторых, УП (4 ядра) имеетпроизводительность в 2…2,5 раза больше, чем СП, т.е. один УП (4 ядра) заменяеттри СП (при решении однотипной задачи- комплексной операции БПФ).
Втретьих, производительность ГП соизмерима с производительностью ПЛИС прибольшом количестве точек (свыше 65536), при малом количестве точек ГПпроигрывает всем рассмотренным типам ЭБ.2. Применение СП оправдано при организации сложных адаптивных,сильно ветвящихся структур, с большим количеством вводных информационныхканалов. По мнению автора работы, применять СП в системах корреляционнойобработки не оправдано.3. ПЛИС позволяет оптимизировать свою архитектуру под решениеконкретных задач, выполнять параллельные вычисления, которые невозможносделать на СП, при этом обеспечить гибкость в организации интерфейсов.Производительность ПЛИС в задачах ЦОС тем выше, чем более высокаяпараллельность обработки используется в алгоритме, что ведёт за собойсоответствующее увеличение объёма логики на кристалле.
Однако достаточномалый кристалл ПЛИС, например, фирмы Xilinx типа Virtex-II на 32-битныхоперациях обеспечивает производительность почти на порядок превосходящуюпоказатели мощного СП. Это обусловлено распараллеливанием самого процесса197обработки и эффективным использованием архитектурных особенностей ПЛИСза счёт высокой скорости межкристального обмена, что особенно важно.4. Применение УП и ГП становится привлекательным для вычислений ЦОСивчастности,длякорреляционнойобработкииз-заихвысокойпроизводительности, низкой стоимости, готового решения, широкой поддержкиПО, которая постоянно расширяется.
Отличительными особенностями ГП, посравнению с другой ЭБ являются: архитектура максимально нацеленная наувеличение скорости расчёта параллельных вычислений; пиковая вычислительнаямощность типичного ГП намного выше, чем у любой другой ЭБ, благодаряспециализированной(графической)конвейернойархитектуре.ГПимеетрекордные показатели по производительности вычислений МАС операций.5. Из всей рассмотренной ЭБ для применения в задачах корреляционнойобработки перспективной являются ПЛИС и ГП. Применение ПЛИС ограниченностоимостьюразработкипрограммированиемиячейкиилимодуляограниченностьюЦОС,специализированнымреализациисложныхисильноветвящихся алгоритмов. Применение ГП невозможно без УП.
ГП рассматриваетсякакспециализированноевычислительноеустройство,котороеявляетсясопроцессором к УП. ГП обладает собственной памятью и возможностьюпараллельной обработки большого количества отдельных “потоков”. Между“потоками” УП и ГП существует принципиальное различие. “Потоки” ГПобладаюткрайненебольшимизатратамисозданияиуправления.Дляэффективной загрузки ГП необходимо использовать много тысяч “потоков”, в товремя как для УП обычно используется 10…20 “потоков”.