-
Notifications
You must be signed in to change notification settings - Fork 1.9k
Make CpuMath internal #1659
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Make CpuMath internal #1659
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@@ -30,6 +30,7 @@ | |||
<Compile Remove="AvxIntrinsics.cs" /> | |||
|
|||
<PackageReference Include="System.Memory" Version="$(SystemMemoryVersion)" /> | |||
<ProjectReference Include="..\..\src\Microsoft.ML.Core\Microsoft.ML.Core.csproj" /> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't object per se, but we've previously expended significant effort towards not doing this --that is, CPU-math we've seen is independent of anything in ML.NET itself, and we've gone through some effort to ensure that this is possible. (E.g., the whole "private contracts" thing.)
The thing is, I have absolutely no memory of why that is so, or why that was necessary. I think it even predates me working on this project, so this "desire" is maybe over five years old.
So I think it's fine, but it makes me nervous... I wonder if other veterans @Zruty0 , @yaeldekel , @Ivanidzo4ka have any recollection of what was up with this. I certainly have no memory of why that was ever viewed necessary.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yep, I don't recall anything about this not depending on Core. Maybe it had to do with the idea that we could 'export as code' and link with CpuMath, but not M.ML?
In reply to: 234737871 [](ancestors = 234737871)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is bad. It completely breaks CpuMath as a standalone package. We need to fix.
CpuMath ships in its own NuGet package that Microsoft.ML
depends on. This reference is backwards.
See
https://www.nuget.org/packages/Microsoft.ML.CpuMath/
https://www.nuget.org/packages/Microsoft.ML/
In reply to: 234822215 [](ancestors = 234822215,234737871)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've opened #1688 for this issue.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for doing this @wschin, and for removing the internal contracts now that we're relying on core!
This PR tries to make
CpuMath
internal, so that it's not going to be exposed to users. It's a part of #1519.