A графического процессора (GPU ) - это специализированная электронная схема, предназначенная для быстрого управления и изменения памяти для ускорения создания изображений в буфере кадров, предназначенных для вывода на устройство отображения . Графические процессоры используются во встроенных системах, мобильных телефонах, персональных компьютерах, рабочих станциях и игровых консолях. Современные графические процессоры очень эффективны при манипулировании компьютерной графикой и обработкой изображений. Их высокоэффективная параллельная структура делает их более эффективными, чем центральные процессоры (ЦП) общего назначения для алгоритмов, которые обрабатывают большие блоки данных параллельно. В персональном компьютере графический процессор может быть установлен на видеокарте или встроен в материнскую плату . В некоторых процессорах они встроены в центральный процессор кристалл.
. В 1970-х годах термин «графический процессор» первоначально обозначал графический процессор и описывал программируемый процессор, работающий независимо от центрального процессора и отвечающий за обработку и вывод графики.. Позже, в 1994 году, Sony использовала этот термин (теперь обозначающий графический процессор) в отношении консоли PlayStation Toshiba, разработанной Sony GPU в 1994 году. Этот термин был популяризирован компанией Nvidia в 1999 году, которая продвигала GeForce 256 как «первый в мире графический процессор». Он был представлен как «однокристальный процессор со встроенным преобразователем, освещением, установкой / обрезкой треугольника и механизмами рендеринга». Конкурент ATI Technologies ввел термин «блок визуальной обработки » или VPU с выпуском Radeon 9700 в 2002 году.
Системные платы Arcade используют специализированные графические схемы с 1970-х годов. В раннем оборудовании видеоигр RAM для буферов кадров было дорогостоящим, поэтому видеочипы объединяли данные вместе, когда изображение сканировалось на мониторе.
Специализированный механизм сдвига. Схема использовалась для помощи процессору в анимации графики фреймбуфера для различных аркадных игр 1970-х из Midway и Taito, таких как Gun Fight (1975), Sea Wolf (1976) и Space Invaders (1978). В аркадной системе Namco Galaxian в 1979 году использовалось специализированное графическое оборудование, поддерживающее цвет RGB, разноцветные спрайты и тайловые карты фона. Аппаратное обеспечение Galaxian широко использовалось в золотой век аркадных видеоигр такими игровыми компаниями, как Namco, Centuri, Gremlin, Ирем, Konami, Midway, Nichibutsu, Sega и Taito.
Atari Микропроцессор ANTIC на материнской плате Atari 130XEНа домашнем рынке Atari 2600 в 1977 году использовал устройство переключения видео, называемое адаптером телевизионного интерфейса. 8-битные компьютеры Atari (1979) имели ANTIC, видеопроцессор, который интерпретировал инструкции, описывающие «список отображения» - способ отображения линий развертки на конкретный растровый или символьные режимы и где хранится память (чтобы не было непрерывного буфера кадра). 6502 машинный код подпрограммы могут запускаться на строках развертки путем установки бита в инструкции списка отображения. ANTIC также поддерживает плавную вертикальную и горизонтальную прокрутку независимо от ЦП.
NEC µPD7220 была первой реализацией процессора графического дисплея ПК в виде единой микросхемы Large Scale Integration (LSI) интегральной схемы, позволяющей разрабатывать недорогую высокопроизводительную видеографику. карты, например, из Number Nine Visual Technology. Он стал самым известным графическим процессором вплоть до середины 1980-х годов. Это был первый полностью интегрированный графический процессор VLSI (очень крупномасштабная интеграция) металл-оксид-полупроводник (NMOS ) для ПК, поддерживающий до Разрешение 1024x1024, и заложили основы для развивающегося рынка графики для ПК. Он использовался в ряде видеокарт и был лицензирован для клонов, таких как Intel 82720, первый из графических процессоров Intel. Аркадные игры Williams Electronics Robotron 2084, Joust, Sinistar и Bubbles, выпущенные в 1982 году, содержат специальный блиттер . чипы для работы с 16-цветными растровыми изображениями.
В 1984 году Hitachi выпустила ARTC HD63484, первый крупный графический процессор CMOS для ПК. ARTC был способен отображать разрешение до 4K в монохромном режиме, и он использовался в ряде графических карт и терминалов ПК в конце 1980-х. В 1985 году Commodore Amiga имел специальный графический чип с блоком блиттера, ускоряющим обработку растровых изображений, рисование линий и функции заполнения областей. Также включен сопроцессор со своим собственным простым набором инструкций, способный управлять регистрами графического оборудования синхронно с видеолучевым лучом (например, для переключения палитры на каждую строку развертки, мультиплексирования спрайтов и аппаратного управления окнами) или управления блиттер. В 1986 году Texas Instruments выпустила TMS34010, первый полностью программируемый графический процессор. Он мог запускать универсальный код, но имел набор инструкций, ориентированный на графику. В течение 1990–1992 годов этот чип стал основой видеокарт Texas Instruments Graphics Architecture («TIGA») Windows-ускоритель.
Адаптер IBM 8514 Micro Channel с дополнительной памятью.В 1987 году была выпущена графическая система IBM 8514 как одна из первых видеокарт для IBM PC совместим с для реализации фиксированных функций 2D-примитивов в электронном оборудовании. Sharp X68000, выпущенный в 1987 году, использовал специальный графический чипсет с 65 536 цветовой палитрой и аппаратной поддержкой для спрайтов, прокрутки и нескольких игровых полей, в конечном итоге служившей машиной для разработки для Аркадная доска Capcom CP System. Позднее Fujitsu конкурировала с компьютером FM Towns, выпущенным в 1989 году с поддержкой полной цветовой палитры 16 777 216. В 1988 году первые специализированные графические платы полигонального 3D были представлены в игровых автоматах с Namco System 21 и Taito Air System.
VGA раздел на материнской плате в стандарте дисплея IBM PS / 55IBM Video Graphics Array (VGA), который был представлен в 1987 году с максимальным разрешением 640 × 480 пикселей. В ноябре 1988 года NEC Home Electronics объявила о создании Ассоциации стандартов видеоэлектроники (VESA) для разработки и продвижения Super VGA (SVGA) стандарт компьютерных дисплеев как преемник проприетарного стандарта дисплеев IBM VGA. Поддержка Super VGA разрешение графического дисплея до 800 × 600 пикселей, увеличение на 36%.
В 1991 году S3 Graphics представила S3 86C911, дизайнеры назвали его в честь Porsche 911 как показатель обещанного повышения производительности. 86C911 породил множество подражателей: к 1995 году все основные производители графических чипов для ПК добавили в свои чипы поддержку ускорения 2D. К этому времени ускорители Windows с фиксированными функциями превзошли по производительности дорогие графические сопроцессоры общего назначения в Windows, и эти сопроцессоры исчезли с рынка ПК.
На протяжении 1990-х годов ускорение 2D GUI продолжало развиваться. По мере улучшения производственных возможностей повышался и уровень интеграции графических чипов. Дополнительные интерфейсы прикладного программирования (API) появились для множества задач, таких как Microsoft WinG графическая библиотека для Windows 3.x, и их более поздний интерфейс DirectDraw для аппаратного ускорения 2D-игр в Windows 95 и более поздних версиях.
В начале и середине 1990-х годов в реальном времени 3D-графика становилась все более распространенной в аркадных, компьютерных и консольных играх, что привело к увеличению общественного спроса на оборудование. -ускоренная 3D графика. Ранние образцы массового оборудования для 3D-графики можно найти в системных платах для игровых автоматов, таких как Sega Model 1, Namco System 22 и Sega Model 2, и игровые приставки пятого поколения, такие как Saturn, PlayStation и Nintendo 64. Аркадные системы, такие как Sega Model 2 и Namco Magic Edge Hornet Simulator в 1993 году, были способны к аппаратному TL (преобразование, отсечение и освещение ) за годы до появления в потребительских видеокартах. Некоторые системы использовали DSP для ускорения преобразований. Fujitsu, которая работала над аркадной системой Sega Model 2, начала работать над интеграцией TL в единое решение LSI для использования на домашних компьютерах в 1995 году; Fujitsu Pinolite, первый процессор трехмерной геометрии для персональных компьютеров, выпущенный в 1997 году. Первым аппаратным графическим процессором TL на home игровых консолях была Nintendo 64 » s Reality Coprocessor, выпущенный в 1996 году. В 1997 году Mitsubishi выпустила 3Dpro / 2MP, полнофункциональный графический процессор, способный преобразовывать и освещать, для рабочие станции и настольные компьютеры Windows NT ; ATi использовали его для своей FireGL 4000 видеокарты, выпущенной в 1997 году.
Термин «графический процессор» был придуман Sony применительно к 32-битному Sony GPU (разработан Toshiba ) в PlayStation игровая консоль, выпущенная в 1994 году.
В мире ПК заметными первыми неудачными попытками создания недорогих чипов 3D-графики были S3 ViRGE, ATI Ярость и Матрокс Мистика. Эти чипы были по сути 2D-ускорителями предыдущего поколения с привязанными к ним 3D-функциями. Многие из них даже были совместимы по выводам с чипами предыдущего поколения для простоты внедрения и минимальной стоимости. Первоначально высокопроизводительная 3D-графика была возможна только с дискретными платами, предназначенными для ускорения 3D-функций (и полностью лишенными ускорения 2D-графического интерфейса), такими как PowerVR и 3dfx Voodoo. Однако по мере развития производственных технологий видео, ускорение 2D-графического интерфейса и 3D-функции были интегрированы в один чип. Чипсеты Verite от Rendition были одними из первых, кто сделал это достаточно хорошо, чтобы заслужить внимания. В 1997 году Rendition пошла еще дальше, сотрудничая с Hercules и Fujitsu над проектом Thriller Conspiracy, который объединил геометрический процессор Fujitsu FXG-1 Pinolite с ядром Vérité V2200 для создания видеокарты с полной Двигатель TL был задолго до появления Nvidia GeForce 256. Эта карта, разработанная для снижения нагрузки на центральный процессор системы, так и не поступила на рынок.
OpenGL появился в начале 90-х как профессиональный графический API, но изначально страдал от проблем с производительностью, которые позволяли Glide API, чтобы вмешаться и стать доминирующей силой на ПК в конце 90-х. Однако эти проблемы были быстро преодолены, и Glide API отошел на второй план. Программные реализации OpenGL были обычным явлением в то время, хотя влияние OpenGL в конечном итоге привело к широкой поддержке оборудования. Со временем возник паритет между функциями, предлагаемыми на оборудовании, и функциями, предлагаемыми в OpenGL. DirectX стал популярным среди разработчиков игр для Windows в конце 90-х. В отличие от OpenGL, Microsoft настаивала на обеспечении строгой индивидуальной поддержки оборудования. Первоначально такой подход сделал DirectX менее популярным в качестве автономного графического API, поскольку многие графические процессоры предоставляли свои собственные специфические функции, которые уже могли использовать существующие приложения OpenGL, оставляя DirectX часто позади на одно поколение. (См.: Сравнение OpenGL и Direct3D.)
Со временем Microsoft начала более тесно сотрудничать с разработчиками оборудования и стала стремиться к тому, чтобы выпуски DirectX совпадали с выпусками поддерживаемых графическое оборудование. Direct3D 5.0 был первой версией развивающегося API, получившей широкое распространение на игровом рынке, и он напрямую конкурировал со многими более специфичными для аппаратного обеспечения, часто проприетарными графическими библиотеками, в то время как OpenGL оставался сильным последователем. Direct3D 7.0 представил поддержку аппаратного ускорения преобразования и освещения (TL) для Direct3D, в то время как OpenGL уже имел эту возможность с самого начала. Карты 3D-ускорителей вышли за рамки простых растеризаторов и добавили еще один важный аппаратный этап в конвейер 3D-рендеринга. Nvidia GeForce 256 (также известная как NV10) была первой картой потребительского уровня, выпущенной на рынок с аппаратным ускорением TL, тогда как профессиональные 3D-карты уже имели такую возможность. Аппаратное преобразование и освещение, уже существующие функции OpenGL, появились в оборудовании потребительского уровня в 90-х годах и создали прецедент для более поздних блоков пиксельного шейдера и вершинного шейдера, которые были гораздо более эффективными. гибкий и программируемый.
Nvidia первой выпустила чип с возможностью программирования затенения, GeForce 3 (кодовое название NV20). Теперь каждый пиксель мог обрабатываться короткой «программой», которая могла включать дополнительные текстуры изображения в качестве входных данных, и каждая геометрическая вершина могла аналогично обрабатываться короткой программой перед ее проецированием на экран. Используемый в консоли Xbox, он конкурировал с PlayStation 2, в которой использовался пользовательский векторный блок для аппаратной ускоренной обработки вершин; обычно обозначается как VU0 / VU1. Самые ранние воплощения механизмов выполнения шейдеров, используемых в Xbox, не были универсальными и не могли выполнять произвольный пиксельный код. Вершины и пиксели обрабатывались разными модулями, у которых были свои собственные ресурсы с пиксельными шейдерами, имеющими гораздо более жесткие ограничения (поскольку они выполнялись с гораздо более высокими частотами, чем с вершинами). Механизмы пиксельного затенения на самом деле были больше похожи на настраиваемый функциональный блок и на самом деле не «запускали» программу. Многие из этих различий между вершинным и пиксельным затенением не были устранены до гораздо более позднего времени с помощью унифицированной шейдерной модели.
. К октябрю 2002 г., с появлением ATI Radeon 9700 (также известный как R300), первый в мире ускоритель Direct3D 9.0, пиксельные и вершинные шейдеры могли реализовывать цикл и длинные математические операции с плавающей запятой и быстро становились гибкий, как ЦП, но на несколько порядков быстрее для операций с массивами изображений. Пиксельное затенение часто используется для bump mapping, которое добавляет текстуру, чтобы объект выглядел блестящим, тусклым, шероховатым или даже круглым или выдавленным.
С появлением Nvidia GeForce 8 серии, а затем новые универсальные графические процессоры потоковой обработки стали более универсальными вычислительными устройствами. Сегодня параллельные графические процессоры начали совершать вычислительные атаки против CPU, и область исследований, получившая название GPU Computing или GPGPU для вычислений общего назначения на GPU, нашла свое применение в таких областях, как разнообразные, такие как машинное обучение, разведка нефти, научная обработка изображений, линейная алгебра, статистика, 3D-реконструкция и даже опционы на акции определение цены. GPGPU в то время был предшественником того, что сейчас называется вычислительным шейдером (например, CUDA, OpenCL, DirectCompute), и фактически в определенной степени злоупотреблял оборудованием, обрабатывая данные, передаваемые в алгоритмы, как карты текстур и выполняя алгоритмы. путем рисования треугольника или четырехугольника с помощью соответствующего пиксельного шейдера. Это, очевидно, влечет за собой некоторые накладные расходы, поскольку такие модули, как Scan Converter, задействованы там, где они на самом деле не нужны (при этом манипуляции с треугольниками даже не вызывают беспокойства - за исключением вызова пиксельного шейдера). За прошедшие годы энергопотребление графических процессоров увеличилось, и для его управления было предложено несколько методов.
Платформа Nvidia CUDA, впервые представленная в 2007 году, была самой ранней широко принятой моделью программирования. для вычислений на GPU. Совсем недавно OpenCL получил широкую поддержку. OpenCL - это открытый стандарт, разработанный Khronos Group, который позволяет разрабатывать код как для графических процессоров, так и для процессоров с упором на переносимость. Решения OpenCL поддерживаются Intel, AMD, Nvidia и ARM, и, согласно недавнему отчету Evan's Data, OpenCL является платформой разработки GPGPU, наиболее широко используемой разработчиками как в США, так и в Азиатско-Тихоокеанском регионе.
В 2010 году Nvidia начала партнерство с Audi для питания приборных панелей своих автомобилей. Эти графические процессоры Tegra питали приборную панель автомобилей, предлагая расширенные функциональные возможности автомобильным навигационным и развлекательным системам. Достижения в технологии GPU в автомобилях помогли продвинуть технологию самоуправления. Карты AMD Radeon HD 6000 Series были выпущены в 2010 году, а в 2011 году AMD выпустила свои дискретные графические процессоры серии 6000M для использования в мобильных устройствах. Линия видеокарт Kepler от Nvidia вышла в 2012 году и использовалась в картах Nvidia серий 600 и 700. Особенность этой новой микроархитектуры графического процессора включала ускорение графического процессора - технология, регулирующая тактовую частоту видеокарты для увеличения или уменьшения ее в зависимости от потребляемой мощности. Микроархитектура Kepler была изготовлена по 28 нм техпроцессу.
PS4 и Xbox One были выпущены в 2013 году, они оба используют графические процессоры на базе AMD Radeon HD 7850 и 7790. За линейкой графических процессоров Nvidia Kepler последовала линейка Maxwell, изготовленная по тому же процессу. 28-нм чипы Nvidia производились TSMC, Тайваньской производственной компанией полупроводников, которая в то время производила 28-нм техпроцесс. По сравнению с прошлой 40-нм технологией, этот новый производственный процесс позволил повысить производительность на 20 процентов при меньшем потреблении энергии. Виртуальная реальность гарнитуры имеют очень высокие системные требования. Производители гарнитур виртуальной реальности рекомендовали GTX 970 и R9 290X или лучше на момент их выпуска. Pascal - следующее поколение потребительских видеокарт от Nvidia, выпущенное в 2016 году. GeForce 10 series Карты находятся под это поколение видеокарт. Они производятся с использованием техпроцесса 16 нм, который улучшает предыдущие микроархитектуры. Nvidia выпустила одну непотребительскую карту с новой архитектурой Volta, Titan V. Отличия от Titan XP, высокопроизводительной карты Pascal, включают увеличение количества ядер CUDA, добавление тензорного ядер и HBM2. Тензорные ядра - это ядра, специально разработанные для глубокого обучения, в то время как память с высокой пропускной способностью - это встроенная, многослойная память с низкой тактовой частотой, которая предлагает чрезвычайно широкую шину памяти, которая полезна для предполагаемой цели Titan V. Чтобы подчеркнуть, что Titan V не является игровой картой, Nvidia удалила суффикс «GeForce GTX», который она добавляет к потребительским игровым картам.
20 августа 2018 года Nvidia выпустила графические процессоры серии RTX 20, которые добавляют ядра трассировки лучей к графическим процессорам, улучшая их производительность при создании световых эффектов. Polaris 11 и Polaris 10 Графические процессоры AMD производятся по 14-нанометровому процессу. Их выпуск приводит к существенному увеличению производительности на ватт видеокарт AMD. AMD также выпустила серию графических процессоров Vega для высокопроизводительного рынка в качестве конкурента высокопроизводительным картам Pascal от Nvidia, также с HBM2, например Titan V.
Многие компании производили графические процессоры. под рядом торговых марок. В 2009 году лидерами по доле рынка были Intel, Nvidia и AMD / ATI с 49,4%, 27,8% и 20,6% рынка. поделитесь соответственно. Однако эти числа включают интегрированные графические решения Intel в виде графических процессоров. Не считая их, Nvidia и AMD контролируют почти 100% рынка по состоянию на 2018 год. Их рыночные доли составляют 66% и 33%. Кроме того, S3 Graphics и Matrox производят графические процессоры. Современные смартфоны также используют в основном графические процессоры Adreno от Qualcomm, PowerVR графические процессоры от Imagination Technologies и графические процессоры Mali от ARM.
Современные графические процессоры используют большую часть своих транзисторов для выполнения вычислений, связанных с 3D компьютерной графикой. В дополнение к 3D-оборудованию, современные графические процессоры включают базовое 2D-ускорение и возможности кадрового буфера (обычно с режимом совместимости VGA). Более новые карты, такие как AMD / ATI HD5000-HD7000, даже не имеют 2D-ускорения; это должно быть эмулировано оборудованием 3D. Первоначально графические процессоры использовались для ускорения работы с интенсивным использованием памяти наложения текстур и рендеринга полигонов, позже добавлялись блоки для ускорения геометрических вычислений, таких как вращение и перевод вершин в разные системы координат. Последние разработки в области графических процессоров включают поддержку программируемых шейдеров, которые могут управлять вершинами и текстурами с помощью многих из тех же операций, которые поддерживаются процессорами, передискретизацией и интерполяцией, чтобы уменьшить наложение и очень высокоточные цветовые пространства. Поскольку большинство этих вычислений включает операции матрица и вектор, инженеры и ученые все больше изучают использование графических процессоров для неграфических вычислений; они особенно подходят для других слишком параллельных задач.
С появлением глубокого обучения важность графических процессоров возросла. В исследовании, проведенном Indigo, было обнаружено, что при обучении нейронных сетей с глубоким обучением графические процессоры могут быть в 250 раз быстрее, чем процессоры. Стремительный рост глубокого обучения в последние годы объясняется появлением графических процессоров общего назначения. В этой области наблюдается определенная конкуренция с ASIC, в первую очередь с Tensor Processing Unit (TPU) от Google. Однако ASIC требуют изменения существующего кода, а графические процессоры по-прежнему очень популярны.
Большинство графических процессоров, выпущенных с тех пор 1995 поддерживает YUV цветовое пространство и аппаратные оверлеи, важные для воспроизведения цифрового видео, и многие графические процессоры, выпущенные с 2000 года, также поддерживают Примитивы MPEG, такие как компенсация движения и iDCT. Этот процесс аппаратного ускорения декодирования видео, при котором части процесса декодирования видео и постобработки видео выгружаются на аппаратное обеспечение графического процессора, обычно называется «декодированием видео с ускорением графического процессора»., «Декодирование видео с помощью графического процессора», «декодирование видео с аппаратным ускорением с помощью графического процессора» или «декодирование видео с помощью аппаратного графического процессора».
Более современные видеокарты даже декодируют видео высокой четкости на карте, разгружая центральный процессор. Наиболее распространенными API для декодирования видео с ускорением на GPU являются DxVA для операционной системы Microsoft Windows и VDPAU, VAAPI, XvMC и XvBA для операционных систем на базе Linux и UNIX. Все, кроме XvMC, способны декодировать видео, закодированные с помощью MPEG-1, MPEG-2, MPEG-4 ASP (MPEG-4 Part 2), MPEG-4 AVC (H.264 / DivX 6), VC-1, WMV3 / WMV9, Xvid / OpenDivX (DivX 4) и DivX 5 кодеки, в то время как XvMC способен декодировать только MPEG-1 и MPEG-2.
Существует несколько специализированных аппаратных решений для декодирования и кодирования видео.
Процессы декодирования видео, которые могут быть ускорены современным оборудованием GPU:
Вышеупомянутые операции также имеют приложения в редактирование видео, кодирование и тр anscoding
В персональных компьютерах есть две основные формы графических процессоров. У каждого есть много синонимов:
Большинство графических процессоров предназначены для конкретного использования, трехмерной графики в реальном времени или других массовых вычислений:
Графические процессоры из самых мощных класс обычно взаимодействует с материнской платой с помощью слота расширения, такого как PCI Express (PCIe) или Accelerated Graphics Port (AGP) и обычно могут быть относительно легко заменены или обновлены, если материнская плата способна поддерживать обновление. Некоторые видеокарты по-прежнему используют слоты Peripheral Component Interconnect (PCI), но их полоса пропускания настолько ограничена, что они обычно используются только тогда, когда слот PCIe или AGP недоступен.
Выделенный графический процессор не обязательно является съемным, и он не обязательно взаимодействует с материнской платой стандартным образом. Термин «выделенный» относится к тому факту, что выделенные графические карты имеют RAM, предназначенную для использования карты, а не к тому факту, что большинство выделенных графических процессоров являются съемными. Кроме того, эта оперативная память обычно специально выбирается для ожидаемой последовательной нагрузки графической карты (см. GDDR ). Иногда системы с выделенными дискретными графическими процессорами назывались системами «DIS», в отличие от систем «UMA» (см. Следующий раздел). Выделенные графические процессоры для портативных компьютеров обычно подключаются через нестандартный и часто проприетарный слот из-за ограничений по размеру и весу. Такие порты по-прежнему могут считаться PCIe или AGP с точки зрения их логического интерфейса хоста, даже если они физически не взаимозаменяемы со своими аналогами.
Такие технологии, как SLI и NVLink от Nvidia и CrossFire от AMD, позволяют нескольким графическим процессорам рисовать изображения одновременно для одного экрана, увеличивая вычислительная мощность, доступная для графики. Однако эти технологии становятся все более редкими, поскольку в большинстве игр не полностью используются несколько графических процессоров, поскольку большинство пользователей не могут себе их позволить. Несколько графических процессоров по-прежнему используются на суперкомпьютерах (например, в Summit ), на рабочих станциях для ускорения видео (одновременная обработка нескольких видео) и 3D-рендеринга, для VFX и моделирования, а также в AI для ускорения обучения, как есть случай с линейкой рабочих станций и серверов DGX от Nvidia, графическими процессорами Tesla и грядущими графическими процессорами Intel Ponte Vecchio.
Интегрированный графический процессор (IGPU), интегрированная графика, общие графические решения, интегрированные графические процессоры (IGP) или архитектура унифицированной памяти (UMA) используют часть системной RAM компьютера, а не выделенную графическую память. IGP могут быть интегрированы в материнскую плату как часть набора микросхем (северного моста) или на одном кристалле с процессором (например, AMD APU или Intel HD Graphics ). На некоторых материнских платах IGP AMD может использовать выделенную память бокового порта. Это отдельный фиксированный блок высокопроизводительной памяти, предназначенный для использования графическим процессором. В начале 2007 года на компьютеры со встроенной графикой приходилось около 90% всех поставок ПК. Они менее затратны в реализации, чем специализированная обработка графики, но, как правило, менее эффективны. Исторически сложилось так, что интегрированная обработка данных считалась непригодной для игры в 3D-игры или запуска графически интенсивных программ, но могла запускать менее интенсивные программы, такие как Adobe Flash. Примерами таких IGP могут быть предложения SiS и VIA около 2004 года. Однако современные интегрированные графические процессоры, такие как AMD Accelerated Processing Unit и Intel HD Graphics, более чем способны обрабатывать 2D-графику. или 3D-графика с низким уровнем стресса.
Поскольку вычисления на GPU чрезвычайно интенсивны в памяти, интегрированная обработка может оказаться конкурирующей с CPU за относительномедленную системную RAM, поскольку у него минимальная выделенная видеопамять или ее нет. IGP может иметь до 29,856 ГБ / с пропускной способности памяти из системной RAM, тогда как графическая карта может иметь до 264 ГБ / с пропускной способности между своей RAM и ядром GPU. Эта полоса пропускания шины памяти может ограничивать производительность графического процессора, хотя многоканальная память может смягчить этот недостаток. В старых наборах микросхем встроенной графики отсутствовали аппаратные средства преобразования и освещения, но в более новых они есть.
Этот новый класс графических процессоров конкурирует со встроенной графикой в низкоуровневых графических процессорах. конец рынков настольных компьютеров и ноутбуков. Наиболее распространенными реализациями этого являются графические карты ATI HyperMemory и Nvidia TurboCache.
Hybrid, которые несколько дороже, чем встроенная графика, но намного дешевле, чем выделенные видеокарты. Они совместно используют память с системой и имеют небольшой выделенный кэш памяти, чтобы компенсировать высокую задержку системной RAM. Это возможно благодаря технологиям PCI Express. Хотя эти решения иногда рекламируются как имеющие до 768 МБ ОЗУ, это относится к тому, сколько можно использовать совместно с системной памятью.
Все более распространенным становится использование графического процессора общего назначения (GPGPU) как модифицированной формы потоковый процессор (или векторный процессор ), выполняющий вычислительные ядра. Эта концепция превращает огромную вычислительную мощность шейдерного конвейера современного графического ускорителя в вычислительную мощность общего назначения, в отличие от того, чтобы быть жестко запрограммированной исключительно для выполнения графических операций. В некоторых приложениях, требующих массивных векторных операций, это может дать на несколько порядков более высокую производительность, чем у обычного ЦП. Две самые большие дискретные (см. «выделенные видеокарты » выше) разработчики графических процессоров, AMD и Nvidia, начинают применять этот подход с множеством приложений. И Nvidia, и AMD объединились с Стэнфордским университетом для создания клиента на базе графического процессора для проекта распределенных вычислений Folding @ home для вычислений сворачивания белков. При определенных обстоятельствах графический процессор вычисляет в сорок раз быстрее, чем процессоры, традиционно используемые такими приложениями.
GPGPU можно использовать для многих типов беспорядочно параллельных задач, включая трассировку лучей. Обычно они подходят для вычислений с высокой пропускной способностью, которые демонстрируют параллелизм данных, чтобы использовать архитектуру графического процессора с широкой векторной шириной SIMD.
Кроме того, высокопроизводительные компьютеры на базе графических процессоров начинают играть важную роль в крупномасштабном моделировании. Три из 10 самых мощных суперкомпьютеров в мире используют ускорение GPU.
GPU поддерживает расширения API для языка программирования C, такие как OpenCL и OpenMP. Кроме того, каждый поставщик графических процессоров представил свой собственный API, который работает только с их картами, AMD APP SDK и CUDA от AMD и Nvidia соответственно. Эти технологии позволяют указанным функциям, называемым вычислять ядра, из обычной программы на языке C для работы на потоковых процессорах графического процессора. Это позволяет программам на C использовать преимущества графического процессора для параллельной работы с большими буферами, при этом при необходимости используя ЦП. CUDA также является первым API, позволяющим приложениям на базе ЦП напрямую обращаться к ресурсам ГП для вычислений более общего назначения без ограничений использования графического API.
С 2005 года проявляется интерес к использованию производительности предлагаемые графическими процессорами для эволюционных вычислений в целом и для ускорения оценки пригодности в генетическом программировании в частности. Большинство подходов компилируют линейные или древовидные программы на главном ПК и передают исполняемый файл на графический процессор для запуска. Обычно преимущество в производительности достигается только при одновременном запуске одной активной программы на многих примерах задач параллельно с использованием архитектуры SIMD графического процессора. Однако существенный графический процессор для интерпретации там, а вместо этого передавая их графический процессор для интерпретации там. Ускорение может быть получено либо путем одновременной интерпретации нескольких программ, одновременного выполнения нескольких вариантов задач или сочетания другого. Современный GPU может легко одновременно интерпретировать тысяч очень маленьких программ.
Некоторые современные графические процессоры для рабочих станций, такие как карты архитектуры платформ Nvidia Quadro, использующие Volta и Turing, имеют выделенные ядра обработки для приложений глубокого обучения на основе тензорного анализа. Текущие серии графических процессоров Nvidia эти ядра называются тензорными ядрами. Эти графические процессоры обычно увеличивают производительность FLOPS, используя матричное умножение и деление 4x4, что приводит к производительности оборудования до 128 TFLOPS в некоторых приложениях. Эти тензорные ядра также должны появиться в потребительских картах архитектурой Тьюринга и, возможно, в потребительских картах серии Navi от AMD.
Внешний GPU - это графический процессор, расположенный вне корпуса компьютера, похож на большой внешний жесткий диск. Внешние графические процессоры иногда используются с портативными компьютерами. Ноутбуки имеют значительный объем оперативной памяти и достаточно мощный центральный процессор (ЦП), но не имеют мощного графического процессора вместо этого мощный, но более энергоэффективный встроенный графический процессор. Встроенные графические чипы часто недостаточно мощны для видеоигр или других задач, требуются большого количества графики, таких как редактирование видео или 3D-анимация / рендеринг.
Следовательно, желательно иметь возможность подключить графический процессор к какой-либо внешней шине ноутбука. PCI Express - единственная шина, используемая для этой цели. Порт может быть, например, портом ExpressCard или mPCIe (PCIe × 1, до 5 или 2,5 Гбит / с соответственно) или Thunderbolt 1, 2 или 3 порта (PCIe × 4, до 10, 20 или 40 Гбит / с соответственно). Эти порты доступны только на некоторых ноутбуках. Корпуса eGPU включают в себя собственный блок питания (PSU), потому что мощные графические процессоры могут легко потреблять в сотниатт.
Официальная поддержка внешних графических процессоров со стороны поставщиков в последнее время набирает обороты. Важной вехой стало решение Apple поддерживать внешние графические процессоры в MacOS High Sierra 10.13.4. Есть также несколько крупных поставщиков оборудования (HP, Alienware, Razer), выпускающих корпуса Thunderbolt 3 eGPU. Эта поддержка продолжает стимулировать внедрение энтузиастами eGPU.
В 2013 году по всему миру было поставлено 438,3 миллиона графических процессоров, прогноз на 2014 год составлял 414,2 миллиона.
На Викискладе есть материалы, связанные с графическими процессорами. |