NVIDIA CUDA 3.1

27-го июня компания NVIDIA выпустила очередную версию технологии CUDA. Из нововведений версии 3.1 отмечается следующее:

  • технология GPUDirect™ для прямого доступа к памяти GPU;
  • одновременное выполнение вплоть до 16 функций-ядер (только для архитектуры Fermi);
  • возможность одновременного использования CUDA Driver API и CUDA Runtime API, реализованная за счет разделяемых буферов;
  • нововведения, касающиеся языка CUDA C/C++:
    • возможность использования printf() в GPU-коде;
    • поддержка рекурсии и указателей на функции (только для архитектуры Fermi), что должно способствовать портированию программного кода на Fermi GPU;

  • унифицированный визуальный профайлер для CUDA и OpenCL;
  • множество улучшений в математических библиотеках CUBLAS и CUFFT;
  • новые примеры кода в составе SDK.

CUDA — программная технология, дающая возможность программистам на С/С++ использовать вычислительные мощности GPGPU наиболее естественным образом. До появления CUDA программистам приходилось пользоваться не самыми подходящими для вычислительных задач API OpenGL или Direct3D, загружая данные в GPU виде графических текстур и программируя алгоритмы на шейдерных языках. CUDA же представляет собой набор расширений для привычного языка C, автоматически заботясь о компиляции кода и его загрузке в GPU. Существуют аналогичная технология разработки AMD, FireStream, и попытка унификации GPGPU API — OpenCL. Последний в полной мере поддерживается технологией CUDA.

Программистам, использующим CUDA, рекомендуется воспользоваться специальными драйверами для разработчиков (доступными по нижеприведенной ссылке), которые поддерживают более широкий спектр устройств в меньшем объеме инсталлятора. Поддержка CUDA 3.1 обеспечивается драйверами серии 256.

©  Linux.org.ru