Накопилось сразу много новостей, мимо которых нельзя пройти мимо.
CUDA
High Performance Linpack для CUDA/Fermi
Внезапно обнаружил, что High Performance Linpack для Fermi с начала августа доступен на сайте Nvidia для зарегистрированных девелоперов.
Презентация про эту штуку есть тут: CUDA Accelerated Linpack for Clusters, пишут про 350 GFLOP/s для DGEMM на Tesla M2050 (только GPU) и 435 GFLOP/s для комбинации M2050+8CPU (2xQuad core Xeon 2.66). Для более мощной машины (CPU на 2.8 а не 2.33) показаны 475 GFLOP/s на DGEMM, 401 GFLOP/s для Linpack с одним GPU и 705 GFLOP/s с двумя GPU.
Нашлась еще статья китайцев: Early Linpack Performance Benchmarking on IPE Mole 8.5 Fermi GPU Cluster, где есть цифирка про 200 TFLOP/s на кластере из 320 узлов, по 6 GPU на узел.
CUDA by Example на русском

Нам сообщают, что вышел русский перевод книги CUDA by Example.
ISBN: 978-5-94074-504-4, 978-0-13-138768-3
Доступна в онлайн-магазинах. например в Озоне и Лабиринте.
Я (исходный) английский вариант не читал, поэтому спиратил нашел в ознакомительных целях, быстро пролистал и удалил :).
Книга производит очень приятное впечатление как по порядку изложения материала, так и по полноте: помимо базовых вещей не забыты текстуры, не забыто взаимодействие с OpenGL/DX. В ней нет ничего про "продвинутые оптимизации", а вот как базовое изложение - очень понравилось.
О качестве русского перевода пока ничего сказать не могу.
Свежие GPGPU tools
В последние дни оба основных разработчика GPU обновили свои GPGPU toolkits до CUDA 4.0 RC2 и APP SDK 2.4, соответственно.
Новости одной строкой
Вдруг накопилось много мелких, но довольно существенных новостей, которые анонсирую одним текстом:
- Parallel Nsight Pro стал бесплатным
-
Pro-версия Parallel Nsight теперь раздается бесплатно (раньше - только версия Standard). Берут отсюда, требуется регистрация.
Профессиональная версия отличается наличием отладчика.
- Поддержка OpenCL включена в ATI/AMD Catalyst 11.x
-
До версии Catalyst 10.10, для поддержки OpenCL нужны были девелоперские драйвера, которые входили в Stream SDK. Начиная с 10.10 - появилась специальная версия с включенным OpenCL, которая ставилась как обычные драйвера, но пользователю нужно было специально скачивать эту версию.
В 11.1 (11.0 я пропустил и потому не знаю) все наоборот - в стандартный драйвер поддержка OpenCL входит, но если вам оно не надо, то можно скачать обрезанную версию на 20 мегабайт поменьше.
Другими словами, пользователя можно просить "поставь стандартные драйвера 11.x и будет тебе счастье.
- AMD выпустил готовый комплект преподавателя для курса по OpenCL
- AMD/ATI предлагает преподавателям готовый комплект из 13 презентаций и трех примеров кода (два примера - микроскопические, один - NBody), предназначенный для чтения лекций в университетах.
Про качество мне судить трудно, но посмотреть всяко имеет смысл.
Amazon EC2 и GPGPU
Амазон прислал сегодня уведомление, дескать начали продавать виртуальные машины с GPU (NVidia Tesla).
Конфигурация инстанса, вкратце:
- 22GB памяти
- 33.5 EC2 Compute units (это эквивалентно примерно 8-ядерному Xeon гигагерца на 2.5-3)
- Два ядра NVidia Tesla M2050
- 1.6TB instance storage
- 10G-Ethernet
Стоит это удовольствие $2.10 в час (плюс плата за трафик и за дополнительный сторадж, если потребуются) при оплате по потреблению. Если планируется большое потребление, есть варианты взять подешевле, смотрите цены.
Наличие 10G очень приятно: можно поднимать большие (и очень большие) кластеры.
Мне казалось, что Амазон не первый такой, однако быстрое гуглование не нашло ни одного сервиса, который предлагал бы (виртуальные) машины с Теслой и с почасовой оплатой без платы за установку/запуск. Поправьте меня, если конкуренты таки есть.
Update: Доступны первые бенчмарки из коих следует, что виртуализация практически не мешает, а на некоторых тестах Амазон оказался и вовсе быстрее, чем тестовое сравнительное железо....
Параллельное программирование на современных видеокартах - слайды
Выкладываю слайды со встречи, проходившей вчера на физфаке МГУ.
По сравнению с тем, что было показано в аудитории, стало чуть больше слайдов и добавлен небольшой список литературы (учебные курсы и статьи, которые упоминались с голоса)
Полная презентация в PDF-формате доступна тут: Parallel-Programming-On-GPU-29092010-PhysDept-MSU.pdf
CUDA 3.1 beta
На (увы, нужен логин туда), выложили CUDA 3.1 Beta.
Из реально вкусного, там 16-way kernel concurrency, плюс обновления для CUBLAS/CUFFT.
Но:
- Примеров (GPU Computing SDK) пока нету, только сам CUDA Toolkit.
Драйвера, поддерживающие все это дело - только для Tesla. Наверное, можно их поставить обычным хаком (прописав PCI IDs в setup.inf), но я не стал.Update: драйвера 257.15 для GTX480 появились на сайте NVidia в разделе с бета-драйверами.
Update: в форум со всем этим счастьем. Update2: С драйверами 197.xx не работает.
NVdia Nexus: работа из виртуальной машины
После на двух машинах, я загорелся сделать это на одной.
Стандартные системные требования в этом случае простые: две G92/G200 видеокарты, к одной подключается монитор (мониторы, если их несколько), вторая настраивается как "ускоритель PhysX" (без подключенного монитора) и все должно работать.
У меня в рабочей машине - две видеокарты, но и сделать так, как написано выше - невозможно, если отключить от NVidia-карты мониторы, то она пропадает из системы, запустить CUDA-программу даже локально (без Nexus) не выходит. Вынимать ATI (менять на NVidia) не хотелось, для третьей двухслотовой карты места в машине нет, покупать еще одну видеокарту хотелось еще меньше.
После успеха с запуском NVidia Nexus на двух машинах, я загорелся сделать это на одной.
Стандартные системные требования в этом случае простые: две G92/G200 видеокарты, к одной подключается монитор (мониторы, если их несколько), вторая настраивается как "ускоритель PhysX" (без подключенного монитора) и все должно работать.
У меня в рабочей машине - две видеокарты, но одна из них NVidia, а вторая - ATI и сделать так, как написано выше - невозможно, если отключить от NVidia-карты мониторы, то она пропадает из системы, запустить CUDA-программу даже локально (без Nexus) не выходит. Вынимать ATI (менять на NVidia) не хотелось, для третьей двухслотовой карты места в машине нет, покупать еще одну видеокарту хотелось еще меньше.
Курс по CUDA для всех желающих (Москва)
В прошлом году я прощелкал, а в этом - нет, успеваю анонсировать.
С 24 февраля по 12 мая, еженедельно, по вторникам, на ВМиК МГУ (Москва, Воробьевы горы, м. Университет) будет читаться второй уже курс программирования NVidia CUDA для всех желающих.
Процитирую из анонса:
Московский Государственный Университет им. М.В. Ломоносова совместно с компанией NVIDIA приглашает заинтересованных студентов пройти специализированный курс "Архитектура и программирование массивно-параллельных вычислительных систем" на основе технологии CUDA. В рамках курса вы узнаете о современных многоядерных архитектурах, моделях программирования и основополагающих принципах, лежащих в основе построения эффективных параллельных алгоритмов. Вы также познакомитесь с реализациями типичных алгоритмов и задач, возникающих в цифровой обработке сигналов, математическом моделировании и гидродинамике. По окончании курса вы сможете применить свои знания на практике уже сегодня при решении вычислительноемких задач в ваших курсовых и дипломных работах. Приобретенные знания необходимы для всех, кто планирует связать свое будущее с высокими технологиями и высокопроизводительными вычислениями. Всем студентам, успешно завершившим курс "Архитектура и программирование массивно-параллельных вычислительных систем" будут выданы дипломы.
Еще об NVidia и ATI в одной машине
Как ни печально, но поведение драйверов NVidia ничем не лучше драйверов ATI: чтобы CUDA/OpenCL работали, к какой-то видеокарте NVidia должен быть подключен какой-то из активных дисплеев.
Таким образом, идея потестировать NVidia Nexus на одной машине с двумя видеокартами, одна ATI и одна NVidia, полностью провалилась: если к Geforce не подключать монитор, то с точки зрения CUDA/NEXUS этой карты не существует. Вот если бы у меня было две карты NVidia, разговор был бы другой.
CUDA 3.0 Beta
24 ноября стал публично доступен CUDA Toolkit 3.0 Beta.
Все ссылки на скачивание , их много, не вижу смысла тут дублировать.
К сожалению, в документации обновился только (и он же теперь ), вся остальная документация несет на себе гордую надпись Version 2.3.
Для работы нужен драйвер 195-й серии (195.62 уже не бета, по меньшей мере для Windows, от клиентов можно требовать апгрейда).
Cписок новых фич, кратко (более полный список - в Release Notes):
Ссылки с веба
Для тех, кому лень следить за две тщательно отобранных ссылки, показавшихся мне интересными (остальные полтора десятка свежих материалов - не зацепили)
CUDA 2.1
Вышла NVidia CUDA 2.1 (релиз). На официальном сайте пока нет, все ссылки для скачивания лежат в , обсуждать предлагается в , но обсуждение пока не очень интересное.
CUDA 2.1 beta
Вышла NVidia CUDA 2.1 BETA.
Из заметных изменений:
- Поддержка компиляции .PTX-кода на лету (драйвером)
- Поддержка TESLA на Висте
- Расширено взаимодействие с Direct3D
- Поддержан Microsoft Visual C++ 9 (VS2008)
Скачать можно откуда обычно: Get CUDA, для скачивания предлагаются драйвер и CUDA Toolkit, судя по всему SDK пока не обновлен.