From 5ce8fc484c4febda772658f9701637e58d981753 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Tue, 10 Jul 2018 15:33:29 -0500 Subject: [PATCH 1/2] Allow CpuMath to reference C# Hardware Intrinsics APIs. Need to multi-target CpuMath for netstandard and netcoreapp3.0. Also, since we are going to move CpuMath into its own NuGet package, remove the dependency from CpuMath to the ML.Core project. Add a build parameter to enable building against .NET Core 3.0's Runtime Intrinsics APIs. Fix #534 --- Directory.Build.props | 2 + Microsoft.ML.sln | 113 ++++++++++++++++++ .../Microsoft.ML.CpuMath.nupkgproj | 14 +++ .../Microsoft.ML.CpuMath.symbols.nupkgproj | 5 + pkg/Microsoft.ML/Microsoft.ML.nupkgproj | 2 + pkg/_._ | 0 .../Microsoft.ML.CpuMath.csproj | 18 ++- src/Native/build.proj | 24 +++- 8 files changed, 168 insertions(+), 10 deletions(-) create mode 100644 pkg/Microsoft.ML.CpuMath/Microsoft.ML.CpuMath.nupkgproj create mode 100644 pkg/Microsoft.ML.CpuMath/Microsoft.ML.CpuMath.symbols.nupkgproj create mode 100644 pkg/_._ diff --git a/Directory.Build.props b/Directory.Build.props index a37097204f..73144201c7 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -14,6 +14,7 @@ https://api.nuget.org/v3/index.json; + https://dotnet.myget.org/F/dotnet-core/api/v3/index.json; @@ -21,6 +22,7 @@ $(MSBuildThisFileDirectory) $(RepoRoot)src/ + $(RepoRoot)pkg/ $(RepoRoot)bin/ diff --git a/Microsoft.ML.sln b/Microsoft.ML.sln index ab1f133fdb..affc8c50d1 100644 --- a/Microsoft.ML.sln +++ b/Microsoft.ML.sln @@ -82,116 +82,228 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.ML.LightGBM", "sr EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.ML.Ensemble", "src\Microsoft.ML.Ensemble\Microsoft.ML.Ensemble.csproj", "{DCF46B79-1FDB-4DBA-A263-D3D64E3AAA27}" EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Microsoft.ML.CpuMath", "Microsoft.ML.CpuMath", "{BF66A305-DF10-47E4-8D81-42049B149D2B}" + ProjectSection(SolutionItems) = preProject + pkg\Microsoft.ML.CpuMath\Microsoft.ML.CpuMath.nupkgproj = pkg\Microsoft.ML.CpuMath\Microsoft.ML.CpuMath.nupkgproj + pkg\Microsoft.ML.CpuMath\Microsoft.ML.CpuMath.symbols.nupkgproj = pkg\Microsoft.ML.CpuMath\Microsoft.ML.CpuMath.symbols.nupkgproj + EndProjectSection +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU + Debug-Intrinsics|Any CPU = Debug-Intrinsics|Any CPU Release|Any CPU = Release|Any CPU + Release-Intrinsics|Any CPU = Release-Intrinsics|Any CPU EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution {A6CA6CC6-5D7C-4D7F-A0F5-35E14B383B0A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {A6CA6CC6-5D7C-4D7F-A0F5-35E14B383B0A}.Debug|Any CPU.Build.0 = Debug|Any CPU + {A6CA6CC6-5D7C-4D7F-A0F5-35E14B383B0A}.Debug-Intrinsics|Any CPU.ActiveCfg = Debug|Any CPU + {A6CA6CC6-5D7C-4D7F-A0F5-35E14B383B0A}.Debug-Intrinsics|Any CPU.Build.0 = Debug|Any CPU {A6CA6CC6-5D7C-4D7F-A0F5-35E14B383B0A}.Release|Any CPU.ActiveCfg = Release|Any CPU {A6CA6CC6-5D7C-4D7F-A0F5-35E14B383B0A}.Release|Any CPU.Build.0 = Release|Any CPU + {A6CA6CC6-5D7C-4D7F-A0F5-35E14B383B0A}.Release-Intrinsics|Any CPU.ActiveCfg = Release|Any CPU + {A6CA6CC6-5D7C-4D7F-A0F5-35E14B383B0A}.Release-Intrinsics|Any CPU.Build.0 = Release|Any CPU {EC743D1D-7691-43B7-B9B0-5F2F7018A8F6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {EC743D1D-7691-43B7-B9B0-5F2F7018A8F6}.Debug|Any CPU.Build.0 = Debug|Any CPU + {EC743D1D-7691-43B7-B9B0-5F2F7018A8F6}.Debug-Intrinsics|Any CPU.ActiveCfg = Debug|Any CPU + {EC743D1D-7691-43B7-B9B0-5F2F7018A8F6}.Debug-Intrinsics|Any CPU.Build.0 = Debug|Any CPU {EC743D1D-7691-43B7-B9B0-5F2F7018A8F6}.Release|Any CPU.ActiveCfg = Release|Any CPU {EC743D1D-7691-43B7-B9B0-5F2F7018A8F6}.Release|Any CPU.Build.0 = Release|Any CPU + {EC743D1D-7691-43B7-B9B0-5F2F7018A8F6}.Release-Intrinsics|Any CPU.ActiveCfg = Release|Any CPU + {EC743D1D-7691-43B7-B9B0-5F2F7018A8F6}.Release-Intrinsics|Any CPU.Build.0 = Release|Any CPU {46F2F967-C23F-4076-858D-33F7DA9BD2DA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {46F2F967-C23F-4076-858D-33F7DA9BD2DA}.Debug|Any CPU.Build.0 = Debug|Any CPU + {46F2F967-C23F-4076-858D-33F7DA9BD2DA}.Debug-Intrinsics|Any CPU.ActiveCfg = Debug-Intrinsics|Any CPU + {46F2F967-C23F-4076-858D-33F7DA9BD2DA}.Debug-Intrinsics|Any CPU.Build.0 = Debug-Intrinsics|Any CPU {46F2F967-C23F-4076-858D-33F7DA9BD2DA}.Release|Any CPU.ActiveCfg = Release|Any CPU {46F2F967-C23F-4076-858D-33F7DA9BD2DA}.Release|Any CPU.Build.0 = Release|Any CPU + {46F2F967-C23F-4076-858D-33F7DA9BD2DA}.Release-Intrinsics|Any CPU.ActiveCfg = Release-Intriniscs|Any CPU + {46F2F967-C23F-4076-858D-33F7DA9BD2DA}.Release-Intrinsics|Any CPU.Build.0 = Release-Intriniscs|Any CPU {2D7391C9-8254-4B8F-BF26-FADAF8F02F44}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {2D7391C9-8254-4B8F-BF26-FADAF8F02F44}.Debug|Any CPU.Build.0 = Debug|Any CPU + {2D7391C9-8254-4B8F-BF26-FADAF8F02F44}.Debug-Intrinsics|Any CPU.ActiveCfg = Debug|Any CPU + {2D7391C9-8254-4B8F-BF26-FADAF8F02F44}.Debug-Intrinsics|Any CPU.Build.0 = Debug|Any CPU {2D7391C9-8254-4B8F-BF26-FADAF8F02F44}.Release|Any CPU.ActiveCfg = Release|Any CPU {2D7391C9-8254-4B8F-BF26-FADAF8F02F44}.Release|Any CPU.Build.0 = Release|Any CPU + {2D7391C9-8254-4B8F-BF26-FADAF8F02F44}.Release-Intrinsics|Any CPU.ActiveCfg = Release|Any CPU + {2D7391C9-8254-4B8F-BF26-FADAF8F02F44}.Release-Intrinsics|Any CPU.Build.0 = Release|Any CPU {E278EC99-E6EE-49FE-92E6-0A309A478D98}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {E278EC99-E6EE-49FE-92E6-0A309A478D98}.Debug|Any CPU.Build.0 = Debug|Any CPU + {E278EC99-E6EE-49FE-92E6-0A309A478D98}.Debug-Intrinsics|Any CPU.ActiveCfg = Debug|Any CPU + {E278EC99-E6EE-49FE-92E6-0A309A478D98}.Debug-Intrinsics|Any CPU.Build.0 = Debug|Any CPU {E278EC99-E6EE-49FE-92E6-0A309A478D98}.Release|Any CPU.ActiveCfg = Release|Any CPU {E278EC99-E6EE-49FE-92E6-0A309A478D98}.Release|Any CPU.Build.0 = Release|Any CPU + {E278EC99-E6EE-49FE-92E6-0A309A478D98}.Release-Intrinsics|Any CPU.ActiveCfg = Release|Any CPU + {E278EC99-E6EE-49FE-92E6-0A309A478D98}.Release-Intrinsics|Any CPU.Build.0 = Release|Any CPU {AD92D96B-0E96-4F22-8DCE-892E13B1F282}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {AD92D96B-0E96-4F22-8DCE-892E13B1F282}.Debug|Any CPU.Build.0 = Debug|Any CPU + {AD92D96B-0E96-4F22-8DCE-892E13B1F282}.Debug-Intrinsics|Any CPU.ActiveCfg = Debug|Any CPU + {AD92D96B-0E96-4F22-8DCE-892E13B1F282}.Debug-Intrinsics|Any CPU.Build.0 = Debug|Any CPU {AD92D96B-0E96-4F22-8DCE-892E13B1F282}.Release|Any CPU.ActiveCfg = Release|Any CPU {AD92D96B-0E96-4F22-8DCE-892E13B1F282}.Release|Any CPU.Build.0 = Release|Any CPU + {AD92D96B-0E96-4F22-8DCE-892E13B1F282}.Release-Intrinsics|Any CPU.ActiveCfg = Release|Any CPU + {AD92D96B-0E96-4F22-8DCE-892E13B1F282}.Release-Intrinsics|Any CPU.Build.0 = Release|Any CPU {65D0603E-B96C-4DFC-BDD1-705891B88C18}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {65D0603E-B96C-4DFC-BDD1-705891B88C18}.Debug|Any CPU.Build.0 = Debug|Any CPU + {65D0603E-B96C-4DFC-BDD1-705891B88C18}.Debug-Intrinsics|Any CPU.ActiveCfg = Debug|Any CPU + {65D0603E-B96C-4DFC-BDD1-705891B88C18}.Debug-Intrinsics|Any CPU.Build.0 = Debug|Any CPU {65D0603E-B96C-4DFC-BDD1-705891B88C18}.Release|Any CPU.ActiveCfg = Release|Any CPU {65D0603E-B96C-4DFC-BDD1-705891B88C18}.Release|Any CPU.Build.0 = Release|Any CPU + {65D0603E-B96C-4DFC-BDD1-705891B88C18}.Release-Intrinsics|Any CPU.ActiveCfg = Release|Any CPU + {65D0603E-B96C-4DFC-BDD1-705891B88C18}.Release-Intrinsics|Any CPU.Build.0 = Release|Any CPU {707BB22C-7E5F-497A-8C2F-74578F675705}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {707BB22C-7E5F-497A-8C2F-74578F675705}.Debug|Any CPU.Build.0 = Debug|Any CPU + {707BB22C-7E5F-497A-8C2F-74578F675705}.Debug-Intrinsics|Any CPU.ActiveCfg = Debug|Any CPU + {707BB22C-7E5F-497A-8C2F-74578F675705}.Debug-Intrinsics|Any CPU.Build.0 = Debug|Any CPU {707BB22C-7E5F-497A-8C2F-74578F675705}.Release|Any CPU.ActiveCfg = Release|Any CPU {707BB22C-7E5F-497A-8C2F-74578F675705}.Release|Any CPU.Build.0 = Release|Any CPU + {707BB22C-7E5F-497A-8C2F-74578F675705}.Release-Intrinsics|Any CPU.ActiveCfg = Release|Any CPU + {707BB22C-7E5F-497A-8C2F-74578F675705}.Release-Intrinsics|Any CPU.Build.0 = Release|Any CPU {2911A286-ECA4-4730-97A9-DA1FEE2DED97}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {2911A286-ECA4-4730-97A9-DA1FEE2DED97}.Debug|Any CPU.Build.0 = Debug|Any CPU + {2911A286-ECA4-4730-97A9-DA1FEE2DED97}.Debug-Intrinsics|Any CPU.ActiveCfg = Debug|Any CPU + {2911A286-ECA4-4730-97A9-DA1FEE2DED97}.Debug-Intrinsics|Any CPU.Build.0 = Debug|Any CPU {2911A286-ECA4-4730-97A9-DA1FEE2DED97}.Release|Any CPU.ActiveCfg = Release|Any CPU {2911A286-ECA4-4730-97A9-DA1FEE2DED97}.Release|Any CPU.Build.0 = Release|Any CPU + {2911A286-ECA4-4730-97A9-DA1FEE2DED97}.Release-Intrinsics|Any CPU.ActiveCfg = Release|Any CPU + {2911A286-ECA4-4730-97A9-DA1FEE2DED97}.Release-Intrinsics|Any CPU.Build.0 = Release|Any CPU {7288C084-11C0-43BE-AC7F-45DCFEAEEBF6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {7288C084-11C0-43BE-AC7F-45DCFEAEEBF6}.Debug|Any CPU.Build.0 = Debug|Any CPU + {7288C084-11C0-43BE-AC7F-45DCFEAEEBF6}.Debug-Intrinsics|Any CPU.ActiveCfg = Debug|Any CPU + {7288C084-11C0-43BE-AC7F-45DCFEAEEBF6}.Debug-Intrinsics|Any CPU.Build.0 = Debug|Any CPU {7288C084-11C0-43BE-AC7F-45DCFEAEEBF6}.Release|Any CPU.ActiveCfg = Release|Any CPU {7288C084-11C0-43BE-AC7F-45DCFEAEEBF6}.Release|Any CPU.Build.0 = Release|Any CPU + {7288C084-11C0-43BE-AC7F-45DCFEAEEBF6}.Release-Intrinsics|Any CPU.ActiveCfg = Release|Any CPU + {7288C084-11C0-43BE-AC7F-45DCFEAEEBF6}.Release-Intrinsics|Any CPU.Build.0 = Release|Any CPU {F1CAE3AB-4F86-4BC0-BBA8-C4A58E7E8A4A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {F1CAE3AB-4F86-4BC0-BBA8-C4A58E7E8A4A}.Debug|Any CPU.Build.0 = Debug|Any CPU + {F1CAE3AB-4F86-4BC0-BBA8-C4A58E7E8A4A}.Debug-Intrinsics|Any CPU.ActiveCfg = Debug|Any CPU + {F1CAE3AB-4F86-4BC0-BBA8-C4A58E7E8A4A}.Debug-Intrinsics|Any CPU.Build.0 = Debug|Any CPU {F1CAE3AB-4F86-4BC0-BBA8-C4A58E7E8A4A}.Release|Any CPU.ActiveCfg = Release|Any CPU {F1CAE3AB-4F86-4BC0-BBA8-C4A58E7E8A4A}.Release|Any CPU.Build.0 = Release|Any CPU + {F1CAE3AB-4F86-4BC0-BBA8-C4A58E7E8A4A}.Release-Intrinsics|Any CPU.ActiveCfg = Release|Any CPU + {F1CAE3AB-4F86-4BC0-BBA8-C4A58E7E8A4A}.Release-Intrinsics|Any CPU.Build.0 = Release|Any CPU {58E06735-1129-4DD5-86E0-6BBFF049AAD9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {58E06735-1129-4DD5-86E0-6BBFF049AAD9}.Debug|Any CPU.Build.0 = Debug|Any CPU + {58E06735-1129-4DD5-86E0-6BBFF049AAD9}.Debug-Intrinsics|Any CPU.ActiveCfg = Debug|Any CPU + {58E06735-1129-4DD5-86E0-6BBFF049AAD9}.Debug-Intrinsics|Any CPU.Build.0 = Debug|Any CPU {58E06735-1129-4DD5-86E0-6BBFF049AAD9}.Release|Any CPU.ActiveCfg = Release|Any CPU {58E06735-1129-4DD5-86E0-6BBFF049AAD9}.Release|Any CPU.Build.0 = Release|Any CPU + {58E06735-1129-4DD5-86E0-6BBFF049AAD9}.Release-Intrinsics|Any CPU.ActiveCfg = Release|Any CPU + {58E06735-1129-4DD5-86E0-6BBFF049AAD9}.Release-Intrinsics|Any CPU.Build.0 = Release|Any CPU {2F636A2C-062C-49F4-85F3-60DCADAB6A43}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {2F636A2C-062C-49F4-85F3-60DCADAB6A43}.Debug|Any CPU.Build.0 = Debug|Any CPU + {2F636A2C-062C-49F4-85F3-60DCADAB6A43}.Debug-Intrinsics|Any CPU.ActiveCfg = Debug|Any CPU + {2F636A2C-062C-49F4-85F3-60DCADAB6A43}.Debug-Intrinsics|Any CPU.Build.0 = Debug|Any CPU {2F636A2C-062C-49F4-85F3-60DCADAB6A43}.Release|Any CPU.ActiveCfg = Release|Any CPU {2F636A2C-062C-49F4-85F3-60DCADAB6A43}.Release|Any CPU.Build.0 = Release|Any CPU + {2F636A2C-062C-49F4-85F3-60DCADAB6A43}.Release-Intrinsics|Any CPU.ActiveCfg = Release|Any CPU + {2F636A2C-062C-49F4-85F3-60DCADAB6A43}.Release-Intrinsics|Any CPU.Build.0 = Release|Any CPU {64BC22D3-1E76-41EF-94D8-C79E471FF2DD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {64BC22D3-1E76-41EF-94D8-C79E471FF2DD}.Debug|Any CPU.Build.0 = Debug|Any CPU + {64BC22D3-1E76-41EF-94D8-C79E471FF2DD}.Debug-Intrinsics|Any CPU.ActiveCfg = Debug|Any CPU + {64BC22D3-1E76-41EF-94D8-C79E471FF2DD}.Debug-Intrinsics|Any CPU.Build.0 = Debug|Any CPU {64BC22D3-1E76-41EF-94D8-C79E471FF2DD}.Release|Any CPU.ActiveCfg = Release|Any CPU {64BC22D3-1E76-41EF-94D8-C79E471FF2DD}.Release|Any CPU.Build.0 = Release|Any CPU + {64BC22D3-1E76-41EF-94D8-C79E471FF2DD}.Release-Intrinsics|Any CPU.ActiveCfg = Release|Any CPU + {64BC22D3-1E76-41EF-94D8-C79E471FF2DD}.Release-Intrinsics|Any CPU.Build.0 = Release|Any CPU {B5989C06-4FFA-46C1-9D85-9366B34AB0A2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {B5989C06-4FFA-46C1-9D85-9366B34AB0A2}.Debug|Any CPU.Build.0 = Debug|Any CPU + {B5989C06-4FFA-46C1-9D85-9366B34AB0A2}.Debug-Intrinsics|Any CPU.ActiveCfg = Debug|Any CPU + {B5989C06-4FFA-46C1-9D85-9366B34AB0A2}.Debug-Intrinsics|Any CPU.Build.0 = Debug|Any CPU {B5989C06-4FFA-46C1-9D85-9366B34AB0A2}.Release|Any CPU.ActiveCfg = Release|Any CPU {B5989C06-4FFA-46C1-9D85-9366B34AB0A2}.Release|Any CPU.Build.0 = Release|Any CPU + {B5989C06-4FFA-46C1-9D85-9366B34AB0A2}.Release-Intrinsics|Any CPU.ActiveCfg = Release|Any CPU + {B5989C06-4FFA-46C1-9D85-9366B34AB0A2}.Release-Intrinsics|Any CPU.Build.0 = Release|Any CPU {6B047E09-39C9-4583-96F3-685D84CA4117}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {6B047E09-39C9-4583-96F3-685D84CA4117}.Debug|Any CPU.Build.0 = Debug|Any CPU + {6B047E09-39C9-4583-96F3-685D84CA4117}.Debug-Intrinsics|Any CPU.ActiveCfg = Debug|Any CPU + {6B047E09-39C9-4583-96F3-685D84CA4117}.Debug-Intrinsics|Any CPU.Build.0 = Debug|Any CPU {6B047E09-39C9-4583-96F3-685D84CA4117}.Release|Any CPU.ActiveCfg = Release|Any CPU {6B047E09-39C9-4583-96F3-685D84CA4117}.Release|Any CPU.Build.0 = Release|Any CPU + {6B047E09-39C9-4583-96F3-685D84CA4117}.Release-Intrinsics|Any CPU.ActiveCfg = Release|Any CPU + {6B047E09-39C9-4583-96F3-685D84CA4117}.Release-Intrinsics|Any CPU.Build.0 = Release|Any CPU {3769FCC3-9AFF-4C37-97E9-6854324681DF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {3769FCC3-9AFF-4C37-97E9-6854324681DF}.Debug|Any CPU.Build.0 = Debug|Any CPU + {3769FCC3-9AFF-4C37-97E9-6854324681DF}.Debug-Intrinsics|Any CPU.ActiveCfg = Debug|Any CPU + {3769FCC3-9AFF-4C37-97E9-6854324681DF}.Debug-Intrinsics|Any CPU.Build.0 = Debug|Any CPU {3769FCC3-9AFF-4C37-97E9-6854324681DF}.Release|Any CPU.ActiveCfg = Release|Any CPU {3769FCC3-9AFF-4C37-97E9-6854324681DF}.Release|Any CPU.Build.0 = Release|Any CPU + {3769FCC3-9AFF-4C37-97E9-6854324681DF}.Release-Intrinsics|Any CPU.ActiveCfg = Release|Any CPU + {3769FCC3-9AFF-4C37-97E9-6854324681DF}.Release-Intrinsics|Any CPU.Build.0 = Release|Any CPU {B7B593C5-FB8C-4ADA-A638-5B53B47D087E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {B7B593C5-FB8C-4ADA-A638-5B53B47D087E}.Debug|Any CPU.Build.0 = Debug|Any CPU + {B7B593C5-FB8C-4ADA-A638-5B53B47D087E}.Debug-Intrinsics|Any CPU.ActiveCfg = Debug|Any CPU + {B7B593C5-FB8C-4ADA-A638-5B53B47D087E}.Debug-Intrinsics|Any CPU.Build.0 = Debug|Any CPU {B7B593C5-FB8C-4ADA-A638-5B53B47D087E}.Release|Any CPU.ActiveCfg = Release|Any CPU {B7B593C5-FB8C-4ADA-A638-5B53B47D087E}.Release|Any CPU.Build.0 = Release|Any CPU + {B7B593C5-FB8C-4ADA-A638-5B53B47D087E}.Release-Intrinsics|Any CPU.ActiveCfg = Release|Any CPU + {B7B593C5-FB8C-4ADA-A638-5B53B47D087E}.Release-Intrinsics|Any CPU.Build.0 = Release|Any CPU {16BB1454-2108-40E5-B3A6-594654005303}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {16BB1454-2108-40E5-B3A6-594654005303}.Debug|Any CPU.Build.0 = Debug|Any CPU + {16BB1454-2108-40E5-B3A6-594654005303}.Debug-Intrinsics|Any CPU.ActiveCfg = Debug|Any CPU + {16BB1454-2108-40E5-B3A6-594654005303}.Debug-Intrinsics|Any CPU.Build.0 = Debug|Any CPU {16BB1454-2108-40E5-B3A6-594654005303}.Release|Any CPU.ActiveCfg = Release|Any CPU {16BB1454-2108-40E5-B3A6-594654005303}.Release|Any CPU.Build.0 = Release|Any CPU + {16BB1454-2108-40E5-B3A6-594654005303}.Release-Intrinsics|Any CPU.ActiveCfg = Release|Any CPU + {16BB1454-2108-40E5-B3A6-594654005303}.Release-Intrinsics|Any CPU.Build.0 = Release|Any CPU {55C8122D-79EA-48AB-85D0-EB551FC1C427}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {55C8122D-79EA-48AB-85D0-EB551FC1C427}.Debug|Any CPU.Build.0 = Debug|Any CPU + {55C8122D-79EA-48AB-85D0-EB551FC1C427}.Debug-Intrinsics|Any CPU.ActiveCfg = Debug|Any CPU + {55C8122D-79EA-48AB-85D0-EB551FC1C427}.Debug-Intrinsics|Any CPU.Build.0 = Debug|Any CPU {55C8122D-79EA-48AB-85D0-EB551FC1C427}.Release|Any CPU.ActiveCfg = Release|Any CPU {55C8122D-79EA-48AB-85D0-EB551FC1C427}.Release|Any CPU.Build.0 = Release|Any CPU + {55C8122D-79EA-48AB-85D0-EB551FC1C427}.Release-Intrinsics|Any CPU.ActiveCfg = Release|Any CPU + {55C8122D-79EA-48AB-85D0-EB551FC1C427}.Release-Intrinsics|Any CPU.Build.0 = Release|Any CPU {7A9DB75F-2CA5-4184-9EF5-1F17EB39483F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {7A9DB75F-2CA5-4184-9EF5-1F17EB39483F}.Debug|Any CPU.Build.0 = Debug|Any CPU + {7A9DB75F-2CA5-4184-9EF5-1F17EB39483F}.Debug-Intrinsics|Any CPU.ActiveCfg = Debug|Any CPU + {7A9DB75F-2CA5-4184-9EF5-1F17EB39483F}.Debug-Intrinsics|Any CPU.Build.0 = Debug|Any CPU {7A9DB75F-2CA5-4184-9EF5-1F17EB39483F}.Release|Any CPU.ActiveCfg = Release|Any CPU {7A9DB75F-2CA5-4184-9EF5-1F17EB39483F}.Release|Any CPU.Build.0 = Release|Any CPU + {7A9DB75F-2CA5-4184-9EF5-1F17EB39483F}.Release-Intrinsics|Any CPU.ActiveCfg = Release|Any CPU + {7A9DB75F-2CA5-4184-9EF5-1F17EB39483F}.Release-Intrinsics|Any CPU.Build.0 = Release|Any CPU {64F40A0D-D4C2-4AA7-8470-E9CC437827E4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {64F40A0D-D4C2-4AA7-8470-E9CC437827E4}.Debug|Any CPU.Build.0 = Debug|Any CPU + {64F40A0D-D4C2-4AA7-8470-E9CC437827E4}.Debug-Intrinsics|Any CPU.ActiveCfg = Debug|Any CPU + {64F40A0D-D4C2-4AA7-8470-E9CC437827E4}.Debug-Intrinsics|Any CPU.Build.0 = Debug|Any CPU {64F40A0D-D4C2-4AA7-8470-E9CC437827E4}.Release|Any CPU.ActiveCfg = Release|Any CPU {64F40A0D-D4C2-4AA7-8470-E9CC437827E4}.Release|Any CPU.Build.0 = Release|Any CPU + {64F40A0D-D4C2-4AA7-8470-E9CC437827E4}.Release-Intrinsics|Any CPU.ActiveCfg = Release|Any CPU + {64F40A0D-D4C2-4AA7-8470-E9CC437827E4}.Release-Intrinsics|Any CPU.Build.0 = Release|Any CPU {362A98CF-FBF7-4EBB-A11B-990BBF845B15}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {362A98CF-FBF7-4EBB-A11B-990BBF845B15}.Debug|Any CPU.Build.0 = Debug|Any CPU + {362A98CF-FBF7-4EBB-A11B-990BBF845B15}.Debug-Intrinsics|Any CPU.ActiveCfg = Debug|Any CPU + {362A98CF-FBF7-4EBB-A11B-990BBF845B15}.Debug-Intrinsics|Any CPU.Build.0 = Debug|Any CPU {362A98CF-FBF7-4EBB-A11B-990BBF845B15}.Release|Any CPU.ActiveCfg = Release|Any CPU {362A98CF-FBF7-4EBB-A11B-990BBF845B15}.Release|Any CPU.Build.0 = Release|Any CPU + {362A98CF-FBF7-4EBB-A11B-990BBF845B15}.Release-Intrinsics|Any CPU.ActiveCfg = Release|Any CPU + {362A98CF-FBF7-4EBB-A11B-990BBF845B15}.Release-Intrinsics|Any CPU.Build.0 = Release|Any CPU {3DEB504D-7A07-48CE-91A2-8047461CB3D4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {3DEB504D-7A07-48CE-91A2-8047461CB3D4}.Debug|Any CPU.Build.0 = Debug|Any CPU + {3DEB504D-7A07-48CE-91A2-8047461CB3D4}.Debug-Intrinsics|Any CPU.ActiveCfg = Debug|Any CPU + {3DEB504D-7A07-48CE-91A2-8047461CB3D4}.Debug-Intrinsics|Any CPU.Build.0 = Debug|Any CPU {3DEB504D-7A07-48CE-91A2-8047461CB3D4}.Release|Any CPU.ActiveCfg = Release|Any CPU {3DEB504D-7A07-48CE-91A2-8047461CB3D4}.Release|Any CPU.Build.0 = Release|Any CPU + {3DEB504D-7A07-48CE-91A2-8047461CB3D4}.Release-Intrinsics|Any CPU.ActiveCfg = Release|Any CPU + {3DEB504D-7A07-48CE-91A2-8047461CB3D4}.Release-Intrinsics|Any CPU.Build.0 = Release|Any CPU {001F3B4E-FBE4-4001-AFD2-A6A989CD1C25}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {001F3B4E-FBE4-4001-AFD2-A6A989CD1C25}.Debug|Any CPU.Build.0 = Debug|Any CPU + {001F3B4E-FBE4-4001-AFD2-A6A989CD1C25}.Debug-Intrinsics|Any CPU.ActiveCfg = Debug|Any CPU + {001F3B4E-FBE4-4001-AFD2-A6A989CD1C25}.Debug-Intrinsics|Any CPU.Build.0 = Debug|Any CPU {001F3B4E-FBE4-4001-AFD2-A6A989CD1C25}.Release|Any CPU.ActiveCfg = Release|Any CPU {001F3B4E-FBE4-4001-AFD2-A6A989CD1C25}.Release|Any CPU.Build.0 = Release|Any CPU + {001F3B4E-FBE4-4001-AFD2-A6A989CD1C25}.Release-Intrinsics|Any CPU.ActiveCfg = Release|Any CPU + {001F3B4E-FBE4-4001-AFD2-A6A989CD1C25}.Release-Intrinsics|Any CPU.Build.0 = Release|Any CPU {DCF46B79-1FDB-4DBA-A263-D3D64E3AAA27}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {DCF46B79-1FDB-4DBA-A263-D3D64E3AAA27}.Debug|Any CPU.Build.0 = Debug|Any CPU + {DCF46B79-1FDB-4DBA-A263-D3D64E3AAA27}.Debug-Intrinsics|Any CPU.ActiveCfg = Debug|Any CPU + {DCF46B79-1FDB-4DBA-A263-D3D64E3AAA27}.Debug-Intrinsics|Any CPU.Build.0 = Debug|Any CPU {DCF46B79-1FDB-4DBA-A263-D3D64E3AAA27}.Release|Any CPU.ActiveCfg = Release|Any CPU {DCF46B79-1FDB-4DBA-A263-D3D64E3AAA27}.Release|Any CPU.Build.0 = Release|Any CPU + {DCF46B79-1FDB-4DBA-A263-D3D64E3AAA27}.Release-Intrinsics|Any CPU.ActiveCfg = Release|Any CPU + {DCF46B79-1FDB-4DBA-A263-D3D64E3AAA27}.Release-Intrinsics|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -227,6 +339,7 @@ Global {3DEB504D-7A07-48CE-91A2-8047461CB3D4} = {AED9C836-31E3-4F3F-8ABC-929555D3F3C4} {001F3B4E-FBE4-4001-AFD2-A6A989CD1C25} = {09EADF06-BE25-4228-AB53-95AE3E15B530} {DCF46B79-1FDB-4DBA-A263-D3D64E3AAA27} = {09EADF06-BE25-4228-AB53-95AE3E15B530} + {BF66A305-DF10-47E4-8D81-42049B149D2B} = {D3D38B03-B557-484D-8348-8BADEE4DF592} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {41165AF1-35BB-4832-A189-73060F82B01D} diff --git a/pkg/Microsoft.ML.CpuMath/Microsoft.ML.CpuMath.nupkgproj b/pkg/Microsoft.ML.CpuMath/Microsoft.ML.CpuMath.nupkgproj new file mode 100644 index 0000000000..918729d99d --- /dev/null +++ b/pkg/Microsoft.ML.CpuMath/Microsoft.ML.CpuMath.nupkgproj @@ -0,0 +1,14 @@ + + + + netstandard2.0 + netstandard2.0;netcoreapp3.0 + Microsoft.ML.CpuMath contains optimized math routines for ML.NET. + + + + + + + + diff --git a/pkg/Microsoft.ML.CpuMath/Microsoft.ML.CpuMath.symbols.nupkgproj b/pkg/Microsoft.ML.CpuMath/Microsoft.ML.CpuMath.symbols.nupkgproj new file mode 100644 index 0000000000..360980c2c3 --- /dev/null +++ b/pkg/Microsoft.ML.CpuMath/Microsoft.ML.CpuMath.symbols.nupkgproj @@ -0,0 +1,5 @@ + + + + + diff --git a/pkg/Microsoft.ML/Microsoft.ML.nupkgproj b/pkg/Microsoft.ML/Microsoft.ML.nupkgproj index 2886b39ad3..fc409ae21f 100644 --- a/pkg/Microsoft.ML/Microsoft.ML.nupkgproj +++ b/pkg/Microsoft.ML/Microsoft.ML.nupkgproj @@ -6,6 +6,8 @@ + + diff --git a/pkg/_._ b/pkg/_._ new file mode 100644 index 0000000000..e69de29bb2 diff --git a/src/Microsoft.ML.CpuMath/Microsoft.ML.CpuMath.csproj b/src/Microsoft.ML.CpuMath/Microsoft.ML.CpuMath.csproj index 62ba4f3a6a..ca0c566d4a 100644 --- a/src/Microsoft.ML.CpuMath/Microsoft.ML.CpuMath.csproj +++ b/src/Microsoft.ML.CpuMath/Microsoft.ML.CpuMath.csproj @@ -1,14 +1,22 @@ - + - netstandard2.0 - Microsoft.ML + Debug;Release;Debug-Intrinsics;Release-Intriniscs + $(Configuration.EndsWith('-Intrinsics')) + + netstandard2.0 + netstandard2.0;netcoreapp3.0 + Microsoft.ML.CpuMath true - CORECLR + $(DefineConstants);CORECLR;PRIVATE_CONTRACTS - + + + + + diff --git a/src/Native/build.proj b/src/Native/build.proj index c7f4f2386e..14fa4a1da8 100644 --- a/src/Native/build.proj +++ b/src/Native/build.proj @@ -10,8 +10,12 @@ - + + + $(PkgDir)_._ + + true $(BaseIntermediateOutputPath)version.c @@ -68,19 +72,29 @@ $(PackageRid)-$(TargetArchitecture) - + + RelativePath="Microsoft.ML.CpuMath\runtimes\$(PackageRid)\native" /> + + + + + + + - - From 3f14978b7b564dcc7df950ec244028a106becdab Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Wed, 18 Jul 2018 21:15:52 -0500 Subject: [PATCH 2/2] Respond to PR feedback. --- Microsoft.ML.sln | 4 ++-- src/Microsoft.ML.CpuMath/Microsoft.ML.CpuMath.csproj | 2 +- src/Native/build.proj | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/Microsoft.ML.sln b/Microsoft.ML.sln index affc8c50d1..6ad93c3886 100644 --- a/Microsoft.ML.sln +++ b/Microsoft.ML.sln @@ -118,8 +118,8 @@ Global {46F2F967-C23F-4076-858D-33F7DA9BD2DA}.Debug-Intrinsics|Any CPU.Build.0 = Debug-Intrinsics|Any CPU {46F2F967-C23F-4076-858D-33F7DA9BD2DA}.Release|Any CPU.ActiveCfg = Release|Any CPU {46F2F967-C23F-4076-858D-33F7DA9BD2DA}.Release|Any CPU.Build.0 = Release|Any CPU - {46F2F967-C23F-4076-858D-33F7DA9BD2DA}.Release-Intrinsics|Any CPU.ActiveCfg = Release-Intriniscs|Any CPU - {46F2F967-C23F-4076-858D-33F7DA9BD2DA}.Release-Intrinsics|Any CPU.Build.0 = Release-Intriniscs|Any CPU + {46F2F967-C23F-4076-858D-33F7DA9BD2DA}.Release-Intrinsics|Any CPU.ActiveCfg = Release-Intrinsics|Any CPU + {46F2F967-C23F-4076-858D-33F7DA9BD2DA}.Release-Intrinsics|Any CPU.Build.0 = Release-Intrinsics|Any CPU {2D7391C9-8254-4B8F-BF26-FADAF8F02F44}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {2D7391C9-8254-4B8F-BF26-FADAF8F02F44}.Debug|Any CPU.Build.0 = Debug|Any CPU {2D7391C9-8254-4B8F-BF26-FADAF8F02F44}.Debug-Intrinsics|Any CPU.ActiveCfg = Debug|Any CPU diff --git a/src/Microsoft.ML.CpuMath/Microsoft.ML.CpuMath.csproj b/src/Microsoft.ML.CpuMath/Microsoft.ML.CpuMath.csproj index ca0c566d4a..bde7ae89f5 100644 --- a/src/Microsoft.ML.CpuMath/Microsoft.ML.CpuMath.csproj +++ b/src/Microsoft.ML.CpuMath/Microsoft.ML.CpuMath.csproj @@ -1,7 +1,7 @@  - Debug;Release;Debug-Intrinsics;Release-Intriniscs + Debug;Release;Debug-Intrinsics;Release-Intrinsics $(Configuration.EndsWith('-Intrinsics')) netstandard2.0 diff --git a/src/Native/build.proj b/src/Native/build.proj index 14fa4a1da8..41611a24ff 100644 --- a/src/Native/build.proj +++ b/src/Native/build.proj @@ -78,9 +78,9 @@ + RelativePath="Microsoft.ML.CpuMath\runtimes\$(PackageRid)\nativeassets\netstandard2.0" /> + RelativePath="Microsoft.ML.CpuMath\runtimes\$(PackageRid)\nativeassets\netcoreapp3.0" />