Обновление драйверов для альтернативных операционных систем.
NVIDIA опубликовала следующую предварительную версию драйверов для Linux за номером 260.19.26. Об изменениях не сообщается, все желающие могут их поискать, скачав дистрибутив с FTP сайта по ссылкам ниже. Поддерживаются видеокарты GeForce/Quadro на базе NV40 и более новых архитектур.
Вторая предварительная версия CUDA Toolkit 3.2 и новые бета-драйверы для него.
NVIDIA продолжает открытое тестирование следующей версии API CUDA и набора средств разработки для него. Второй кандидат на релиз исправляет некоторые ошибки в поддержке архитектуры Fermi и улучшает совместимость с компилятором Intel в Linux. Загрузить инструменты разработки и документацию можно со специальной страницы сайта NVIDIA для разработчиков.
Одновременно NVIDIA обновила и драйверы с предварительной поддержкой CUDA 3.2 для всех основных платформ:
Компания 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.
Редактор издания «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 её уже будут ждать приложения и заказы — многие ли могут похвастаться тем же?
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 от конкурентов для отладки универсального приложения.