Студопедия  
Главная страница | Контакты | Случайная страница

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Введение в GPGPU

Читайте также:
  1. I Введение
  2. I. ВВЕДЕНИЕ
  3. I. ВВЕДЕНИЕ
  4. I. Введение
  5. I. ВВЕДЕНИЕ
  6. I. ВВЕДЕНИЕ
  7. I. ВВЕДЕНИЕ
  8. I. ВВЕДЕНИЕ
  9. I. Введение
  10. I. Введение

Sunday, 14 November 2010 01:44 ananas-wd

· GPGPU – General-Purpose computing on GPU (вычисления общего назначения на графических процессорах)

· В качестве вычислений общего назначения могут выступать и задачи, связанные с компьютерной графикой, если они не ограничиваются использованием стандартного графического конвейера (например, метод трассировки лучей)

· Потоковая обработка, используемая в графическом конвейере, может использоваться во многих вычислительных задачах общего характера

Области применения

ü Физическое моделирование

ü Финансовая математика

ü Вычислительная химия, биология

ü Компьютерное зрение

ü Томография

Особенности графического конвейера

ü Параллелизм на нескольких уровнях:

o Вершины обрабатываются параллельно и независимо друг от друга

o Растеризация примитивов также может быть распараллелена

o Фрагменты обрабатываются параллельно и независимо друг от друга

ü Когерентность: параллельно обрабатываемые фрагменты расположены рядом и обращаются к близким участкам текстур

Потоковая обработка на GPU

· Архитектура GPU предусматриваем наличие множества независимо работающих шейдерных процессоров

· Работа графического конвейера хорошо укладывается в потоковую модель вычислений (stream computing model)

· Поток (поток данных) – последовательность однотипных элементов, обработка каждого элемента может осуществляться независимо от других

· Обработка потока выполняется при помощи ядер (kernel)

Потоковая обработка на GPU: ядра

q Ядро получает на вход несколько потоков и выдает несколько потоков

q Сложные вычисления осуществляются последовательным соединением нескольких ядер

Шейдерные языки

q Изначально применялись для решения задач визуализации

q Одним из наиболее популярных является GLSL (OpenGL Shading Language, разрабатывается Khronos Group), входящий в стандарт OpenGL с версии 2.0

q Недостатки:

– На шейдерных языках пишутся только шейдеры (единицы параллельного исполнения), а не целые программы

– Необходимо формулировать задачу в графических терминах («привязка к графике»)

Сторонние средства

q Большинство основано на метапрограммировании: исходная программа разрабатывается на диалекте языка C с потоковыми расширениями, после чего транслируется в шейдеры для исполнения на GPU

q Наиболее известными являются BrookGPU и Sh




Дата добавления: 2014-12-18; просмотров: 16 | Поможем написать вашу работу | Нарушение авторских прав




lektsii.net - Лекции.Нет - 2014-2024 год. (0.007 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав