SlimDX を使用して C# で記述された私の 3D グラフィックス ソフトウェアは、CPU で多くのベクトル演算を実行します。(この特定の状況では、作業を GPU にオフロードすることはできません)。
ベクトル演算を高速化するにはどうすればよいですか? これまでのところ、次のアプローチを見つけました。
- SIMD をサポートしているため、Microsoft .NET ではなく Mono で実行します。このプロジェクトのオプションではありません。
- SlimGenは、実行時に高性能の数学コードを挿入するプロジェクトです。残念ながら、プロジェクトはまだ使用可能な状態ではありません。
- SSE 命令を利用するコンパイラを使用して、C++ で DLL を記述します。C# からその DLL と相互運用します。
.NET でより高速なベクトル演算を実現する他のオプションはありますか?