我不太明白为什么在C#/.NET(甚至Java)中矩阵乘法如此缓慢。请看这个基准测试(source):试图找到一个更新的基准测试。
这在游戏和XNA方面尤为关注,其中矩阵和向量性能对于物理引擎等关键。一段时间以前,Mono通过一些漂亮的向量和矩阵类添加了对SIMD指令的支持。它弥合了差距,使Mono比手写的C++更快,尽管没有C++加上SIMD快。(来源)
这在游戏和XNA方面尤为关注,其中矩阵和向量性能对于物理引擎等关键。一段时间以前,Mono通过一些漂亮的向量和矩阵类添加了对SIMD指令的支持。它弥合了差距,使Mono比手写的C++更快,尽管没有C++加上SIMD快。(来源)
这里发生了什么?
编辑:仔细看了一下,我误读了第二个图表。C# 程序看起来非常接近。难道第一个基准测试做错了什么吗? 对不起,我错过了第一个基准测试的版本号。我只是抓取它作为“C# 线性代数很慢”这一说法的便捷参考。我会尝试找另一个。