GPU в компьютере - что это такое, разновидности. GPU vs CPU: Почему для анализа финансовых данных применяют графические процессоры

Процессоры и графические ускорители очень похожи, они оба сделаны из сотен миллионов транзисторов и могут обрабатывать тысячи операций за секунду. Но чем именно отличаются эти два важных компонента любого домашнего компьютера?

В данной статье мы попытаемся очень просто и доступно рассказать, в чем отличие CPU от GPU. Но сначала нужно рассмотреть два этих процессора по отдельности.

CPU (Central Processing Unit или же Центральное Процессорное Устройство) часто называют "мозгом" компьютера. Внутри центрального процессора расположено около миллиона транзисторов, с помощью которых производятся различные вычисления. В домашних компьютерах обычно устанавливаются процессоры, имеющие от 1 до 4 ядер с тактовой частотой приблизительно от 1 ГГц до 4 ГГц.

Процессор является мощным, потому что может делать все. Компьютер способен выполнить какую-либо задачу, так как процессор способен выполнить эту задачу. Программистам удалось достичь этого благодаря широким наборам инструкций и огромным спискам функций, совместно используемых в современных центральных процессорах.

Что такое GPU?

GPU (Graphics Processing Unit или же Графическое Процессорное Устройство) представляет собой специализированный тип микропроцессора, оптимизированный для очень специфических вычислений и отображения графики. Графический процессор работает на более низкой тактовой частоте в отличие от процессора, но имеет намного больше процессорных ядер.

Также можно сказать, что GPU - это специализированный CPU, сделанный для одной конкретной цели - рендеринг видео. Во время рендеринга графический процессор огромное количество раз выполняет несложные математические вычисления. GPU имеет тысячи ядер, которые будут работать одновременно. Хоть и каждое ядро графического процессора медленнее ядра центрального процессора, это все равно эффективнее для выполнения простых математических вычислений, необходимых для отображения графики. Этот массивный параллелизм является тем, что делает GPU способным к рендерингу сложной 3D графики, требуемой современными играми.

Отличие CPU и GPU

Графический процессор может выполнить лишь часть операций, которые может выполнить центральный процессор, но он делает это с невероятной скоростью. GPU будет использовать сотни ядер, чтобы выполнить срочные вычисления для тысяч пикселей и отобразить при этом сложную 3D графику. Но для достижения высоких скоростей GPU должен выполнять однообразные операции.

Возьмем, например, Nvidia GTX 1080. Данная видеокарта имеет 2560 шейдерных ядер. Благодаря этим ядрам Nvidia GTX 1080 может выполнить 2560 инструкций или операций за один такт. Если вы захотите сделать картинку на 1% ярче, то GPU с этим справится без особого труда. А вот четырехъядерный центральный процессор Intel Core i5 сможет выполнить только 4 инструкции за один такт.

Тем не менее, центральные процессоры более гибкие, чем графические. Центральные процессоры имеют больший набор инструкций, поэтому они могут выполнять более широкий диапазон функций. Также CPU работают на более высоких максимальных тактовых частотах и имеют возможность управлять вводом и выводом компонентов компьютера. Например, центральный процессор может интегрироваться с виртуальной памятью, которая необходима для запуска современной операционной системы. Это как раз то, что графический процессор выполнить не сможет.

Вычисления на GPU

Даже несмотря на то, что графические процессоры предназначены для рендеринга, они способны на большее. Обработка графики - это только вид повторяющихся параллельных вычислений. Другие задачи, такие как майнинг Bitcoin и взломы паролей полагаются на одни и те же виды массивных наборов данных и простых математических вычислений. Именно поэтому некоторые пользователи используют видеокарты для не графических операций. Такое явление называется GPU Computation или же вычисления на GPU.

Выводы

В данной статье мы провели сравнение CPU и GPU. Думаю, всем стало понятно, что GPU и CPU имеют схожие цели, но оптимизированы для разных вычислений. Пишите свое мнение в комментариях, я постараюсь ответить.

Немецкого исследователя об использовании вычислений GPU в эконофизике и статистической физике, в том числе для осуществления анализа информации на фондовом рынке. Мы представляем вашему вниманию основные тезисы этого материала.

Примечание: Статья в журнале датирована 2011 годом, с тех пор появились новые модели GPU-устройств, однако общие подходы к использованию этого инструмента в инфраструктуре для онлайн-трейдинга остались неизменными

Требования к вычислительным мощностям растут в различных сферах. Одна из них - финансовый анализ, который необходим для успешной торговли на фондовом рынке, особенно средствами HFT. Для того, чтобы принять решение о покупке или продаже акций, алгоритм должен проанализировать серьезный объём входных данных - информация о транзакциях и их параметрах, текущих котировках и трендах изменения цены и т.д.

Время, которое пройдет от создания заявки на покупку или продажу до получения ответа о ее успешныом выполнеии от биржевого сервера называется раундтрипом (round-trip, RTT). Участники рынка всеми силами стремятся снизить это время, в частности для этого используются технологии прямого доступа на биржу, а серверы с торговым софтом располагаются на колокации рядом с торговым движком бирж.

Однако технологические возможности по сокращению раундтрипа ограничены, и после их исчерпания перед трейдерами встает вопрос о том, как еще можно ускорить торговые операции. Для этого применяются новые подходы к построению инфраструктуры для онлайн-трейдинга. В частности используются FPGA и GPU. Об ускорении HFT-трейдинга с помощью «программируемого железа» мы писали ранее, сегодня речь пойдет о том, как для этого можно применять графические процессоры.

Что такое GPU

Архитектура современных графических карт строится на основе масштабируемого массива потоковых мультипроцессоров. Один такой мультипроцессор содержит восемь скалярных процессорных ядер, многопоточный модуль инструкций, разделяемую память, расположенную на чипе (on-chip).

Когда программа на C, использующая расширения CUDA, вызывает ядро GPU, копии этого ядра или потоки, нумеруются и распределяются на доступные мультипроцессоры, где уже начинается их выполнение. Для такой нумерации и распределения сеть ядра подразделяется на блоки, каждый из которых делится на различные потоки. Потоки в таких блоках выполняются одновременно на доступных мультипроцессорах. Для управления большим количеством потоков используется модуль SIMT (single-instruction multiple-thread). Этот модуль группирует их в «пачки» по 32 потока. Такие группы исполняются на том же мультипроцессоре.

Анализ финансовых данных на GPU

В финансовом анализе применяется множество мер и показателей, расчет которых требует серьезных вычислительных мощностей. Ниже мы перечислим некоторые из них и сравним быстродействие при их обработке, показанное «обычным» процессоромо Intel Core 2 Quad CPU (Q6700) c тактовой частотой 2,66 ГГц и размером кэша 4096 килобайт, а также популярных графических карт.
Экспонента Херста
Мера, называемая экспонентной Херста, используется в анализе временных рядов. Эта величина уменьшается в том случае, если задержка между двумя одинаковыми парами значений во временном ряду увеличивается. Изначально это понятие применялось в гидрологии для определения размеров плотины на реке Нил в условиях непредсказуемых дождей и засух.

Впоследствии показатель Херста начали применять в экономике, в частности, в техническом анализе для предсказания трендов движения ценовых рядов. Ниже представлено сравнение быстродействия вычисления показателя Херста на CPU и GPU (показатель «ускорения» β = общее время выисления на CPU / общее время вычисления на GPU GeForce 8800 GT):

Модель Изинга и метод Монте-Карло
Еще одним инструментом, перекочевавшим в сферу финансов на этот раз из физики, является модель Изинга . Эта математическая модель статистической физики предназначена для описания намагничивания материала.

Каждой вершине кристаллической решётки (рассматриваются не только трёхмерные, но и одно- и двумерные вариации) сопоставляется число, называемое спином и равное +1 или −1 («поле вверх»/«поле вниз»). Каждому из 2^N возможных вариантов расположения спинов (где N - число атомов решётки) приписывается энергия, получающаяся из попарного взаимодействия спинов соседних атомов. Далее для заданной температуры рассматривается распределение Гиббса - рассматривается его поведение при большом числе атомов N.

В некоторых моделях (например, при размерности > 1) наблюдается фазовый переход второго рода. Температура, при которой исчезают магнитные свойства материала, называется критической (точка Кюри). В ее окрестности ряд термодинамических характеристик расходится.

Изначально модель Изинга использовалась для понимания природы ферромагнетизма, однако позднее получила и более широкое распространение. В частности, она применяется для обобщений в социально-экономических системах. Например, обобщение модели Изинга определяет взаимодействие участников финансового рынка. Каждый из них обладает стратегией поведения, рациональность которой может быть ограничена. Решения о том, продавать или покупать акции и по какой цене, зависят от предыдущих решений человека и их результата, а также от действий других участников рынка.

Модель Изинга используется для моделирования взаимодействия между участниками рынка. Для реализации модели Изинга и имитационного моделирования используется метод Монте-Карло, который позволяет построить математическую модель для проекта с неопределенными значениями параметров.

Ниже представлено сравнение быстродействия моделирования на CPU и GPU (NVIDIA GeForce GTX 280):

Существуют реализации модели Изинга с использованием в ходе анализа различного количества спинов. Мультиспиновые реализации позволяет загружать несколько спинов параллельно.

Ускорение с помощью нескольких GPU

Для ускорения обработки данных также используются кластеры GPU-устройств - в данном случае исследователи собрали кластер из двух карточек Tesla C1060 GPU, коммуникация между которыми осуществлялась через Double Data Rate InfiniBand.

В случае симуляции модели Изинга методом Монте-Карло результаты говорят о том, что производительность повышается практически линейно при добавлении большего количества GPU.

Заключение

Эксперименты показывают, что использование графических процессоров может приводить к существуенному повышению производительности финансового анализа. При этом выигрыш в скорости по сравнению с использованием архитектуры с CPU может достигать нескольких десятков раз. При этом добиться еще большего повышения производительности можно с помощью создания кластеров GPU - в таком случае она растет практически линейно.

На что мы смотрим в первую очередь, выбирая себе смартфон? Если на минутку отвлечься от стоимости, то в первую очередь мы, конечно, выбираем размер экрана. Затем нас интересует камера, объем оперативной, количество ядер и частота работы процессора. И тут все просто: чем больше, тем лучше, а чем меньше, тем, соответственно, хуже. Однако в современных устройствах используется еще и графический процессор, он же GPU. Что это такое, как он работает и почему про него важно знать, мы расскажем ниже.

GPU (Graphics Processing Unit) — это процессор, предназначенный исключительно для операций по обработке графики и вычислений с плавающей точкой. Он в первую очередь существует для того, чтобы облегчить работу основного процессора, когда дело касается ресурсоемких игр или приложений с 3D-графикой. Когда вы играете в какую-либо игру, GPU отвечает за создание графики, цветов и текстур, в то время как CPU может заняться искусственным интеллектом или расчетами механики игры.

Архитектура графического процессора не сильно отличается от архитектуры CPU, однако она более оптимизирована для эффективной работы с графикой. Если заставить графический процессор заниматься любыми другими расчетами, он покажет себя с худшей стороны.


Видеокарты, которые подключаются отдельно и работают на высоких мощностях, существуют только в ноутбуках и настольных компьютерах. Если мы говорим об Android-устройствах, то мы говорим об интегрированной графике и том, что мы называем SoC (System-on-a-Chip). К примеру, в процессоре интегрирован графический процессор Adreno 430. Память, которую он использует для своей работы, это системная память, в то время как для видеокарт в настольных ПК выделяется доступная только им память. Правда, существуют и гибридные чипы.

В то время как процессор с несколькими ядрами работает на высоких скоростях, графический процессор имеет много процессорных ядер, работающих на низких скоростях и занимающихся лишь вычислением вершин и пикселей. Обработка вершин в основном крутится вокруг системы координат. GPU обрабатывает геометрические задачи, создавая трехмерное пространство на экране и позволяя объектам перемещаться в нем.

Обработка пикселей является более сложным процессом, требующим большой вычислительной мощности. В этот момент графический процессор накладывает различные слои, применяет эффекты, делает все для создания сложных текстур и реалистичной графики. После того как оба процесса будут обработаны, результат переносится на экран вашего смартфона или планшета. Все это происходит миллионы раз в секунду, пока вы играете в какую-нибудь игру.


Конечно же, этот рассказ о работе GPU является весьма поверхностным, но его достаточно для того, чтобы составить правильное общее представление и суметь поддержать разговор с товарищами или продавцом электроники либо понять — почему ваше устройство так сильно нагрелось во время игры. Позднее мы обязательно обсудим преимущества тех или иных GPU в работе с конкретными играми и задачами.

По материалам AndroidPit

CPU и GPU очень похожи между собой. Они оба сделаны из миллионов транзисторов, способны совершать тысячи операций в секунду, поддаются . Но в чем разница между CPU и GPU ?

Что такое CPU?

CPU (Central Processing Unit) – это центральный процессор, другими словами – “мозг” компьютера. Это набор из нескольких миллионов транзисторов, которые могут выполнять сложные вычисления. Стандартный процессор имеет от одного до четырех ядер с тактовой частотой от 1 до 4 ГГц, хотя недавно .

CPU – достаточно мощное устройство, которое способно выполнять любые задачи на компьютере. Количество ядер и тактовая частота CPU это одни из ключевых

Что такое GPU?

GPU (Graphics Processing Unit) – это специализированный тип микропроцессора, который оптимизирован для отображения графики и решения специфичных задач. Тактовая частота GPU существенно ниже, чем в CPU, но обычно он имеет больше ядер.

В чем разница между CPU и GPU?

Графический процессор может совершать лишь часть из многих операций CPU, но делает он это с невероятной скоростью. GPU использует сотни ядер для расчетов в реальном времени, чтобы отображать тысячи пикселей на мониторе. Это позволяет плавно отображать сложную игровую графику.

Тем не менее, CPU являются более гибкими, чем GPU. Центральные процессоры имеют больший набор команд, так что они могут решать более широкий круг задач. CPU работают на более высоких максимальных частотах и могут управлять вводом и выводом всех компонентов компьютера. CPU способны работать с виртуальной памятью, которая нужна для современных операционных систем, а GPU – нет.

Немного об вычислениях на GPU

Несмотря на то, что графические процессоры являются лучшими для видео рендеринга, технически они способны сделать больше. Обработка графических данных это только один из видов повторяющихся и высоко параллельных задач. Другие задачи, такие как добыча Bitcoin или перебор паролей полагаются на те же типы больших наборов данных и математические операции. Вот почему многие люди используют GPU для “неграфических” целей.

Итог

Центральные и графические процессоры имеют схожие цели, но оптимизированы для разных вычислительных задач. В этом и разница между CPU и GPU. Для правильной и эффективной работы компьютер должен иметь оба типа микропроцессоров.

Многие видели аббревиатуру GPU, но не каждый знает, что это такое. Это компонент , который входит в состав видеокарты . Иногда его называют видеокарта, но это не правильно. Графический процессор занимается обработкой команд, которые формируют трехмерное изображение. Это основной элемент, от мощности которого зависит быстродействие всей видеосистемы.

Есть несколько видов таких чипов – дискретный и встроенный . Конечно, сразу стоит оговорить, что лучше первый. Его ставят на отдельные модули. Он мощный и требует хорошего охлаждения . Второй устанавливается практически на все компьютеры. Он встраивается в CPU, делая потребление энергии в разы ниже. Конечно, с полноценными дискретными чипами ему не сравниться, но на данный момент он показывает довольно хорошие результаты .

Как работает процессор

GPU занимается обработкой 2D и 3D графики. Благодаря GPU ЦП компьютера становится свободнее и может выполнять более важные задачи. Главная особенность графического процессора в том, что он старается максимально увеличить скорость расчета графической информации. Архитектура чипа позволяет с большей эффективностью обрабатывать графическую информацию, нежели центральный CPU ПК.

Графический процессор устанавливает расположение трехмерных моделей в кадре. Занимается фильтрацией входящих в них треугольников, определяет, какие находятся на виду, и отсекает те, которые скрыты другими объектами.

Понравилась статья? Поделиться с друзьями: