| 
735 | 735 |         infrastructure, or by implementing custom  | 
736 | 736 |         instrumentation. Reoptimization could be applied to whole functions, or  | 
737 | 737 |         outlining could be used to enable optimization of portions of  | 
738 |  | -        functions. Re-entry into the JIT infrastructure from JIT’d code might be  | 
 | 738 | +        functions. Re-entry into the JIT infrastructure from JIT'd code might be  | 
739 | 739 |         implemented on top of existing lazy compilation, or via a custom path.  | 
740 | 740 |       mentors: Vassil Vassilev, Stefan Gränitz, Lang Hames  | 
741 | 741 |       proposal: /assets/docs/Sunho_Kim_Proposal_2023.pdf  | 
 | 
812 | 812 |         RooFit is a toolkit for statistical modeling and fitting used by most  | 
813 | 813 |         experiments in particle physics. Just as data sets from next-generation  | 
814 | 814 |         experiments grow, processing requirements for physics analysis become  | 
815 |  | -        more computationally demanding, necessitating performance optimizagtions  | 
 | 815 | +        more computationally demanding, necessitating performance optimizations  | 
816 | 816 |         for RooFit. One possibility to speed-up minimization and add stability  | 
817 | 817 |         is the use of automatic differentiation (AD). Unlike for numerical  | 
818 | 818 |         differentiation, the computation cost scales linearly with the number of  | 
 | 
1066 | 1066 |         Enzyme, and give the user the option of selecting Enzyme for Automatic  | 
1067 | 1067 |         Differentiation, based on his/her needs. This will give the user the  | 
1068 | 1068 |         same User Interface as clad for writing his/her code, but the option of  | 
1069 |  | -        using Enzyme as the backend with all its optimisations to calculate the  | 
 | 1069 | +        using Enzyme as the backend with all its optimizations to calculate the  | 
1070 | 1070 |         Derivative/Gradient of the requested function.  My proposal also briefly  | 
1071 | 1071 |         gives insights into how this can be achieved by tapping into the  | 
1072 | 1072 |         existing code base of Clad.  | 
 | 
1118 | 1118 |       description: |  | 
1119 | 1119 |         In C++, it's often useful to write wrappers that abstract or extend some  | 
1120 | 1120 |         underlying type passed as a template argument. But templates are only  | 
1121 |  | -        instantated taking into account the 'fundamental' types of the  | 
 | 1121 | +        instantiated taking into account the 'fundamental' types of the  | 
1122 | 1122 |         arguments, discarding 'type sugar', such as any aliases, attributes or  | 
1123 | 1123 |         other cosmetic metadata such as how the name of the type was qualified  | 
1124 | 1124 |         and such. While this ends up in practice being brittle to rely on,  | 
 | 
1129 | 1129 |         further engineering to work around this limitation, member accesses on  | 
1130 | 1130 |         template specializations will only reflect these canonical types, with  | 
1131 | 1131 |         the simplest example being the loss of any sugar on the argument when  | 
1132 |  | -        acessing a member alias to the argument itself.  For this project, we  | 
 | 1132 | +        accessing a member alias to the argument itself.  For this project, we  | 
1133 | 1133 |         will improve Clang's type system so that any type sugar on the arguments  | 
1134 | 1134 |         of a template specialization are pushed into those member accesses.  | 
1135 | 1135 |       proposal: /assets/docs/Matheus_Izvekov_Proposal_2022.pdf  | 
 | 
0 commit comments