microsoft / microsoft/onnxruntime

[Feature Request] Add ONNX Runtime builds and drops for Windows + clang + ASAN

Open
#29,465 6 comments 0 reactions 0 assignees View on GitHub
ep:WebNN feature request platform:windows
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

Open the contributing 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.