From 3604cc92aee04ce757391ff2aa7395d33b8c88c3 Mon Sep 17 00:00:00 2001 From: Vassil Vassilev Date: Wed, 17 Jul 2024 20:27:26 +0000 Subject: [PATCH] Prepare for release v1.6. --- VERSION | 2 +- docs/internalDocs/ReleaseNotes.md | 99 +++++++++++++++---------------- 2 files changed, 50 insertions(+), 51 deletions(-) diff --git a/VERSION b/VERSION index f75e5f2b4..810ee4e91 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.6~dev +1.6 diff --git a/docs/internalDocs/ReleaseNotes.md b/docs/internalDocs/ReleaseNotes.md index ee1dd352a..132eee76b 100644 --- a/docs/internalDocs/ReleaseNotes.md +++ b/docs/internalDocs/ReleaseNotes.md @@ -2,7 +2,7 @@ Introduction ============ This document contains the release notes for the automatic differentiation -plugin for clang Clad, release 1.5. Clad is built on top of +plugin for clang Clad, release 1.6. Clad is built on top of [Clang](http://clang.llvm.org) and [LLVM](http://llvm.org>) compiler infrastructure. Here we describe the status of Clad in some detail, including major improvements from the previous release and new feature work. @@ -11,7 +11,7 @@ Note that if you are reading this file from a git checkout, this document applies to the *next* release, not the current one. -What's New in Clad 1.5? +What's New in Clad 1.6? ======================== Some of the major new features and improvements to Clad are listed here. Generic @@ -26,52 +26,53 @@ External Dependencies Forward Mode & Reverse Mode --------------------------- -* Add support for C-style memory alloc and free +* Add support for simple lambda functions -Reverse Mode +Forward Mode ------------ -* Replace array_ref with pointers in gradient signature -* Initial support for new and delete operations in reverse mode +* Support condition declarations and assignments +* Enable logical operators in for loops +* Support top level custom derivatives in vector mode +* Add support for assignments in while-loops +* Support for initializer_list +* Support for const_cast +* Add support for `std::string` variables -Error Estimation ----------------- -* Only track sizes of independent arrays -* Remove .size() from error estimation -* Simplify error estimation by removing `_EERepl_` and `_delta_` +Reverse Mode +------------ +* Improve consistency in the tape usage +* Support pointer reference parameters +* Remove redundant goto/label statements from the generated code Misc ---- -* Teach binder to use the newest available version of clad -* Simplify pullback calls by replacing `_grad`/`_r` pairs with single `_r` - variables -* Delay the differentiation process until the end of TU -- Clad now can operate - just like clang and visit the entire translation unit to construct a precise - differentiation plan -* Remove extra lines generated when using clad::array or array_ref -* Added timings report if `-ftime-report` flag is enabled +* Improved CMake infrastructure via `AddClad.cmake` +* Remove unnecessary clad::array_ref usages +* Add support for computing only the diagonal hessian entries +* Basic support for custom constructor pushforward functions + Fixed Bugs ---------- -[248](https://github.com/vgvassilev/clad/issues/248) -[350](https://github.com/vgvassilev/clad/issues/350) -[704](https://github.com/vgvassilev/clad/issues/704) -[715](https://github.com/vgvassilev/clad/issues/715) -[765](https://github.com/vgvassilev/clad/issues/765) -[769](https://github.com/vgvassilev/clad/issues/769) -[790](https://github.com/vgvassilev/clad/issues/790) -[792](https://github.com/vgvassilev/clad/issues/792) -[798](https://github.com/vgvassilev/clad/issues/798) -[805](https://github.com/vgvassilev/clad/issues/805) -[854](https://github.com/vgvassilev/clad/issues/854) -[865](https://github.com/vgvassilev/clad/issues/865) -[867](https://github.com/vgvassilev/clad/issues/867) -[886](https://github.com/vgvassilev/clad/issues/886) -[887](https://github.com/vgvassilev/clad/issues/887) -[890](https://github.com/vgvassilev/clad/issues/890) -[897](https://github.com/vgvassilev/clad/issues/897) +[273](https://github.com/vgvassilev/clad/issues/273) +[352](https://github.com/vgvassilev/clad/issues/352) +[509](https://github.com/vgvassilev/clad/issues/509) +[789](https://github.com/vgvassilev/clad/issues/789) +[874](https://github.com/vgvassilev/clad/issues/874) +[899](https://github.com/vgvassilev/clad/issues/899) +[908](https://github.com/vgvassilev/clad/issues/908) +[911](https://github.com/vgvassilev/clad/issues/911) +[913](https://github.com/vgvassilev/clad/issues/913) +[922](https://github.com/vgvassilev/clad/issues/922) +[927](https://github.com/vgvassilev/clad/issues/927) +[951](https://github.com/vgvassilev/clad/issues/951) +[965](https://github.com/vgvassilev/clad/issues/965) +[972](https://github.com/vgvassilev/clad/issues/972) +[974](https://github.com/vgvassilev/clad/issues/974) +[978](https://github.com/vgvassilev/clad/issues/978) Special Kudos ============= @@ -83,17 +84,15 @@ FirstName LastName (#commits) A B (N) -petro.zarytskyi (30) -Vaibhav Thakkar (24) -Vassil Vassilev (21) -mcbarton (6) -Mihail Mihov (4) -dependabot[bot] (2) -Atell Krasnopolski (2) -Alexander Penev (2) -sauravUppoor (1) -kchristin22 (1) -Warren Jacinto (1) -Jonas Hahnfeld (1) -Deeptendu Santra (1) -Christina Koutsou (1) +Vaibhav Thakkar (16) +petro.zarytskyi (13) +Vassil Vassilev (13) +Atell Krasnopolski (11) +parth-07 (3) +dependabot[bot] (3) +Rohan Julka (2) +Jonas Rembser (2) +PetroZarytskyi (1) +Maxxxx (1) +Max Andriychuk (1) +Alexander Penev (1)