Skip to content

CpuMath DllNotFoundException When Using ML.NET With Windows Forms #5906

Open
@SLane35

Description

@SLane35

System Information (please complete the following information):

  • Windows 10
  • ML.NET Version: 1.6.0
  • .NET Version: .NET Framework 4.6.1 (some projects target 4.5.2)

Describe the bug
I have a solution with 14 projects, including 1 that includes ML.NET. It targets x64 and I use PackageReference. When I run the app in the debugger, it runs perfectly. When I publish it though, I get the following error:

Application: CentralTestML.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.DllNotFoundException
at Microsoft.ML.Internal.CpuMath.Thunk.DotU(Single*, Single*, Int32)
at Microsoft.ML.Numeric.VectorUtils.DotProductWithOffset(Microsoft.ML.Data.VBuffer1<Single> ByRef, Int32, Microsoft.ML.Data.VBuffer1 ByRef)
at Microsoft.ML.Trainers.LbfgsPoissonRegressionTrainer.AccumulateOneGradient(Microsoft.ML.Data.VBuffer1<Single> ByRef, Single, Single, Microsoft.ML.Data.VBuffer1 ByRef, Microsoft.ML.Data.VBuffer1<Single> ByRef, Single[] ByRef) at Microsoft.ML.Trainers.LbfgsTrainerBase3[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]].DifferentiableFunctionComputeChunk(Int32, Microsoft.ML.Data.VBuffer1<Single> ByRef, Microsoft.ML.Data.VBuffer1 ByRef, Microsoft.ML.Runtime.IProgressChannel)
at Microsoft.ML.Trainers.LbfgsTrainerBase3+<>c__DisplayClass56_0[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]].<DifferentiableFunctionMultithreaded>b__0(Int32) at System.Threading.Tasks.Parallel+<>c__DisplayClass17_01[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]].b__1()
at System.Threading.Tasks.Task.InnerInvokeWithArg(System.Threading.Tasks.Task)
at System.Threading.Tasks.Task+<>c__DisplayClass176_0.b__0(System.Object)

Exception Info: System.AggregateException
at Microsoft.VisualBasic.CompilerServices.Symbols+Container.InvokeMethod(Method, System.Object[], Boolean[], System.Reflection.BindingFlags)
at Microsoft.VisualBasic.CompilerServices.NewLateBinding.ObjectLateGet(System.Object, System.Type, System.String, System.Object[], System.String[], System.Type[], Boolean[])
at Microsoft.VisualBasic.CompilerServices.NewLateBinding.LateGet(System.Object, System.Type, System.String, System.Object[], System.String[], System.Type[], Boolean[])
at LaborPrediction.LaborModel.PrepareAndTrainModel()
at Central.ProcessCode.Main()

Please note that this is a ClickOnce app that is published to a server running Windows Server 2012 R2 Standard.

To Reproduce
Steps to reproduce the behavior:

  1. Publish app
  2. Click the icon to update to the newest version
  3. The new app installs, but never runs due to the above error.

Expected behavior
I expected the app to run properly.

Thank you!

Metadata

Metadata

Assignees

No one assigned

    Labels

    BuildBuild related issue

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions