Я не претендую на то, чтобы быть экспертом в этом, но, надеюсь, это может указать вам полезное направление.
Возможно ли это? Да. Вы, наверное, уже знаете, что GPU хорош в таких вычислениях (отсюда и вопрос), и вы действительно можете управлять GPU с помощью XNA. Будет ли это соответствовать вашим потребностям - это другой вопрос.
Чтобы использовать графический процессор, вы, вероятно, захотите писать шейдеры с использованием HLSL. В контексте XNA есть приличное введение в HLSL на Reimers , через которое вы, возможно, захотите пройти. Примечательно, что это руководство фокусируется на том, чтобы заставить GPU выполнять графические вычисления, но то, что вы пишете в шейдерах, остается за вами. Если ваша векторная математика с плавающей точкой предназначена для рендеринга (и, следовательно, может оставаться в домене GPU), вам повезло, и вы можете остановиться здесь.
Скорее всего, рендеринг на экране - это не то, что вам нужно. Теперь у вас есть достаточная гибкость в HLSL, что касается вашей математики. Однако передача результатов в ЦП - это не то, как система была спроектирована. Это становится неясным для меня, но Шон Харгривз (разработчик XNA) заявляет на больше , чем один раз , что получение вывода из графического процессора (кроме визуализированного на экране) нетривиально и имеет последствия для производительности. Извлечение данных включает в себя вызов GetData, который вызовет остановку конвейера .
Так что это может быть сделано. Платформа XNA позволит вам писать шейдеры для 360 (которая поддерживает Shader Model 3.0 плюс несколько расширений), и возможно , чтобы получить эти результаты, хотя это может быть недостаточно эффективно для ваших нужд.