-
Notifications
You must be signed in to change notification settings - Fork 95
Open
Labels
designRequires some design before changes are madeRequires some design before changes are madeneeds-careful-thoughtA reminder that this thing is not obviouis and care must be taken when working on itA reminder that this thing is not obviouis and care must be taken when working on itperformanceRelated to improving computational performanceRelated to improving computational performance
Description
Because closures are not consistent types, they inhibit precompilation. If the closures used for the adjoints were instead callable types, which would make sure that every session has the same types and thus they should in theory be amenable to precompilation. This would be a huge but non-breaking code churn. I wonder if everyone would be okay with that programming style. It would also help in many cases with inference, because closures are known to cause inference issues. So in general this could improve compile and run time performance quite a bit, but it's a bit nasty.
Metadata
Metadata
Assignees
Labels
designRequires some design before changes are madeRequires some design before changes are madeneeds-careful-thoughtA reminder that this thing is not obviouis and care must be taken when working on itA reminder that this thing is not obviouis and care must be taken when working on itperformanceRelated to improving computational performanceRelated to improving computational performance