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

Презентация:



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

Библиотека для работы с конечными множествами, использующая графический процессор в качестве основного вычислительного устройства Новосибирский Государственный.
Вычисления Общего Назначения на Графическом Ускорителе.
GPU vs. CPU 681 млн. транзисторов Тактовая частота 575Mhz * 768MB 1.8 Ghz памяти DDR4 ~650 млн. транзисторов Тактовая частота ~700Mhz 1GB 1.1 Ghz памяти.
Трансляция операций с массивами в код для современных графических процессоров Сахарных Н.А., Адинец А.В. Научный руководитель Березин С.Б. Лаборатория.
Высокоуровневый интерфейс потокового программирования для системы ATI DPVM Адинец А.В., Сахарных Н.А. Научный руководитель Березин С.Б. Лаборатория Microsoft.
Russian University Relations Филипп Герасимов. Copyright © NVIDIA Corporation 2004 NVIDIA – кто мы? Мировой лидер в разработке графических и мультимедиа.
Ускорение MATLAB на GPU. GPGPU General-Purpose Graphics Processing Units (2003 г.) – («GPU общего назначения») – техника использования графического процессора.
Принципы адаптации вычислительных алгоритмов под параллельную архитектуру графических акселераторов С.М.Вишняков научный руководитель: д.т.н. А.В.Бухановский.
What is a GPU? A Graphics Processing Unit or GPU (also occasionally called Visual Processing Unit or VPU) is a dedicated graphics rendering device for.
Санкт-Петербургский государственный университет информационных технологий, механики и оптики Санкт-Петербург 2009 Санкт-Петербургский государственный университет.
Сравнительный анализ различных реализаций фильтра Гаусса.
САМАРСКИЙ ГОСУДАРСТВЕННЫЙ АЭРОКОСМИЧЕСКИЙ УНИВЕРСИТЕТ ИМЕНИ АКАДЕМИКА С.П. КОРОЛЕВА (национальный исследовательский университет) Якимов Павел Юрьевич,
Intro Галинский В.А. Физико-математический лицей 30 Computer Graphics Support Group 1 Введение в компьютерную графику URL:
Обработка изображений Image Processing (IP) Изображение Компьютерное зрение Computer Vision (CV) Изображение Модель (Описание) Компьютерная графика Computer.
Разработка JRE на ECMA CLI Ушаков Денис Сергеевич Кафедра системного программирования, группа 545 Научный руководитель: Салищев Сергей Игоревич Рецензент:
Принципы адаптации вычислительных алгоритмов под параллельную архитектуру графических акселераторов С.М.Вишняков научный руководитель: д.т.н. А.В.Бухановский.
Сравнение возможностей инструментария разработки программного обеспечения графических процессоров.
Роль вычислений в современной науки работу выполнил студент 141 группы Тимаков Артём.
ОБРАБОТКА ИЗОБРАЖЕНИЙ С ИСПОЛЬЗОВАНИЕМ АППАРАТНОГО УСКОРИТЕЛЯ ГРАФИКИ Разработчики: Дейнега В.М. Малых Д.А. Круглов В.Н.
Транксрипт:

Библиотека для работы с конечными множествами, использующая графический процессор в качестве основного вычислительного устройства Новосибирский Государственный Университет Механико-Математический Факультет

Выполнил : Студент 3его курса ММФ НГУ Лыков Кирилл Олегович Научные руководители: К.ф.-м.н., доцент каф. программирования Скопин И.Н. Инженер ЗАО "Интел А/О" Пасько Е.В. В рамках проекта : Использование графических процессоров для вычислений с плавающей точкой в Java- программах.Exploiting Graphics Processing Units (GPUs) for general purpose computation in Java programming language

Цель работы Глобальная цель работы создание библиотеки, написаной с использованием технологии GPGPU, которой может пользоваться Java-программист, возможно незнающий C/C++ и тонкостей GPU, OpenGL. Локальная цель этой работы реализация части этой библиотеки, позволяющей работать с так называемыми битовыми множествами, причем реализацию операций над множествами, предполагается реализовать на GPU.

Основные этапы работы 1.Освоение технологии GPGPU. В том числе библиотеки OpenGL и возможностей языка шейдеров Cg (NVIDIA Corporation). 2. Создание кода проекта на C Перенос функциональности проекта в среду Java, используя JNI. Проделанная работа Этапы [1],[2] частично выполнены: изучены основы языка шейдеров и OpenGL; написана часть необходимого в дальнейшем кода, в том числе классы необходимые для более удобной работы с текстурами и шейдерами (всего около 400 строк).

Вычисления общего назначения на графическом ускорителе General-Purpose Computation on Graphics Hardware

Мотивация использования GPU Скорость –3.0 GHz dual-core Pentium4: 24.6 GFLOPS –NVIDIA GeForceFX 7800: 165 GFLOPs –1066 MHz FSB Pentium Extreme Edition : 8.5 GB/s –ATI Radeon X850 XT Platinum Edition: 37.8 GB/s GPUs становятся все быстрее –CPUs: 1.4×годичный рост –GPUs: 1.7×(pixels) to 2.3× (vertices)годичный рост Современные GPU обеспечивают приемлемую точность вычислений –Поддержка чисел с плавающей точкой ( до 32 битов) См [1]

GPUs становятся все быстрее

Конвейер OpenGL

Основные концепции 1. Массив = текстура. CPU array (1D адресация) -> GPU texture (2D адресация) 2. Вычислительное ядро программы = шейдер. Часть программы для CPU ответственная за вычисления переносится соответствующим образом на GPU 3. Вычисление = отрисовка. 4. Получение результатов вычислений в буфер кадра ( frame buffer ).

Литература 1. David Luebke. General-Purpose Computation on Graphics Hardware. University of Virginia. 2. Mark Harris. Mapping Computational Concepts to GPUs. NVIDIA 3. Dominik Göddeke. GPGPU::Basic Math Tutorial.