численные методы

LAPACK на CUDA

Tags: 

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

На Core2Quad + GTX280 получается примерно в 5 раз быстрее, чем просто на процессоре, что есть весьма достойно.

Анонс: Использование графических процессоров и технологии CUDA для задач молекулярной динамики

Tags: 

В журнале Вычислительные методы и программирование вышла статья А.С Боярченкова и С.И Поташникова: Использование графических процессоров и технологии CUDA для задач молекулярной динамики. Вот ее аннотация (полные тексты доступны по ссылке):

Рассмотрена параллельная реализация расчета парных межчастичных взаимодействий в методе молекулярной динамики при нулевых граничных условиях на графических процессорах с применением платформы NVIDIA CUDA. Впервые предложена эффективная реализация с использованием третьего закона Ньютона на основе технологии CUDA. Предложены приемы оптимизации кода. На видеокарте NVIDIA GeForce 8800 GTX по сравнению со скалярной версией на процессоре AMD Athlon64 2.1 ГГц достигнуто ускорение до 660 раз для системы из 49152 частиц.

Программирование NVidia 8800: вести с веба

Tags: 

В University of Illinois at Urbana, куда я чуть было не уехал заниматься геологией 15 лет назад, в настоящее время читается курс ECE 498 AL : Programming Massively Parallel Microprocessors.

Опуская обычные охи "ну почему этому не учат на ВМК" - все в наших руках и я думаю, что через пару лет такие курсы будут и у нас (Update: подобный курс уже есть на физтехе и, возможно, будет на физфаке МГУ), тема вкусная - хочу обратить внимание на слайды и транскрипты лекций, доступные вот тут. Читают приглашенные лекторы из NVidia, поэтому основное внимание уделено, сюрприз, NVidia 8800. Курс
включает в себя лабы, которые сделаны очень интересно: есть готовая рыба, делающая подготовительную работу (I/O, печать результаты) и студент должен только написать несколько десятков-сотен строк изучаемой функциональности. Что, конечно, экономит кучу
непроизводительного времени (смотреть тут)

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

Нравится, как практику, подробный разбор аппаратуры. Вылезает множество подробностей, которые нигде не опубликованы.

Вот о подробностях - ниже.

NVidia 8800GTX: скорость чтения текстур

Tags: 

В предыдущей части мы рассматривали чтение из глобальной памяти Geforce 8800 напрямую ("как из массива C"). При этом отсутствует кэширование, но при оптимальной схеме доступа получается (согласно указаниям NVidia) наибольшая производительность.

В то же время, скорость доступа при неоптимальном паттерне очень маленькая. Для решения этой проблемы (помимо оптимизации паттерна) NVidia CUDA предлагает доступ к памяти как к текстуре.

NVidia 8800GTX: пропускная способность памяти (при использовании CUDA)

Tags: 

После чтения руководства по NVidia CUDA, остается ощущение сложности модели программирования: треды, блоки тредов, warp-ы, иерархическая память. Непонятно, какие параметры вычислительной задачи оптимальны и какие у них вообще допустимые значения. Само руководство точных рекомендаций не дает, дает лишь приблизительные.

Из общих соображений, понятно что самая медленная часть суперкомпьютера - память.

Читая форумы: NVidia 8800GTX, гигафлопсы, консистентность памяти и прочие тараканы

Tags: 

Третий день читаю форумы про NVidia CUDA и радуюсь сырости технологии.
Subscribe to RSS - численные методы