Интерпретация модели "колеса перевоплощений" в графических системах
Исследование подхода к моделированию графической системы на базе универсального и графического процессоров (CPU и GPU), работающих с общей памятью, с использованием понятия резерва производительности CPU. Особенности создания сцен виртуальной реальности.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | статья |
Язык | русский |
Дата добавления | 27.11.2018 |
Размер файла | 168,6 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Интерпретация модели «колеса перевоплощений» в графических системах
у.т.н. В.И. Фукс
Аннотация
Рассмотрен подход к моделированию графической системы на базе универсального и графического процессоров (CPU и GPU), работающих с общей памятью, с использованием понятия резерва производительности CPU.
Ключевые слова: производительность графической системы, имитационная модель.
Annotation
Considered approach to modeling a graphics system based on universal and graphic processors (CPU and GPU), working with shared memory, using the concept of reserve CPU performance.
Keywords: productivity of graphics system, simulation model.
Особенность компьютерной визуализации, с точки зрения определения требований к используемым архитектурам, состоит в необходимости выполнения вычислений с учетом, с одной стороны, растущих требований к качеству изображения и его преобразованиям и, с другой стороны, ограничений, связанных с динамикой процесса поддержания кадров на экране.
В самом общем виде структура любой графической системы включает в себя два асимметричных процессора - центральный (CPU) и графический (GPU), работающие с общей памятью (рис. 1).
Рис. 1
Эффект миграции графических функций от аппаратурной реализации (в GPU) в сторону доступной максимальной вычислительной мощности (в CPU) (после чего этот цикл начинается снова), образно определен в [1] как «колесо перевоплощений» - «wheel of reincarnation».
На первых оборотах этого «колеса» возможности графических систем ограничивались областями сначала векторных 2D изображений с использованием для регенерации либо общей памяти (RAM), либо памяти, встроенной в дисплейный процессор. На последующих оборотах «колеса» для регенерации растровых изображений стала применяться динамическая видеопамять (DRAM). Кроме визуализации содержимого видеопамяти дисплейный процессор выполнял такие растровые операции, как рисование массивов пикселей, манипуляции с цветами пикселей, копирование, наложение текстуры и т.д. Дальнейшая специализация графического процессора обеспечивала более эффективный, по сравнению с его программной реализацией в CPU, процесс рендеринга - формирования изображения по описанию его модели. GPU включает в себя объединенные в конвейер подсистемы: геометрическую, подсистему растеризации, растровую и дисплейную. моделирование графический процессор производительность
К CPU через шинный интерфейс подключается только геометрическая подсистема. Она принимает геометрические данные, определенные в мировых координатах, выполняет преобразования и вычисление освещенности и передает результаты подсистеме растеризации для преобразования данных по полученным вершинам в индивидуальные пиксели. С каждым пикселем увязываются X, Y экранные координаты и ряд специфических параметров. Параметры пикселей линейно интерполируются между вершинами многоугольника и в отсортированном для последующих преобразований порядке передаются растровой подсистеме, формирующей кадровый буфер.
Дисплейная подсистема принимает пиксельную информацию из кадрового буфера, маршрутизирует ее в соответствии с требуемым режимом и передает на отображение.
Основным трендом развития систем визуализации является работа с изображениями, адекватными моделируемым задачам, вплоть до создания сцен виртуальной реальности. Преобразования таких изображений, тем более в реальном времени, вызывают необходимость использования сложных моделей и быстрых математических алгоритмов [2]. Успехи микроархитектуры побуждают разработчиков постоянно искать компромисс соотношения функций CPU и GPU [3]. При этом, чем более сложные функции погружаются в аппаратуру GPU, тем глубже развивается программная среда графических применений, обеспечивающая все более сложные эффекты на экране и высокую комфортность их создания. Через некоторое время часть этих программных процедур реализуется в GPU и т.д.
В целях поиска компромисса представляет интерес оценка резерва производительности CPU, под которым мы понимаем долю цикла формирования нового кадра изображения (с темпом 25-100 раз в секунду), в течение которого канал доступа к RAM свободен от запросов GPU.
Таким образом, R = 1 - Z где R - резерв производительности CPU, Z - доля цикла формирования кадра, занятая обслуживанием запросов GPU к общей памяти.
Рассматриваемую графическую структуру можно представить разомкнутой системой с ожиданием и одним обслуживающим прибором [4]. Запросы GPU связаны с необходимостью считывания:
– команд управления графическим процессором;
– входных геометрических данных и атрибутов;
– команд управления процедурами геометрических преобразований и др.
Частота обращений к RAM зависит от особенностей архитектурных решений, форматов команд и данных, а также разрядности шины памяти. Резерв производительности определяется так:
где: M[nRAM] - математическое ожидание числа обращений к памяти для исполнения элемента описания кадра;
tRAM - время считывания информации из RAM;
M[tобсл GPU] - математическое ожидание времени обслуживания в RAM запроса GPU;
M[tисп] - математическое ожидание времени исполнения в GPU элемента описания кадра.
Поток запросов по каналу доступа к RAM представляет собой пуассоновский поток с плотностью л. При этом в системе могут существовать q источников запросов. Запросы обслуживаются по принципу «первым пришел - первым обслужен» [5], а время обслуживания распределяется по показательному закону с параметром µ = 1/M[t], где M[t] - математическое ожидание времени обслуживания в RAM.
В установившемся режиме обслуживания при отсутствии запросов от GPU очередь характеризуется математическим ожиданием числа запросов на шине доступа к памяти M[s], где s ? q - 1. Преобразуя выражения, приведенные в [4] для систем с n обслуживающими приборами, при условиях, что n = 1 и б < 1, получим M[s] = б2/(1 - б)2 , где б = л/µ.
GPU выставляет свои требования на фоне внешнего потока запросов. При этом по окончании обслуживания текущего запроса новый запрос будет выставлен через интервал времени tзапр, который зависит от особенностей и форматов множества команд, данных и процедур, образующих описание модели кадра изображения.
В общем виде математическое ожидание длительности интервала формирования запросов tзапр можно записать так:
где: j - множество типов команд, данных и процедур GPU;
pinstr j - вероятность считывания элемента описания кадра j-го типа;
M[tобсл j] - математическое ожидание времени обслуживания в RAM запроса элемента описания кадра j-го типа;
M[tисп j] - математическое ожидание времени исполнения в GPU элемента описания кадра j-го типа.
При этом выполняется нормирующее условие
Т.к. в момент времени tзапр в системе с вероятностью PS будут находиться S запросов от внешних источников, то среднее время обслуживания очередного запроса GPU определяется как:
M[tобсл GPU] = M[tзапр] • {1 + б2/(1 - б)2}.
Статистический анализ характеристик распределения элементов описания кадра изображения позволит найти направление оптимизации распределения функций между CPU и GPU и выработать конкретные рекомендации при разработке.
Использование методов измерения и оценки производительности вычислительных систем [6] позволяет построить последовательность профилей цикла формирования кадра изображения для разных архитектурных решений. Для иллюстрации метода на рис. 2 показаны:
– базовый профиль цикла формирования элемента изображения;
– профиль цикла с присвоением GPU наивысшего приоритета;
– профиль цикла с предвыборкой одного слова из RAM.
Как и центральные, графические процессоры характеризуются такими параметрами, как микроархитектура, тактовая частота работы ядра, а также технологическими нормами производства. Каждый новый оборот «колеса перевоплощения» связан не только с очередным перетеканием места реализации графических преобразований, но и с существенным увеличением реализуемых возможностей, вплоть до использования, напротив, резерва мощности суперпроизводительного видеопроцессора для выполнения и не графических вычислений.
Рис. 2
Как показано в [3], с ростом производительности используемых типов БИС не меняется относительная простота программирования. Применение же GPU с архитектурно-ориентированными языками CUDA (Compute Unified Device Architecture) и OpenCL (Open Computing Language) не только увеличивает производительность, но и сокращает время программирования, тем самым распространяя их использование на сферы, традиционно занимаемые CPU (рис. 3).
Если учесть вышесказанное, то в соответствии с привычными для нас принципами нужно говорить о развитии архитектур графических систем не как о «колесе перевоплощений», а скорее как о «спирали» - «spiral of reincarnation», шаг подъема которой определяется достигнутыми уровнями совершенствования алгоритмов, микроэлектронной базы, энергоэффективности и удобства программирования графических приложений.
Рис. 3
(FPGA (Field Programmable Gate Array) - программируемая логическая матрица; ASIC (Application-Specific Integrated Circuit) - интегральная схема (на стандартных ячейках или заказная), спроектированная для решения конкретной задачи)
Литература
1. Myer T.H. and Sutherland I.E. «On the Design of Display Processors», Comm. ACM, Vol. 11, No. 6, June 1968.
2. Вельтмандер П.В. Основные алгоритмы компьютерной графики. /Учебное пособие. НГУ, 1997.
3. Erik R. Altman CPUs and GPUs: Who Owns the Future? IEEE Micro, Vol. 31, No. 5, September/October 2011.
4. Новиков О.А., Петухов С.И. Прикладные вопросы теории массового обслуживания. М., Сов. Радио, 1969, 399 с.
5. Джейсуол Н.. Очереди с приоритетами. М., Мир, 1973, 279 с.
6. Драммонд М.. Методы оценки и измерений дискретных вычислительных систем. М., Мир, 1977, 384 с.
Размещено на Allbest.ru
...Подобные документы
Достоинства многопроцессорных систем. Создание программы, реализующей работу мультипроцессорной системы с общей памятью по обработке различного количества заявок, а также различного количества процессоров. Модели вычислений на векторных и матричных ЭВМ.
курсовая работа [162,2 K], добавлен 21.06.2013Написание программы, реализующей работу мультипроцессорной системы с общей памятью, которая обрабатывает очереди заявок переменной длины. Анализ типовой архитектуры мультипроцессорной системы. Описание процедур и переменных, используемых в программе.
курсовая работа [158,4 K], добавлен 21.06.2013Архитектура компьютеров и возможности операционной системы по управлению памятью. Суть концепции виртуальной памяти. Аппаратно-независимые и аппаратно-зависимые средства управления виртуальной памятью. Сегментно-страничная организации виртуальной памяти.
презентация [355,2 K], добавлен 27.12.2010Определение основных отличий виртуальной реальности и дополненной реальности. Рассмотрение способов "доставки" виртуального изображения пользователю. Распространение виртуальной реальности в медицине, образовании, промышленности, финансах и инвестициях.
реферат [960,2 K], добавлен 20.09.2019Обоснование использования виртуальной модели, средства для разработки функциональных модулей. Разработка виртуальной модели "Представление знаний в информационных системах". Разработка алгоритмов построения виртуальной модели предметной области.
дипломная работа [1,4 M], добавлен 12.08.2017Главный недостаток систем с общей шиной. Использование матричного коммутатора в схемах. Соединения между процессорами с системах с распределенной памятью. Схема соединений процессоров в компьютере BBN Butterfly. Топологии типа гиперкуб. Архитектура NUMA.
лекция [192,3 K], добавлен 22.10.2014Теоретические основы обучения 3d моделированию на основе практикума с использованием Autodesk. Роль 3D-моделирования в повышении эффективности учебного процесса. Основные принципы создания практикума по 3D-моделированию в программной среде Autodesk.
дипломная работа [1,2 M], добавлен 13.12.2017Анализ графических пользовательских интерфейсов современных систем оптимизации программ. Создание математической модели и алгоритма системы управления СБкЗ_ПП, ее архитектурно-контекстная диаграмма. Техническая документация программного средства.
дипломная работа [1,1 M], добавлен 18.04.2012Сферы применения машинной графики. Виды компьютерной графики. Цветовое разрешение и цветовые модели. Программное обеспечение для создания, просмотра и обработки графической информации. Графические возможности текстовых процессоров, графические редакторы.
контрольная работа [21,9 K], добавлен 07.06.2010История создания и развития компьютерных процессоров Intel. Изучение архитектурного строения процессоров Intel Core, их ядра и кэш-память. Характеристика энергопотребления, производительности и систем управления питанием процессоров модельного рядя Core.
контрольная работа [7,6 M], добавлен 17.05.2013Исследование функциональных возможностей табличных процессоров в информационном обеспечении управления. Структура информационной системы на предприятии. Понятие электронных таблиц и табличных процессоров. Тенденции развития табличных процессоров.
курсовая работа [45,4 K], добавлен 15.03.2012Основы работы на языке высокого уровня Turbo Pascal. Основное оборудование и программное обеспечение. Операторы, необходимы для работы в графической среде Turbo Pascal. Запуск графического режима. Текст программы в графической среде Turbo Pascal.
лабораторная работа [12,7 K], добавлен 14.05.2011Понятие бинокулярного зрения и стереоизображения. Устройства и методы демонстрации объёмного изображения. История создания 3D очков. Шлем виртуальной реальности. Принцип послойного выращивания твёрдого объекта по цифровой 3D-модели. Применение 3D печати.
презентация [2,5 M], добавлен 12.06.2019Особенности формирования растрового изображения. Графические примитивы, которые используются наиболее часто в современных графических системах (линии и фигуры). Основные алгоритмы создания растровых изображений в графических компьютерных программах.
презентация [883,6 K], добавлен 26.01.2015Исследование и анализ общих понятий цвета, а также принципы представления, хранения, ввода, вывода и обработки графической информации. Особенности создания материала для календаря, его перевод в цифровой вид и обработка при взаимодействии с типографией.
курсовая работа [319,7 K], добавлен 30.05.2015Применение языков программирования для создания Web-приложений. Расчет трудоемкости и затрат на разработку информационной системы. Разработка концептуальной модели, структуры и интерфейса. Размещение сайта на хостинге, регистрация в поисковых системах.
дипломная работа [1,4 M], добавлен 13.06.2015Характеристика виртуальной образовательной среды Unity. Особенности трехмерной виртуальной образовательной среды, как рабочего места пользователя. Организация взаимодействия пользователя с виртуальной рабочей средой факультета с использованием скриптов.
курсовая работа [373,7 K], добавлен 22.08.2013Схемы графической аутентификации, их реализация и внедрение в операционных системах Linux. Оценка вероятности взлома графического пароля. Буквенно-цифровые пароли. Схемы треугольника и подвижной рамки. Исследование удобства и простоты использования.
дипломная работа [5,1 M], добавлен 25.01.2013Как изготавливается процессор. Выбор процессора для офисного, игрового и домашнего компьютеров. Как заменить центральный процессор в компьютере. Повышение быстродействия процессоров, тактовой частоты, быстродействия памяти, понижение таймингов.
дипломная работа [1,7 M], добавлен 29.04.2014Идея создания электронной таблицы, возникшая у студента Гарвардского университета Дэна Бриклина в 1979 г. Экранная копия VisiCalc - первая электронная таблица. Создание программ Lotus 1-2-3 и Excel. Основные функции современных табличных процессоров.
реферат [309,7 K], добавлен 23.11.2016