Monday, 15 August 2011

c# - The speed of .NET in numerical computing -


In my experience, net net code is 2 to 3 times slow. (I have applied L-BFGS for multivirate optimization.)

I have detected ads on stackoverflow flow

the speed is really amazing, the speed is close to the original code How can they do this? They said that:

Q. NMath "Pure" .NET?

A. Answer depends on your definition of "pure.NET" to some degree. NMTH is written in C #, as well as a small managed C ++ layer as well. For better performance of basic linear algebra operations, NMAT relied on native Intel Myth Kernel Library (included with NMAT). But there is no COM component, no DLL - just .NET assemblies. Additionally, all memory allocated in the Managed C ++ layer and allocated by the managed stack used by the original code has been allocated.

Can someone explain me more?

C ++ / CLI is correct. To complete the picture, just two additional interesting points:

  • NET Memory Management (Garbage Collector) Obviously, there is no problem here because NMath is still dependent on it

  • Performance benefits are actually provided by Intel MKL, which Extremely optimized for many CPUs. From my point of view, this important point is to use direct-forwarding, CIT / C ++ code does not require C # /. Provide better performance on the net, it can sometimes get worse. However C ++ / CLI allows you to take advantage of all the "dirty" optimization options.


No comments:

Post a Comment