Skip to content

MKLImports PDB not included with packages #5805

Open

Description

@ericstj

All binaries we release should have corresponding symbols.

We seem to have a manual process for building MKLImports due to the Intel MKL SDK dependency: https://github.com/dotnet/machinelearning/blob/04dda55ab0902982b16309c8e151f13a53e9366d/docs/building/MlNetMklDeps/README.md#windows

It would seem that the packages produced manually are missing the PDBs:
https://dev.azure.com/dnceng/public/_packaging?_a=package&feed=machinelearning-assets&package=MlNetMklDeps&protocolType=NuGet&version=0.0.0.9&view=overview

So that when we redistribute this binary it is missing debug information.

At a minimum we should include the PDBs and redistribute those in the same way we do other native code that we build. This won't impact our final package size, only the MlNetMklDeps transport package.

Ideally we should include the build of this component as an optional part of our regular build process, so that we aren't relying on a manual build process. We still might want to keep MlNetMklDeps around so that contributors don't need to install the Intel MKL sdk if they want to build the entire product.

Activity

  1. minghan commented on Jun 1, 2021

    @minghan
  2. ericstj commented on Jun 1, 2021

    @ericstj
    MemberAuthor

    Yes, we do source link as part of the dotnet/arcade infrastructure that builds this repository, but that won't help for third party components like this one, unfortunately, where we are just linking Intel's prebuilt libraries into a smaller dll. Perhaps we could ask Intel to publish sources and publish source-link PDBs along with their SDK. I'm not sure of the history here: has Intel ever considered OSS for their MKL (Math Kernel Library) project?

  3. ericstj commented on Jun 2, 2021

    @ericstj
    MemberAuthor

    As part of fixing this we should also update the version of MKL we're using to latest (if possible) and ensure we use a consistent one across all platforms. Related to #1073

  4. added
    Priority:0Work that we can't release without
    area-InfrastructureBuilds, CI, packaging, and repository tooling
    and removed on Sep 8, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Priority:0Work that we can't release withoutarea-InfrastructureBuilds, CI, packaging, and repository toolinggreendevelopmentyellowmaintenance only

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions