Member
Статус: Не в сети Регистрация: 17.10.2006 Откуда: old school Фото: 14
Проникаюсь документацией nvidia, но не могу понять главное - как под виндой компилировать написанный под CUDA код. Есть комилятор nvcc для компилирования частей под видео, но ему требуется обычный для обычных частей кода. Как это вместе работает? Кто-нибудь пробовал?
Последний раз редактировалось anwjl 16.04.2009 21:51, всего редактировалось 1 раз.
Member
Статус: Не в сети Регистрация: 17.10.2006 Откуда: old school Фото: 14
18 просмотров темы за неделю. Это больше похоже на монолог. Итак, код для CUDA представляет собой простой код на C++, который компилируется как обычно (у меня в Visual Studio 2008), в этот обычный код (host code) включены или из него вызваны функции, написанные под GPU (device code). Часть под device компилируется nvcc. VS сам подхватывает nvcc и компилирует все чем надо, так что, если не нужны расширенные возможности nvcc , то на его существование можно до поры вообще не обращать внимания. А еще в CUDA SDK есть пригодный для модернизации темплейт проекта, так что пока у nvidia все user-friendly.
Всё правильно говоришь, я тоже просто скачал SDK и Toolkit и открыл готовый сэмпл проекта 2008 студией и стал его модифицировать. Всё прекрасно компилируется и работает.
Member
Статус: Не в сети Регистрация: 17.10.2006 Откуда: old school Фото: 14
Узнал, что ВМК МГУ совместно с nvidia проводит сейчас цикл открытых лекций по CUDA. Правда, он почти закончился, всего 3 лекции осталось. Зато пускают всех, подробности - http://groups.google.ru/group/cudacsmsusu?lnk=srg&hl=ru
Только вот мне там никак не побывать, я вобщем-то и по мануалам более менее освоил азы. Щас хочу небольшой бенчмарк сделать и выложить, чтобы люди погоняли и статистика результатов накопилась.
А кто что пробовал запрограммировать на CUDA ? Добавлено спустя 21 минуту, 56 секунд Кстати там по ссылке звукозаписи лекций есть и прочая полезная инфа.
_________________ Разработчик бенчмарка CUDA Factorial Benchmark.
ну как и все: сложение векторов и перемножение матриц. Насчет правильности перемножения на gpu не уверен, разбираться будут завтра уже. время выполнения 3,69s на cpu и 0,39s на gpu (конфа из профиля). Распаллелил достаточно просто, думаю можно увеличить размерность блоков и гридов (как в примере из SDK) - тогда должно получиться быстрее.
Программулина считает факториал в 16-ричном виде, сначала делает это используя один поток CPU, потом делает расчет особо тяжеловесных операций на GPU.
Сравнивает полученные скорости и расчитывает получившееся ускорение расчета. Затем предлагает задампить расчитанный факториальчик в файл.
На профильной конфигурации прирост скорости становится заметным начиная примерно с 5000! .
Мы хотим решать на сетках уравнения Эйлера и Навье-Стокса. Пока вожусь с предпроцессором.
Мне это мало о чем говорит, у меня другое направление, в основном то, что связано с дискретной математикой, теорией сложности алгоритмов(кафедра информатики).
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения