Ускорение вычислений на видеокарте от Microsoft, или кратко о Microsoft Accelerator

суббота, 30 января 2010, Yuriy Bogomolov

О вычислениях на видеокарте за последние годы не писал разве что ленивый. AMD/ATI представила свою StreamComputing, а в последствии и OpenCL, NVidia всячески продвигает свою CUDA. Не осталась в стороне и Microsoft. Итак, встречаем библиотеку Microsoft Accelerator, основная цель которой — ускорение на видеокарте и/или многоядерных процессорах обработки одно- и двухмерных массивов данных.

Плюсы:

  1. Написана под .NET, так что есть возможность вызовов из любых .NET-языков — C#, VB.NET и даже F# (возможно, я об этом еще напишу).
  2. Если в ваши задачи входит активная работа с матрицами — транспонирование, перемножение, gathering, суммирование и проч., то использовать эту библиотеку вам будет довольно удобно

Минусы:

  1. Шаг в сторону — попытка к бегству, т.е. если вам надо сделать над массивом данных какую-то операцию, не предусмотренную разработчиками, вся легкость использования куда-то испаряется.
  2. На передачу данных между видеокартой и оперативной памятью тратится солидное время, так что преимущества Accelerator'а можно оценить только на достаточно больших массивах данных.

Скачать и оценить эту библиотеку можно здесь: http://research.microsoft.com/en-us/projects/Accelerator/

Постскриптум: а еще у Майкрософта есть совершенно сектретный проект Accelerator v2, который якобы будет гораздо удобнее v1 и будет предоставлять возможность написания своих вычислительных шейдерах. Скачать его можно здесь, согласившись с кучей лицензионных соглашений, только я вам этого не говорил :)

Компании из статьи


Microsoft Украина


Сайт:
http://www.microsoft.com/ukr/ua/

Microsoft Украина Украинское подразделение компании Microsoft.

Ищите нас в интернетах!

Комментарии

Свежие вакансии