-
-
Notifications
You must be signed in to change notification settings - Fork 103
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
v2.0 #78
v2.0 #78
Conversation
Codecov ReportAttention:
Additional details and impacted files@@ Coverage Diff @@
## main #78 +/- ##
===========================================
- Coverage 51.88% 37.99% -13.89%
===========================================
Files 13 28 +15
Lines 1089 1479 +390
===========================================
- Hits 565 562 -3
- Misses 524 917 +393 ☔ View full report in Codecov by Sentry. |
Thanks for the work on this new version. The
Similarly, the However, the following segfaults in the
The array is properly displayed when removing the Either:
|
Bit of an issue with the Current workaround let outs = bind.run().unwrap();
assert!(outs.len() == 1);
let out_copy = unsafe { std::ptr::read(&outs["output0"]) };
std::mem::forget(outs); // Because we copied an Arc
bind.bind_input("images", out_copy).unwrap(); |
@bharrisau Thank you, just implemented let output1: Value<'_> = outputs.remove("output1").unwrap(); |
As I mentioned in #88 - there is a significant performance penalty from the Probably need another way of creating the |
* WIP - Use ArcArray to remove copy * Updated no-copy wip --------- Co-authored-by: Ben Harris <[email protected]>
* ci: replace actions-rs with dtolnay/rust-toolchain (#101) * Fixed work with parameters * Fixed docs
Onnxruntime can be built with `--use_extensions` to include onnxruntime-extensions inside. In this case, we need to call `EnableOrtCustomOps` for sessions that need ops in extensions. Also, the build.rs is updated to include libraries for custom ops.
* Created ort-sys create * Fixed CI
- Refactor execution providers to be separate builder pattern structs - Improve `IoBinding` ergonomics - Reduce allocations in hot paths - Fix a few memory leaks - Make the `ndarray` dependency optional TODO: - Make mutable `Value` methods - Useful `IoBinding` example/test (Stable DIffusion?) - Allow passing in pre-allocated `Value`s to `Session::run`, see C docs
* Leaving Error Note for Examples * added docs for gpt2.rs * Delete examples/Readme.md * Update gpt2.rs --------- Co-authored-by: Carson M <[email protected]>
* Leaving Error Note for Examples * added docs for gpt2.rs * Delete examples/Readme.md * Update gpt2.rs * parent().unwrap() -> ancestors().nth(3) --------- Co-authored-by: Carson M <[email protected]>
Referencing to e694ebc Commit. symlink works smoothly on Linux 👍 |
ndarray
types for better ergonomics & performance: no moreinto_dyn()
orCowArray::from
in most casesIoBinding
more clear and easier to use by merging it intoSession::run
.SessionBuilder
cloneable (How to clone aSessionBuilder
? #70)ort::value::Value
is unsound since it exposes raw pointers as public fields #69)Value
lifetimes (Output goes wrong after being returned by a function #74)Fixes #97, #80, #70, #69, #66
TODO
Value
s andHashMap
/Vec
for map/sequence types as discussed in Support for sequence/map types #30Value
s isn't bug prone. Related: Change field order to drop Environment last #105run
#80