Skip to content

Releases: pykeio/ort

v1.14.5

06 Apr 14:37
26431a8
Compare
Choose a tag to compare

Changes

  • 2929105 Fix compile errors with feature = "load-dynamic".

v1.14.4

05 Apr 14:34
2c4cfaf
Compare
Choose a tag to compare

Changes

  • 5bb47ef Fix execution providers not being registered on load-dynamic (#34)
  • e147325 Attempts to register all execution providers specified instead of returning after the first successful registration, matching the behaviour of the ONNX Runtime Python API.
  • 1127dad Fix the CUDA execution provider failing to compile on Linux ARM64.
  • 0e7faaa Fix the TensorRT execution provider returning as "not available" when it is really available.
  • 7c0103b Allow for a flat library directory structure with ORT_STRATEGY=system (not requiring an include/ and lib/ dir)
  • 6e9dce0 Fix the assert_non_null_pointer function producing a misleading PointerShouldBeNull error.
  • 41b6ea0 Increase the timeout of the binary download in case of slow connections. (#33)

v1.14.3

21 Mar 19:06
bc0b37f
Compare
Choose a tag to compare

Changes

  • 92c3648 Fix the load-dynamic version check for ONNX Runtime v1.14.1 (#27)
  • 768733d Additionally update the load-dynamic version check to ignore the patch version completely.

v1.14.2

17 Mar 16:48
b1b5e70
Compare
Choose a tag to compare

This release updates to ONNX Runtime v1.14.1, containing fixes for performance regressions with transformer models. Additionally, issues with static linking on Windows and building on macOS have been fixed, and a new feature, load-dynamic, eliminates the shared library hell via dlopen() with an env-controllable path instead of dynamic linking.

Changes

  • 566ef7f Update to ONNX Runtime v1.14.1
  • 930edb6 Adds the load-dynamic feature, eliminating the shared library hell
  • c7b668e Fixes incorrect incompatible provider errors on macOS (thanks @ williamhogman for pointing this out)
  • 8889616 Replaces OrtSessionOptionsAppendExecutionProvider_ROCm with OrtApi().SessionOptionsAppendExecutionProvider_ROCM to fix a linking issue.
  • 1afd392 f6135fc Allow for compiling on Windows x86.
  • 7f8c551 Fix copy-dylibs failing with static linking.

Static linking fixes

Static linking is confirmed working with microsoft/onnxruntime#v1.14.1 on Windows x64.

v1.14.1

04 Mar 05:15
f678d3a
Compare
Choose a tag to compare
  • Libraries using default-features = false will no longer encounter build errors when running cargo build or cargo check.
    • Instead, a linking error will occur only when building a binary, informing the user to enable the download-binaries feature or use the system strategy.

v1.14.0

01 Mar 19:25
fa8d103
Compare
Choose a tag to compare

ort 1.14 is updated for ONNX Runtime v1.14.0. Please update to 1.14 as soon as possible, as this release contains important fixes and behaviour changes.

Changes (compared to v1.13)

  • Simplified the process for downloading models.
  • Made environments easier to use.
    • You can now use Environment::default() to return the global environment, or create a dummy one if one does not exist.
    • Environment::into_arc() automatically converts an Environment into an Arc<Environment> for cleaner code.
  • Fixed an issue where tensors being passed to ONNX Runtime were not laid out contiguously in memory before being passed to the session, and using methods like Array::slice on an array before passing it to ort would result in unexpected results.
  • Reduced bloat by making the download strategy optional, but enabled by default. See the README for more info. Developers of libraries using ort should consider using default-features = false.
  • Added support for zero-copy deserialization for sessions loaded from memory via SessionBuilder::with_model_from_memory. This feature only works with .ort models.
    • Note that SessionBuilder::with_model_from_memory<'s>(&'s array) returns an InMemorySession<'s>, not a Session.
  • Now using AllocatorType::Device instead of AllocatorType::Arena to potentially improve memory usage.
  • Added support for the ROCm & DirectML execution providers (still working out ROCm build issues, see #16)
  • Fixed some issues occurring with the compile strategy.
  • Added memory pattern optimization with Session::with_memory_pattern
  • ExecutionProvider::x_if_available has been removed, as the functionality is identical to ExecutionProvider::x.
  • Removed the disable-build-script feature. Libraries on docs.rs using ort will no longer need to enable the disable-build-script feature in docs.rs build; ort will automatically detect if it is running in docs.rs and disable the build script.
  • Removed the prefer-* features, as they were not very useful and potentially added unneeded complexity.
  • Added support for scalar inputs (0-dimensional arrays) for models like Silero VAD.

v1.14.0-beta.0

12 Feb 17:57
f094fa5
Compare
Choose a tag to compare
  • Updated for ONNX Runtime v1.14.0
  • Now using AllocatorType::Device instead of AllocatorType::Arena to potentially improve memory usage.
  • Support for the ROCm execution provider
  • Fixed an issue where tensors being passed to ONNX Runtime were not laid out contiguously in memory before being passed to the session, and using methods like Array::slice on an array before passing it to ort would result in unexpected results.

v1.14.0-alpha.0

18 Jan 16:44
f12881b
Compare
Choose a tag to compare
v1.14.0-alpha.0 Pre-release
Pre-release

Based on ONNX Runtime v1.13.1.

This release includes the following changes:

  • Support for the DirectML execution provider
  • The Profiling API is now only available with the profiling feature.
  • Session::with_memory_pattern() to enable/disable memory pattern optimization.
  • Model downloading has been simplified. Now e.g. GPT2::GPT2LmHead can be downloaded directly.
  • Added Environment::default(), which will return a threads existing environment, or create one if it does not exist.
  • Added Environment::into_arc() to convert the Environment into an Arc<Environment>.
  • disable-build-script has been removed. Crates using ort no longer need it to get docs.rs builds working.
  • The prefer-compile-strategy, prefer-system-strategy, and prefer-dynamic-libs features have been removed.
  • Fixed scalar inputs for models like Silero VAD.