Графический процессор это


Графический процессор: что это такое и зачем используется?

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

Что это?

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

Принцип работы

Что делает графический процессор? Он занимается обработкой графики в формате 2D и 3D. Благодаря GPU компьютеру быстрее и легче удается выполнять важные задачи. Особенность графического процессора состоит в том, что он увеличивает скорость расчета графической информации на максимальном уровне. Его архитектура устроена так, что позволяет более эффективно обрабатывать визуальную информацию, чем центральный CPU компьютера.

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

Эффективность работы

Чем обусловлена эффективная работа графического процессора? Температурой. Одна из проблем ПК и ноутбуков - перегрев. Именно это становится главной причиной того, почему устройство и его элементы быстро выходят из строя. Проблемы с GPU начинаются, когда температура процессора превышает 65 °С. В этом случае пользователи замечают, что процессор начинает работать слабее, пропускает такты, чтобы самостоятельно понизить увеличенную температуру.

Температурный режим 65-80 °С - критический. В этом случае начинается перезагрузка системы (аварийная), компьютер выключается самостоятельно. Пользователю важно отслеживать, чтобы температура графического процессора не превышала 50 °С. Нормальной считается t 30-35 °С в простое, 40-45 °С при многочасовой нагрузке. Чем ниже температура, тем выше производительность компьютера. Для материнской платы, видеокарты, корпуса и жестких дисков - свои температурные режимы.

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

Специфика

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

Виды

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

Компьютерная графика

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

С помощью конструктивной графики создаются технические изделия. Существуют и другие виды компьютерной графики:

  • анимационная;
  • мультимедийная;
  • художественная;
  • рекламная;
  • иллюстративная.

С технической точки зрения компьютерная графика - это двухмерные и трехмерные изображения.

CPU и GPU: разница

В чем разница между этими двумя обозначениями? Многие пользователи в курсе, что графический процессор (что это - рассказано выше) и видеокарта выполняют разные задачи. Кроме того, они отличаются по своей внутренней структуре. И CPU, и GPU - это процессоры, которые обладают многими сходными чертами, но сделаны они для разных целей.

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

У GPU другая важная функция - рендеринг визуальных эффектов и 3D-графики. Работает он проще: на входе получает полигоны, проводит необходимые логические и математические операции, на выходе выдает координаты пикселей. Работа GPU - это оперирование большим потоком разных задач. Его особенность в том, что он наделен большим объемом памяти, но медленно работает по сравнению с CPU. Кроме того, в современных GPU более 2000 исполнительных блоков. Отличаются они между собой методами доступа к памяти. Например, графическому не нужна кэшированная память большого размера. У GPU пропускная способность больше. Если объяснять простыми словами, то CPU принимает решения в соответствии с задачами программы, а GPU производит множество одинаковых вычислений.

fb.ru

Что такое графический процессор и как он работает

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

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

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

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

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

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

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

androidinsider.ru

Графический процессор

Графический процессор (англ. graphics processing unit, GPU) — отдельное устройство персонального компьютера или игровой приставки, выполняющее графический рендеринг. Современные графические процессоры очень эффективно обрабатывают и отображают компьютерную графику, благодаря специализированной конвейерной архитектуре они намного эффективнее в обработке графической информации, чем типичный центральный процессор.

Графический процессор в современных видеоадаптерах применяется в качестве ускорителя трёхмерной графики, однако его можно использовать в некоторых случаях и для вычислений (GPGPU). Отличительными особенностями по сравнению с ЦП являются:

  • архитектура, максимально нацеленная на увеличение скорости расчёта текстур и сложных графических объектов;

  • ограниченный набор команд.

Примером может служить чип HD6990 от AMD или GTX590 от nVidia.

GPGPU

GPGPU (англ. General-purpose graphics processing units — «GPU общего назначения») — техника использования графического процессора видеокарты, который обычно имеет дело с вычислениями только для компьютерной графики, чтобы выполнять расчёты в приложениях для общих вычислений, которые обычно проводит центральный процессор. Это стало возможным благодаря добавлению программируемых шейдерных блоков и более высокой арифметической точности растровых конвейеров, что позволяет разработчикам ПО использовать потоковые процессоры для не-графических данных.

CUDA

CUDA (англ. Compute Unified Device Architecture) — программно-аппаратная архитектура, позволяющая производить вычисления с использованием графических процессоров NVIDIA, поддерживающих технологию GPGPU (произвольных вычислений на видеокартах). Впервые появились на рынке с выходом чипа NVIDIA восьмого поколения — G80 и присутствует во всех последующих сериях графических чипов, которые используются в семействах ускорителей GeForce, Quadro и NVidia Tesla.

CUDA SDK позволяет программистам реализовывать на специальном упрощённом диалекте языка программирования Си алгоритмы, выполнимые на графических процессорах NVIDIA, и включать специальные функции в текст программы на Cи. CUDA даёт разработчику возможность по своему усмотрению организовывать доступ к набору инструкций графического ускорителя и управлять его памятью, организовывать на нём сложные параллельные вычисления.

[править] Программная архитектура

Первоначальная версия CUDA SDK была представлена 15 февраля 2007 года. В основе CUDA API лежит язык Си с некоторыми ограничениями. Для успешной трансляции кода на этом языке, в состав CUDA SDK входит собственный Си-компилятор командной строки nvcc компании Nvidia. Компилятор nvcc создан на основе открытого компилятора Open64 и предназначен для трансляции host-кода (главного, управляющего кода) и device-кода (аппаратного кода) (файлов с расширением .cu) в объектные файлы, пригодные в процессе сборки конечной программы или библиотеки в любой среде программирования, например в NetBeans.

Использует grid-модель памяти, кластерное моделирование потоков и SIMD инструкции. Применим в основном для высокопроизводительных графических вычислений и разработок NVIDIA-совместимого графического API. Включена возможность подключения к приложениям, использующим OpenGL и Microsoft Direct3D 9. Создан в версиях для Linux, Mac OS X, Windows.

22 марта 2010 года nVidia выпустила CUDA Toolkit 3.0, который содержал поддержку OpenCL.[1]

[править] Оборудование

Первая серия оборудования, поддерживающая CUDA SDK, G8x, имела 32-битный векторный процессор одинарной точности, использующий CUDA SDK как API (CUDA поддерживает тип double языка Си, однако сейчас его точность понижена до 32-битного с плавающей запятой). Более поздние процессоры GT200 имеют поддержку 64-битной точности (только для SFU), но производительность значительно хуже, чем для 32-битной точности (из-за того что SFU всего 2 на каждый потоковый мультипроцессор, а скалярных процессоров 8). Графический процессор организует аппаратную многопоточность, что позволяет задействовать все ресурсы графического процессора. Таким образом, открывается перспектива переложить функции физического ускорителя на графический ускоритель (пример реализации — nVidia PhysX). Также открываются широкие возможности использования графического оборудования компьютера для выполнения сложных неграфических вычислений: например, в вычислительной биологии и в иных отраслях науки.

[править] Преимущества

По сравнению с традиционным подходом к организации вычислений общего назначения посредством возможностей графических API, у архитектуры CUDA отмечают следующие преимущества в этой области:

  • Интерфейс программирования приложений CUDA (CUDA API) основан на стандартном языке программирования Си с некоторыми ограничениями. По мнению разработчиков, это должно упростить и сгладить процесс изучения архитектуры CUDA[2]

  • Разделяемая между потоками память (shared memory) размером в 16 Кб может быть использована под организованный пользователем кэш с более широкой полосой пропускания, чем при выборке из обычных текстур

  • Более эффективные транзакции между памятью центрального процессора и видеопамятью

  • Полная аппаратная поддержка целочисленных и побитовых операций

[править] Ограничения

  • Все функции, выполнимые на устройстве, не поддерживают рекурсии (в версии CUDA Toolkit 3.1 поддерживает указатели и рекурсию) и имеют некоторые другие ограничения

  • Архитектуру CUDA поддерживает и развивает только производитель NVidia

OpenCL

OpenCL (от англ. Open Computing Language — открытый язык вычислений) — фреймворк для написания компьютерных программ, связанных с параллельными вычислениями на различных графических (англ. GPU) и центральных процессорах (англ. CPU). В фреймворк OpenCL входят язык программирования, который базируется на стандарте C99, и интерфейс программирования приложений (англ. API). OpenCL обеспечивает параллелизм на уровне инструкций и на уровне данных и является реализацией техники GPGPU. OpenCL является полностью открытым стандартом, его использование не облагается лицензионными отчислениями.

Цель OpenCL состоит в том, чтобы дополнить OpenGL и OpenAL, которые являются открытыми отраслевыми стандартами для трёхмерной компьютерной графики и звука, пользуясь возможностями GPU. OpenCL разрабатывается и поддерживается некоммерческим консорциумом Khronos Group, в который входят много крупных компаний, включая Apple, AMD, Intel, nVidia, ARM, Sun Microsystems, Sony Computer Entertainment и другие.

OpenCL первоначально был разработан в компании Apple Inc. Apple внесла предложения по разработке спецификации в комитет Khronos. Вскоре компания AMD решила поддержать разработку OpenCL (и DirectX 11), который должен заменить фреймворк Close to Metal. [1] [2]

16 июня 2008 года была сформирована рабочая группа Khronos Compute для разработки спецификаций OpenCL. В нее вошли Apple, nVidia, AMD, IBM, Intel, ARM, Motorola и другие компании, в том числе специализирующиеся на создании компьютерных игр. Работа велась в течение пяти месяцев, по истечении которых 9 декабря 2008 года организация Khronos Group представила первую версию стандарта.

OpenCL 1.0 была выпущена вместе с Mac OS X 10.6. [3]

20 апреля 2009 года nVidia представила бета-драйвер и комплект для разработки программного обеспечения (SDK) с поддержкой открытого GPGPU-стандарта OpenCL. Данный бета-драйвер предназначен для разработчиков, участвующих в программе «OpenCL Early Access», которые уже с 20 апреля могут принять участие в тестировании бета-версии. Для участников программы «GPU Computing Registered Developers» бета-версия драйвера OpenCL будет доступна позже.[4][5][6]

5 апреля 2009 года компания AMD анонсировала доступность для загрузки beta-версии комплекта разработчика ATI Stream SDK v2.0 в который входит язык мультипроцессорного программирования OpenCL.

26 ноября 2009 года компания nVidia выпустила драйвер с поддержкой OpenCL 1.0 (rev 48).

Для получения наглядного представления, как технология OpenCL использует возможности 24-х ядерной системы для отрисовки видео эффектов, рекомендуется посмотреть следующий демо-ролик [1].

OpenCL 1.1 был представлен организацией Khronos Group 14 июня 2010 года. В новой версии значительно расширены функциональные возможности для параллельного программирования, гибкость и производительность, а так же:

  • Новые типы данных, включая 3-компонентные векторы и дополнительные форматы изображений;

  • Обработка команд из нескольких потоков хоста и обработки буфера между несколькими устройствами;

  • Операции по регионам буфера включая чтение, запись и копирование 1D, 2D или 3D прямоугольных областей;

  • Расширенное использование события для управления и контроля выполнения команд;

  • Улучшенное взаимодействие с OpenGL за счет эффективного обмена изображениями.

OpenCL 1.2 увидел свет 15 ноября 2011 года. В новой версии отмечено множество небольших улучшений, связанных с увеличением гибкости языка и оптимизацией производительности. Из добавленных в OpenCL 1.2 значительных новшеств отмечается:

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

  • Раздельная компиляция и связывание объектов - появилась возможность создания динамических библиотек, позволяющих использовать в сторонних программах, ранее реализованные подпрограммы с OpenCL-вычислениями;

  • Расширенная поддержка изображений, включая возможность работы с одномерными изображениями и массивами одномерных или двухмерных изображений. Кроме того, в расширении для организации совместного доступа (sharing) добавлена возможность создания OpenCL-изображения на основе отдельных текстур OpenGL или массивов текстур;

  • Встроенные OpenCL-ядра теперь позволяют использовать возможности специализированного или непрограммируемого аппаратного обеспечения и связанных с ним прошивок. Например, появилась возможность использования возможностей и более тесной интеграции с фреймворком OpenCL таких устройств, как DSP-процессоры или видео кодировщики/декодировщики;

  • Возможность бесшовного совместного использования поверхностей (Media Surface Sharing) между OpenCL и API DirectX 9/11.

Особенности языка

Ключевыми отличиями используемого языка от C99 являются:

  • Отсутствие поддержки указателей на функции, рекурсии, битовых полей, массивов переменной длины (VLA), стандартных заголовочных файлов[8]

  • Расширения языка для параллелизма: векторные типы, синхронизация, функции для Work-items/Work-Groups[8]

  • Квалификаторы типов памяти: __global, __local, __constant, __private

  • Иной набор встроенных функций

studfiles.net

Что такое графический процессор? - Блог веб-программиста

Что такое графический процессор?

Подробности июня 08, 2018 Просмотров: 1727

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

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

Что делает GPU?

GPU стал популярным термином для компонента, который обеспечивал графику на компьютере в 1990-х годах, когда ее придумал производитель чипов Nvidia. Графические карты GeForce были первыми, кто обеспечил соответствующие технологии, такие как аппаратное ускорение, программируемое затенение и обработка потоков.

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

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

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

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

Для чего используются графические процессоры?

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

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

Редактирование видео является еще одним распространенным случаем использования мощных GPU; в то время как некоторые мощные процессоры могут обрабатывать базовое редактирование видео, если вы работаете с большим количеством файлов с высоким разрешением, в частности, с видео 4K или 360-градусного видео - необходим высокопроизводительный графический процессор, для того, чтобы перекодировать файлы с разумной скоростью.

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

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

Читайте также

juice-health.ru


Смотрите также