Changelog
All notable
changes to the project will be documented in this file.
The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.
For specific details see the FTorch online documentation.
Added
- Support building FTorch as a static library. #448
- Intel-ifx and Intel-ifort CI and GCC v9-13 CI. Intel CI builds OpenMPI from source to accomodate MPI integration tests #438
- Expose tensor strides via
get_stride method #416
- Remove
UNIX preprocessor variable that selected the right C-integer type for 64bit int. Use int64_t instead #416
- A new cmake option
MULTI_GPU to control the build of multi GPU integration tests in #410
- Support for AMD GPU backends (HIP) provided in
#385 and
#388.
requires_grad property hooked up to torch_tensor in #288
- MPI example added in #270
- Changelog file and guidance for versioning added in #313
- A new tensor manipulation demo was introduced in #291.
- Backpropagation implemented with
torch_tensor_backward and
torch_tensor_get_gradient in #286
- Zeroing of gradients associated with a tensor implemented in
#341.
- Exposed
retain_graph argument for torch_tensor_backward in
#342.
- Implemented
torch_tensor_zero and class method alias in
#338.
- Provided interface for
torch_tensor_from_array with default layout in
#348.
- Overload taking sum and mean of tensors in
#344.
Changed
- Intel CI now uses Intel oneAPI MPI instead of OpenMPI built with Intel compilers #449
- FTorch library (
libftorch.so) produced by cmake installation now has RUNPATH that contains path to Torch library directory. Downstream targets linking against FTorch can now find the Torch dependency automatically and will compile successfully #437.
- In all
CMakeLists.txt where find_package(FTorch) was present, now using REQUIRE if not building tests to stop the cmake configuation process early for users who only wish to build examples in #434
- fortitude dependency version increased to 0.7.0
- Examples reordered to be more logical in #317
- scalar multiplication/division of tensors reworked to require the scalar to first be mapped to a
torch_tensor in #289
- The unit tests for constructing and destroying tensors were separated out in
#319
- Demo numbers were bumped to account for new demo in
#291.
- Use interface for
torch_tensor_from_array with default layout in tests and
examples in #348.
- Error handling in
ctorch.cpp improved in #347.
Removed
- Windows CI disabled until GitHub runner issues resolved in 50ea6d7
Patch Releases
1.0.0 - 2025-03-05
Added
- First release of FTorch accompanying pulication in JOSS
- MIT License
- Notable features of the library include:
- Representation of Torch tensors and models in Fortran
- Ability to run inference of Torch models from Fortran
- Early implementation of autograd features for Torch tensors in Fortran
- Comprehensive examples suite showcasing usage
- Testing suites:
- Unit, using pFUnit
- Integration, based on examples
- Code quality and static analysis checks
- Documentation:
- README.md and associated files in repository
- Online API and comprehensive docs build using FORD