Решил попробовать сию разработку в действии. Скачал пару небольших дистрибутивов (либы и пакет SDK с примерами, ~70мб), установил. Все это интегрируется в Visual Studio 2005/2008, правда в одном месте пришлось пошаманить с настройками студии. Сама структура проектов поначалу выглядит громоздко, но после недлительного вкуривания доков и примеров все становится более-менее понятно:
1. заготовка данных - работает на CPU.
2. копирование данных в память GPU.
3. непосредственный расчет на GPU.
4. копирование результатов из памяти GPU в ram.
о главном, о скорости - перемножение матриц 512*512 на cpu заняло 3,685s, на видеокарте - 0,391s (release, x64). впрочем, насколько я могу судить, код для gpu можно еще сильнее распараллелить - т.е. расчет будет быстрее. watcher'ы в gpu-коде недоступны. операции копирования занимают порядка 0,04 и более секунд, так что перемещать лучше все данные за раз - чтобы минимизировать потери времени.