0

I'm trying to test an ASP API controller which in turn calls out to a DLL which uses MathNet.Numerics.LinearAlgebra. I first call

MathNet.Numerics.Control.UseManaged();

However this call fails with the error

Exception thrown: 'System.NotSupportedException' in MathNet.Numerics.dll

Additional information: Cuda Native Provider not found.

vsscreenshot

Why would Cuda be required when I'm explicitly telling MathNet to use managed not native?

4

1 回答 1

1

它实际上并没有失败,异常是在内部处理的。您可以继续调试。

异常实际上不是在UseManaged调用中引发,而是在类的静态构造内部引发Control,第一次访问它并初始化默认提供程序(包括探测是否有任何已知的本地提供程序可用)。当然,使用托管提供程序时不需要 Cuda。

在启用“所有异常中断”进行调试时,这确实是一个小的可用性问题。我们可以通过一个小的重构来避免抛出异常。也许我们应该打开一个 GitHub 问题来跟踪这个?

于 2016-02-08T05:48:22.627 回答