NVIDIA объявила о том, что программисты, использующие язык с открытым кодом Python, теперь могут применять GPU-ускорение для разработки приложений для высокоскоростных вычислений и анализа больших объемов данных с помощью модели параллельного программирования NVIDIA CUDA.

Простой и удобный язык Python входит в десятку самых популярных языков в мире и используется более чем тремя миллионами пользователей. Он позволяет писать программный код высокого уровня, который воплощает алгоритмические идеи без необходимости использования большого количества команд. Большие библиотеки и передовые возможности Python отлично подходят для широкого спектра научных, инженерных задач и приложений анализа больших объемов данных.

Параллельное программирование NVIDIA CUDA поддерживается в NumbaPro, компиляторе Python из нового продукта Anaconda Accelerate от Continuum Analytics.

«Теперь сотни тысяч пользователей Python смогут применять графические процессоры для повышения производительности своих приложений, — отметил Трэвис Олифант (Travis Oliphant), соучредитель и генеральный директор Continuum Analytics. — С помощью NumbaPro программисты получат лучшее из обоих миров: гибкость и продуктивность Python и высокую производительность графических процессоров NVIDIA».

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

Среда разработки Python от Continuum Analytics использует LLVM и пакет разработки ПО для компиляции NVIDIA CUDA, чтобы предоставить пользователям Python возможности для создания GPU-ускоряемых приложений.

Модульность LLVM позволяет дизайнерам с легкостью добавлять поддержку GPU-ускорения в широкий спектр языков общего назначения, таких, как Python, а также в языки программирования специального назначения. Эффективная поддержка компиляции в LLVM позволяет разработчикам налету компилировать программы, написанные на таких языках, как Python, для различных архитектур.

«Наша исследовательская группа обычно испытывает новые идеи и алгоритмы на языке Python и затем портирует эффективные алгоритмы на C или C++, — рассказал Виджей Панде (Vijay Pande), профессор химии факультета структурной биологии и информатики в Стэнфордском Университете. — Поддержка CUDA в Python позволяет нам создавать производительный код, используя при этом продуктивные алгоритмы Python».

Решение Anaconda Accelerate доступно для Anaconda Python от Continuum Analytics и в составе среды разработки кода и исследования данных на базе браузера Wakari.