Skip to content
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

New version: Tapir v0.2.0 #105808

Merged
merged 1 commit into from
Apr 29, 2024

Conversation

JuliaRegistrator
Copy link
Contributor

UUID: 07d77754-e150-4737-8c94-cd238a1fb45b
Repo: https://github.com/withbayes/Tapir.jl.git
Tree: bb83c4b344f8180508c4ba4d4eac2f1cc88a4bd0

Registrator tree SHA: 17aec322677d9b81cdd6b9b9236b09a3f1374c6a
JuliaRegistrator referenced this pull request in compintell/Mooncake.jl Apr 29, 2024
* Separate forwards- and reverse-data

* Move low level maths rules over to new system

* Extend tuple_map to handle named tuples

* Get most builtins working

* Fix low_level_maths rules

* Excise register-related code

* Excise more register-related code

* Include interpreter code for now

* Single block code works + remove redundant stacks

* Add function to get phi nodes from bbcode

* Add online type checking functionality

* Improve safety error messages

* Remove redundant stack code

* Fix phi_nodes bbcode function

* Safety checks in test utils

* Add reflection to utils

* Some work

* Tweaks

* Improve cos and sin rules

* Incorporate test from slack

* Move generic functionality from tangnets to utils and document

* Add tests to code move to utils from tangents

* Remove redundant function

* Don't run performance tests in s2s tests

* Remove redundant code

* Remove redundant code

* Remove commented out code

* Remove redundant code

* Reorganise tangents file

* Move generic functionality to utils from tangents

* Move generic functionality to utils from tangents

* Start tidying up tangent test cases

* Simplify tangent testing

* Test perf for all tangents and fix perf bug

* Unify all type testing

* Remove redundant test info

* Remove redundant alias

* Fix comment

* Enable more correctness tests

* Tidy up test_utils further

* Add more tuple tests

* Add more tuple test cases

* Run fwds_rvs_data tests on all types

* Improve fwds and rvs implementation and get all related tests passing

* Simplify function names

* Rename zero_reverse_data_from_type to zero_rdata_from_type

* Rename zero_reverse_data to zero_rdata

* Remove redundant code

* Get NamedTuples working

* Add tests for structs in new

* Remove arbitrary limit on number of arguments to _new_

* Formatting

* Formatting

* Get all existing _new_ tests passing

* Newline at end of file

* Add remainder of standard tangent test cases to _new_

* Add triangular test cases to new

* Remove unused code

* Enable more integration tests

* Check number of cotangents in safe mode

* Tweak error message

* Rename safety to safe_mode

* Improve comment

* Rename safety to safe_mode in runtests

* Fix bug in new for partially initialised structs

* Require same lengths of args to tuple_map

* Improve docstring for tuple_map

* Improve docstring

* Fix vararg bug

* Fix typo in cglobal rule

* Split out test types construction

* Fix edge case for _new_ rrule

* Improve some builtin rules slightly

* Use alias for block stack

* Active more integration tests

* All existing lgetfield tests pass

* Support order keyword

* Fix up lsetfield

* Active more integration tests

* Add more test cases to lgetfield

* Tidy up lgetfield rrule implementation

* Reenable getfield and setfield rules

* Fix avoiding_non_diff_code rules

* Enable foreigncall stuff

* Enable more tests and fix increment perf

* Improve arrayref and set -- fix pointerref and set

* Sort out more things

* Enable all foreigncall tests

* Fix safe_mode recursion

* Fix safe mode compilation times

* Refactor combine_data to binary tangent and tangent_type

* Fix increment inference bug

* Fix deprecations in benchmarks script

* combine_data to tangent and tangent_type

* Name zero_rdata_from_type to zero_like_rdata_from_type

* Fix dynamic rrule safe mode

* Move zero_like_rdata to its own files

* Fix zerordata and friends

* Include IdDict tests

* Move tuple_fill to utils

* Fix gemv

* Update chainrules macro

* Update trmv

* Update remainder of blas rules

* Update lapack rules

* Add additional builtins test

* Add NoPullback rule to misc

* Add additional options to test utils

* Make DimensionMismatch tangent NoTangent

* Turn safety off for misc tests

* Minor codegen performance tweaks

* Reactivate remainder of tests

* Fix abstract types

* Bump patch

* Tweak contributor list

* Try running the GC before benchmarking

* Update performance bounds

* Tweak plotting range

* Rename functions

* Tidy up safe mode implementation

* Improve safe mode

* Improve safe mode error messages

* Fix rrule for arrayset

* Fix pointer fdata type bug

* Fix safe_mode tests

* Add increment_rdata functionality

* Simplify arrayref and pointerref implementations

* Simplify lgetfield rrule implementation

* Use lazy rdata in getfield

* Simplify lsetfield implementation

* Remove some specialisation to reduce compile times

* Improve codual

* Fix tangent_type for Tuple

* Fix up iddict tests

* Remove GC calls

* Loosen performance bounds on some type unstable tests

* Hopefully fix allocations in CI

* Fix typo

* Remove intrinsic test case

* Remove redundant code

* Fix performance of rdata creation

* Remove redundant code and tidy up variable naming

* Fix peformance of zero_rdata_from_type

* Add regression tests

* Fix performance bug

* Remove allocation tests which don't make sense

* Fix randn_tangent perf and improve test reliability

* Add pprof code to turing integration tests

* Force inline rules for getfield and setfield

* Increased stability for non-literal getfield and setfield

* Add signature to type of LazyDerivedRule

* Add unique predecessor computation

* Reduce block usage

* Revert flawed performance fix

* Enable all tests

* Fix performance regression

* Improve arrayref and arrayset performance

* Add erfcx rule to special functions ext

* Specialised getfield rules for nondifferentiable stuff

* Make eltypes non-differentiable

* Test type with LazyRZero

* Improve pullback codegen for unreachable blocks

* Fix test cases

* Tangent type for Method is NoTangent

* Revert Turing performance test again

* Add more lsetfield tests

* More tests for lgetfield and bug fix

* Add comment noting choice of code layout

* Optimise safe mode compile times

* Import more things during testing

* Make NoPullback use lazy rdata

* Support NoRData in instantiate

* Preserve NoPullback in RRuleZeroWrapper

* Update NoPullback uses to use new version

* Reduce problem sizes to make CI happier

* Bump Turing compat

* Add fast increment_field for homogeneous Tuple types

* Optimise for homogeneous tuples

* Optimise homogeneous named tuples increment_field

* Optimise getfield for homogeneously-typed NamedTuples

* Reduce test problem sizes further to reduce CI burden

* Add TemporalGPs integration test

* Force-inline more things

* Ensure to_benchmark is compiled before running the profiler

* Check that getfield works with tuple of types

* Fix test utils for tuple of types

* Add functionality to determine if a node is used

* Do not AD getfield when not used

* Optimise safe mode

* Add getfield regression integration test

* Force-inling forwards-pass IR for calls and invokes

* Add additional small-union test

* Optimise for un-used ssa nodes and things with NoPullback pullbacks

* Improve documentation for ADInfo

* Document BlockStack const

* Improve documentation for ADInfo outer constructors

* Improve documentation of misc functions in reverse mode ad transformations

* Tidy up RRuleZeroWrapper and ReturnNode

* Tidy up gotoifnot implementation

* Remove commented-out line of code

* Tidy up reverse-mode code further

* Explain special handling for unused getfield calls carefully

* Add directions to bbcode file

* More documentation for reverse-mode

* Improve transformation documentation further

* Improve fwds_rvs documentation

* More informative name than __convert

* Improve comment

* Rename fwds_codual_type to fcodual_type

* Improve unique pred characterisation documentation
Copy link
Contributor

Your new version pull request met all of the guidelines for auto-merging and is scheduled to be merged in the next round.


If you want to prevent this pull request from being auto-merged, simply leave a comment. If you want to post a comment without blocking auto-merging, you must include the text [noblock] in your comment. You can edit blocking comments, adding [noblock] to them in order to unblock auto-merging.

@JuliaTagBot JuliaTagBot merged commit 227797b into master Apr 29, 2024
22 checks passed
@JuliaTagBot JuliaTagBot deleted the registrator-tapir-07d77754-v0.2.0-89a8f8b92f branch April 29, 2024 12:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants