microsoft / microsoft/onnxruntime

Minimal build documentation does not include all important limitations

Open
#11,557 1 comment 2 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

documentation
Dominant language
C++
Stars
21.9k
Forks
4.2k
Avg merge
4d 8h
Merged PRs (30d)
179

Description

Is your feature request related to a problem? Please describe.
Official documentation on Minimal build is found exclusively here. The documentation lists some limitations of minimal build but doesn't mention that it disables avx512 instructions (see implementation here) - which is important for users to be aware.

For instance, on a x86_64 platform that has avx512, disabling the use avx512 instructions brings down inference performance up to 47% on sample models. I'd like to know what other features minimal build disables that is not listed in its documentation, but could impact inference latency.

System information

  • ONNX Runtime version (you are using): 1.11.0

Describe the solution you'd like
Update the documentation with all limitations whether it's low- or high- level. This way, users can make informed judgement on whether to use minimal build or not without searching all occurrence of defined(ORT_MINIMAL_BUILD) in code base.

Describe alternatives you've considered
Manually search all occurrences of defined(ORT_MINIMAL_BUILD) in source code to understand what will be disabled for minimal build.

Additional context
n/a

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the Minimal build documentation at custom.html#minimal-build and review the linked platform.cpp implementation. Search the source for defined(ORT_MINIMAL_BUILD) to identify limitations that affect users, including AVX512 behavior. Done means documenting the relevant low- and high-level limitations so users can judge the build’s inference impact without manually searching the code.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
build-system, documentation, performance
Issue type
Documentation
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.