View Source Changelog
v0.9.2 (2024-11-16)
Enhancements
- Support cross-compilation for use with Nerves
- Optimize LU with a custom call
v0.9.1 (2024-10-08)
Enhancements
- Improve compilation times of native code
Bug fixes
- Fix encoding of binary floats
v0.9.0 (2024-09-26)
Enhancements
- Overall improvements to the Nx.Defn compiler
- Compiled functions now work across BEAM nodes
- Add
cache: "path/to/file"
for disk caching JIT/compiled functions
Bug fixes
- Use a single thread pool for MLIR contexts
v0.8.0 (2024-08-19)
- Add
EXLA.to_mlir_module/2
- The precompiled XLA CUDA binaries now require CUDA 12.1+ and cuDNN 9.1+
- Renamed
XLA_TARGET
value "cuda120" to "cuda12" XLA_TARGET
automatically defaults to "cuda12" when CUDA installation is detected- Allow NIF modules to be upgradable
v0.7.1 (2024-02-27)
- Add CustomCallOp for QR decomposition
- Minor improvements to the MLIR modules generated
- MLIR Context pooling for better concurrency
v0.7.0 (2024-02-22)
- Update to latest Nx
- Introduce a
:mlir
based compiler and use it by default. The previous:xla
based compiler is deprecatead. You can temporarily revert to the previous compiler by settingconfig :exla, :compiler_mode, :xla
v0.6.4 (2023-11-13)
- Update to latest Nx
- Allow
:automatic_transfers
configuration on client - Do not discard client/device in
EXLA.Backend
when it is host - Always sort NaN last
- Improve the
:axes
option ingather
,indexed_add
, andindexed_put
v0.6.3 (2023-11-09)
- Update to latest Nx
- Fix mixed device usage on EXLA.Backend
v0.6.1 (2023-09-12)
- Update to latest Nx
v0.6.0 (2023-08-15)
- Allow cross-device transfers on host
- Update dependencies to OpenXLA
- Update to latest Nx
v0.5.3 (2023-04-14)
- Fix compilation issue on certain macOS caused by O3
- Fix optimization which would cause EXLA to return a complete tuple instead of a subset
v0.5.2 (2023-03-21)
- Automatically transfer tensors between nodes
v0.5.1 (2023-02-18)
- Support
top_k
v0.5.0 (2023-02-10)
- Optimize backend_transfer/backend_copy within EXLA backends
- Use relative symlinks on compilation whenever possible
v0.4.2 (2023-01-13)
Enhancements
- Automatically transfer from
:host
to other devices - Support
lazy_transfers: :always
onEXLA.jit/3
andEXLA.compile/2
- Run hooks concurrently once they have received the data
Bug fixes
- Respect default
EXLA.Backend
client when jitting argumentless operations - Do not pick client without devices when loading initial client
- Consider the first conditional of a
cond
part of the current scope
v0.4.1 (2022-12-07)
Enhancements
- [EXLA] Require Nx ~> 0.4.1
- [EXLA] Update
XLA
to TF2.11 - [EXLA.Defn] Send telemetry event after XLA compilation
- [EXLA.Op] Add optimization barriers as operations
Bug fixes
- [EXLA] Validate backend options
- [EXLA.Backend] Fix
Nx.{any,all}
with:keep_axes
- [EXLA.Backend] Make SVD return
V
instead oftranspose(V)
- [EXLA.Backend] Preserve NaNs in
window
andreduce
operations
v0.4.0 (2022-10-25)
Enhancements
- Support zero copy binaries
- Redirect group leader for EXLA hooks
Bug fixes
- Always hoist
cond
expressions - Fix conditional inside
Nx.map
v0.3.0 (2022-08-13)
Enhancements
- Support
debug: true
option ondefn
compiler - Allow specifying preferred clients via the application environment
- Support new callbacks added in Nx v0.3.0
Deprecations
- Deprecate
set_as_nx_default
v0.2.3 (2022-07-05)
Bug fixes
- Fix predicate handling inside
cond
/while
- Set Nx backend globally
v0.2.2 (2022-06-15)
Bug fixes
- Fix invalid cache expiration when defn received functions as arguments
v0.2.1 (2022-06-04)
Enhancements
- Implement
EXLA.Backend.to_batched_list/3
Bug fixes
- Improve support for non-finite values in
EXLA
compiler - Fix segmentation fault while deallocating tensors
v0.2.0 (2022-04-28)
First release.