Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implementation of TreeEnsemble ai.onnx.ml==5 #22333

Merged
merged 49 commits into from
Nov 22, 2024
Merged

Conversation

xadupre
Copy link
Member

@xadupre xadupre commented Oct 7, 2024

Description

Merges PR #21851, #21222.

Implements TreeEnsemble from ai.onnx.ml==5 (CPU).

@xadupre xadupre changed the title [WIP] Implementation of TreeEnsemble ai.onnx.ml==5 Implementation of TreeEnsemble ai.onnx.ml==5 Oct 11, 2024
Copy link
Member

@yuslepukhin yuslepukhin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Lots of memory allocations. I had to rewerite a couple kernels in the past due to high allocation contentions that actually affected performance. Is it possible to use InlinedVector at least in some instances?

Using spans in function signagures would enable taking both kinds of vectors as inputs.

@bili2002
Copy link
Contributor

I don't have permission to push in this branch, can you give me permission?

@cbourjau
Copy link
Contributor

cbourjau commented Nov 4, 2024

Is there anything we can do to push this forward, @xadupre ?

@xadupre
Copy link
Member Author

xadupre commented Nov 4, 2024

Is there anything we can do to push this forward, @xadupre ?

I did a first refactoring today to avoid very long function signatures. There are a couple of other improvments I still need to make.

onnxruntime/core/providers/cpu/ml/tree_ensemble_common.h Dismissed Show dismissed Hide dismissed
onnxruntime/core/providers/cpu/ml/tree_ensemble_common.h Dismissed Show dismissed Hide dismissed
onnxruntime/core/providers/cpu/ml/tree_ensemble_common.h Dismissed Show dismissed Hide dismissed
root = SetMembershipCheck(val, root->value_or_unique_weight) ? root->truenode_or_weight.ptr : root + 1;
}
}
case NODE_MODE_ORT::LEAF:

Check warning

Code scanning / PREfast

Unannotated fallthrough between switch labels (es.78). Warning

Unannotated fallthrough between switch labels (es.78).
onnxruntime/core/providers/cpu/ml/tree_ensemble_common.h Dismissed Show dismissed Hide dismissed
@xadupre xadupre merged commit a2ba3cb into microsoft:main Nov 22, 2024
92 checks passed
guschmue pushed a commit that referenced this pull request Dec 2, 2024
### Description
Merges PR #21851, #21222.

Implements TreeEnsemble from ai.onnx.ml==5 (CPU).

---------

Co-authored-by: Bilyana Indzheva <[email protected]>
Co-authored-by: Bilyana Indzheva <[email protected]>
Co-authored-by: Christian Bourjau <[email protected]>
ankitm3k pushed a commit to intel/onnxruntime that referenced this pull request Dec 11, 2024
### Description
Merges PR microsoft#21851, microsoft#21222.

Implements TreeEnsemble from ai.onnx.ml==5 (CPU).

---------

Co-authored-by: Bilyana Indzheva <[email protected]>
Co-authored-by: Bilyana Indzheva <[email protected]>
Co-authored-by: Christian Bourjau <[email protected]>
ankitm3k pushed a commit to intel/onnxruntime that referenced this pull request Dec 11, 2024
### Description
Merges PR microsoft#21851, microsoft#21222.

Implements TreeEnsemble from ai.onnx.ml==5 (CPU).

---------

Co-authored-by: Bilyana Indzheva <[email protected]>
Co-authored-by: Bilyana Indzheva <[email protected]>
Co-authored-by: Christian Bourjau <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants