microsoft / microsoft/onnxruntime
[Feature Request] Add ONNX Runtime builds and drops for Windows + clang + ASAN
- Dominant language
- C++
- Stars
- 21.9k
- Forks
- 4.2k
- Avg merge
- 4d 11h
- Merged PRs (30d)
- 184
Description
### Describe the feature request
This issue tracks creating a build pipeline which produces e.g., nightly drops of ONNX which have been compiled for Windows using clang and ASAN.
### Describe scenario use case
Chromium has some very useful libfuzzer-based tools for fuzzing the different ML backends that power WebNN. I am interested in applying them on ORT. From experimentation, I cannot "mix and match" by using an MSVC + ASAN build of ORT with the clang + ASAN Chromium libfuzzers (I hit crashes that I believe are due to ABI mismatches).
It is not obvious how to get ORT building with clang on Windows, and that too with ASAN enablement- I got something sort-of working but having this codified in a pipeline would be useful to support scenarios such as this one.
If we have a way of doing e.g. nightly binary drops or something of those binaries, that would be super-helpful for anyone else who wants to run these fuzz tests (as then they don't have to discover how to create this combination, and can ideally just pull the binaries from a known location).
Contributor guide
Research direction
Start by reviewing the existing Windows build workflows and configuration for clang and ASAN. Determine how nightly binary artifacts are currently produced and published, then define the build and drop process so Chromium's clang+ASAN fuzzers can consume compatible ONNX Runtime binaries.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- build-system, ci-cd, release
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100