根据我的经验,.NET比本机代码慢2到3倍.(我实施了L-BFGS进行多变量优化).
我已经在stackoverflow上跟踪广告到 http://www.centerspace.net/products/
速度真的很惊人,速度接近原生代码.他们怎么能这样做?他们说:
问:NMath是"纯粹的".NET吗?
答:答案在某种程度上取决于您对"纯.NET"的定义.NMath是用C#编写的,加上一个小的Managed C++层.但是,为了更好地执行基本线性代数运算,NMath确实依赖于本机Intel Math Kernel Library(包含在NMath中).但是没有COM组件,没有DLL - 只是.NET程序集.此外,在托管C++层中分配并由本机代码使用的所有内存都从托管堆中分配.
有人可以向我解释一下吗?