NVIDIA обяви днес най-новата версия на своя NVIDIA CUDA Toolkit за разработка на приложения използващи паралелни изчисления, извършвани от NVIDIA графични процесори.
Новият NVIDIA CUDA 4.0 Toolkit е създаден с цел да улесни паралелното програмиране и да позволи на още повече разработчици на софтуер да могат да прехвърлят своите приложения върху графичния процесор. Усъвършенстваната версия осигурява три основни нововъведения:
– NVIDIA GPUDirect 2.0 технология – Осигурява поддръжка за peer-to-peer комуникация между графичните процесори в един сървър или работна станция. Това дава възможност за по-лесно и бързо програмиране на приложения, използващи повече от един графичен процесор и съответно повишаване на тяхната ефективност в последствие.
– Унифицирано виртуално адресиране (UVA) – Осигурява едно общо адресно пространство за системната памет и графичната видеопамет, давайки възможност за по-бързо и лесно паралелно програмиране.
– Thrust C++ библиотеки с основни шаблони – Осигурява набор от мощни паралелни алгоритми на C++ с отворен код и структури от данни, които улесняват работата на C++ разработчиците. С помощта на Thrust, функциите като например паралелно сортиране са между 5 до 100 пъти по-бързи, отколкото при използването на Standard Template Library (STL) и Threading Building Blocks (TBB).
„Унифицираното виртуално адресиране и по-бързата GPU-GPU комуникация улесняват разработчиците да се възползват от възможностите за паралелни изчисления с помощта на графичния процесор”, заяви Джон Стоун, старши програмист-изследовател в University of Illinois, Urbana-Champaign.
„Наличието на достъп до графичния процесор за изчисления посредством стандартен шаблонен интерфейс значително ускорява продуктивността за широк набор от задачи, от прости неща като проследяване на паричен поток до сложни изчисления, както например моделиране на пазара на труда или пресмятане на промените в пресмятането на кредити”, заяви Питър Декрем, директор Rates Products в Quantifi. „Thrust C++ библиотеката свали бариерата за влизане значително, осигурявайки базовата функционалност от ниско ниво, като например достъп и заделяне на ресурси в паметта, позволявайки на финансовите инженери да се фокусират върху разработката на алгоритми за извършване на сметки от графичния процесор”.
Архитектурата CUDA 4.0 включва и някои нови ключови възможности, в това число:
– MPI интеграция с CUDA приложения – Модифицирани MPI имплементации, като например OpenMPI автоматично предвижват данните от и към графичната памет през Infiniband, когато приложение извършва или получава MPI заявка.
– Multi-thread споделяне на GPU-та – Възможност за едновременен достъп на няколко нишки от процесора CPU до един графичен процесор, което улеснява споделянето на един графичен процесор за ползване от многонишкови приложения.
– Multi-GPU споделяне от една процесорна нишка – Едно ядро на процесора може да получи достъп до всички графични процесори в системата. Разработчиците могат лесно да координират работата на няколко различни графични процесора за споделяне на данни в приложенията.
– Нова NPP Image и Computer Vision библиотеки – Богат набор от операции за обработка на изображения, които позволяват бързата разработка на приложения за боравене с визуална информация.
– Нови и подобрени възможности
автоматичен анализ на производителността във Visual Profiler
нови възможности в cuda-gdb и добавена поддръжка за MacOS
добавена поддръжка за нови полезни C++ възможности
нов бинарен GPU дисасемблер
Предварителна версия на CUDA Toolkit 4.0 ще бъде налична безплатно от 4-ти март 2011, след записване в CUDA Registered Developer Program на адресwww.nvidia.co.uk/paralleldeveloper.
Програмата за регистрирани CUDA разработчици осигурява широк набор от инструменти, ресурси и информация за разработката на паралелни приложения, които да могат да се възползват от пълния потенциал на CUDA.