Новости про CUDA и Linux

Бета-драйверы NVIDIA 260.19.26 для Linux и драйвер CUDA 3.2 для MacOS

Обновление драйверов для альтернативных операционных систем.

NVIDIA опубликовала следующую предварительную версию драйверов для Linux за номером 260.19.26. Об изменениях не сообщается, все желающие могут их поискать, скачав дистрибутив с FTP сайта по ссылкам ниже. Поддерживаются видеокарты GeForce/Quadro на базе NV40 и более новых архитектур.

Также обновился драйвер CUDA для видеокарт NVIDIA в компьютерах Apple Mac. Версия 3.2.17 поддерживает, как следует из названия, последнюю версию CUDA API, а также новые видеокарты Quadro 4000 for Mac. Загрузить драйвер для MacOS X 10.6.5 можно с сайта NVIDIA (~15 Мб).

CUDA Toolkit 3.2 RC2

Вторая предварительная версия CUDA Toolkit 3.2 и новые бета-драйверы для него.

NVIDIA продолжает открытое тестирование следующей версии API CUDA и набора средств разработки для него. Второй кандидат на релиз исправляет некоторые ошибки в поддержке архитектуры Fermi и улучшает совместимость с компилятором Intel в Linux. Загрузить инструменты разработки и документацию можно со специальной страницы сайта NVIDIA для разработчиков.

Одновременно NVIDIA обновила и драйверы с предварительной поддержкой CUDA 3.2 для всех основных платформ:

Дистрибутив Yellow Dog Linux обзавёлся поддержкой CUDA

Компания Fixstars, выпускающая достаточно известный дистрибутив Yellow Dog Linux, подготовила специальную версию с интегрированной поддержкой CUDA.

Новая CUDA-редакция Yellow Dog Enterprise Linux поставляется с интегрированными средствами разработки CUDA Toolkit, CUDA SDK и Visual Profiler, а также с предустановленным драйвером NVIDIA и средой разработки Eclipse, для которой Fixstars разработала специальный плагин, приближающий возможности разработки CUDA-программ к известному продукту NVIDIA Parallel NSight для Windows (ранее известного как Nexus). В этой версии Yellow Dog Enterprise Linux обеспечена возможность быстрого переключения между CUDA toolkit и runtimes версий 3.0, 2.3 и 2.2 без необходимости переустановки, для каждого приложения индивидуально через установку переменных среды. Дистрибутив проходит жёсткое тестирование в GPGPU-системах. Согласно распространяемым компанией результатам бенчмарков, оптимизации для GPGPU в дистрибутиве YDEL позволяют добиться до 9% преимущества в производительности в сравнении с другими популярными дистрибутивами Linux.

Для коммерческих применений Yellow Dog Enterprise Linux поставляется в форме подписки ценой 400 USD в год на компьютер/сервер. Система доступна бесплатно для образовательных целей. Fixstars также предлагает готовые компьютеры и серверы, оснащённые вычислительными модулями NVIDIA Tesla и с предустановленной CUDA-редакцией YDEL.

Причины успеха CUDA от Linux Magazine

Редактор издания «Linux Magazine» Douglas Eadline высказался о причинах успеха технологии NVIDIA CUDA.

Ведущий раздела высокопроизводительных вычислений в своей авторской колонке привёл некоторую статистику NVIDIA по использованию CUDA и её популярности в целом:

  • более 2700 упоминаний CUDA в Google Scholar;
  • более 800 видеоупоминаний CUDA на YouTube;
  • более 670 программ на CUDA Zone;
  • более 350 участников CUDA Superhero Challenge;
  • более 300 университетских курсов по изучению модели параллельного программирования CUDA;

Всё это явно выделяет CUDA среди прочих HPC технологий программирования, включая MPI, OpenMP, OpenCL и будущий Ct от Intel. Douglas Eadline попытался разобраться в причинах такого успеха CUDA.

Средства разработки CUDA бесплатны.

Хотя CUDA и не является open-source, CUDA Toolkit может загрузить и свободно использовать любой желающий с сайта NVIDIA. Даже не требуется регистрация, фактор, который нельзя недооценивать, поскольку традиционно компании-разработчики бесплатных инструментов заставляют проходить сложные регистрации с неизбежной дальнейшей обработкой их пользователей отделами продаж.

CUDA не вносит капитальных изменений в язык C.

Создатели CUDA не стали изобретать новый язык программирования. Любой владеющий C может сходу приступить к изучению и использованию CUDA.

Возможность постепенного перехода на CUDA.

Программист может постепенно добавлять функции CUDA в программу, написанную на C. Не требуется коренной переделки программ для извлечения выгоды из GPU-ускорения.

Низкий порог вхождения.

Обычно нелегко привлечь внимание к новой технологии, когда её использование требует значительных инвестиций в оборудование. В случае CUDA достаточно одной видеокарты на базе NVIDIA для начала работы. Можно проверить эффект на плате начального уровня и лишь потом решать, инвестировать ли в более мощное оборудование.

Поддержка и продвижение CUDA со стороны NVIDIA.

Многие кластерные технологии вроде MPI имеют многие схожие факторы и демонстрируют неплохой рост, но за ними не стоит компании, которая столько вкладывала бы в их продвижение. Для того же MPI просто нет аналогов центра компетенции уровня CUDA Center of Excellence Program.

Успех CUDA должен служить образцом действий для прочих разработчиков HPC технологий. Низкий порог вхождения — ключ к продвижению, а если вы предоставляете свободу разработки, ждать внедрений долго не придётся. К выходу Fermi её уже будут ждать приложения и заказы — многие ли могут похвастаться тем же?

ATI Stream SDK 2.01 с улучшенной поддержкой OpenCL

AMD дорабатывает средства GPGPU для разработчиков приложений.

Новая версия 2.01 пакета Stream для неграфического использования GPU AMD содержит изменения «средней тяжести»:

  • ATI Stream Profiler теперь полностью интегрируется в среду Microsoft Visual Studio 2008;
  • поддержка Red Hat® Enterprise Linux версии 5.3;
  • поддержка отладки ядра приложений OpenCL с помощью отладчика GNU в среде Linux;
  • предварительная реализация взаимодействия OpenCL и Direct3D 9/10;
  • четыре новых примера;
  • поддержка отдельно загружаемого средства анализа производительности Stream KernelAnalyzer;
  • исправление множества проблем с компиляцией и исполнением OpenCL;
  • поддержка разработки на Radeon HD 5670 и 5570.

Загрузить пакет ATI Stream можно с сайта AMD для 32- и 64-разрядных версий OpenSUSE, RHEL, Ubuntu, Windows XP, Vista и 7.

Наиболее интересным представляется запрятанная в нёдрах Release Notes улучшенная поддержка ATI CAL, низкоуровневого API для AMD GPU, являющегося эквивалентом CUDA driver-level API у NVIDIA. Теперь можно использовать CAL и OpenCL в одном приложении, и даже запускать OpenCL-программы при неустановленном драйвере Catalyst, что будет востребованным в серверной среде. ATI CAL также позволяет достичь большей производительности с графическими процессорами AMD предыдущих поколений, чья совместимость с OpenCL ограничена.

А вот что не исчезло, так это проблемы с работой OpenCL в системах с установленными реализациями как от AMD, так и от NVIDIA. Разработчикам по-прежнему, как в цирке, приходится перебрасывать из руки в руку библиотеки OpenCL.dll от конкурентов для отладки универсального приложения.