Thanks for the answer! I am currently using the master branch of Trilinos, to make sure that a newer version did not fix this.
I had some second-guessing with how I had configured Sacado itself since there seems to be some options that changes how the reverse mode reuses the memory through RAD_REINIT <https://github.com/trilinos/Trilinos/blob/17cdb33f3664f4901ab9d0935af609f516031a86/packages/sacado/src/README_RAD#L228-L247>. However, I've been unable to compile with this flag's options. Hopefully they can shed some light on the issue. Sounds good. I'll create a pull-request to update the documentation in https://github.com/dealii/dealii/blob/master/include/deal.II/differentiation/ad/ad_number_types.h#L87 and in https://github.com/dealii/dealii/blob/master/doc/doxygen/headers/automatic_and_symbolic_differentiation.h#L303 referring to the AD number type. I've actually implemented sacado_fad_fad first because I understood it theoretically. Turns out, it was a bottleneck in my code, so I need sacado_rad_fad. Might just switch the AD package. Thanks again, following-up with a documentation PR https://github.com/dealii/dealii/pull/10818 Doug On Tuesday, August 11, 2020 at 4:33:37 PM UTC-4 Jean-Paul Pelteret wrote: > Hi Doug, > > Yes, sadly I have experienced the same but wasn’t able to allot the time > to figure out if it was indeed a bug in Sacado (and maybe something that’s > already been fixed upstream in a newer version of Trilinos than I was > using) or something that we did. I’m really glad that you managed to supply > them with a MWE that definitely reproduces the issue, since this > disambiguates their code from our drivers. Thank you for that. For your > interest, I’ve attached the MWE that I made at the time. I can only suppose > that back then I wasn’t confident that I’d recreated the conditions for the > leak, because the valgrind logs that I still have didn’t report and memory > as being “definitely lost”. I guess the trick would have been to have stuck > all of this in a loop, which I clearly didn’t think to do :-/ > > Since you’ve confirmed that you’ve experienced the same, I think that it > would be worthwhile to add a note to this effect in our documentation. If > you'd like to do so yourself, then free to make a suggestion where you > think it would be appropriate to be. My first inclination would have been > where the enumerated type sacado_rad_fad is documented, i.e. > > https://github.com/dealii/dealii/blob/master/include/deal.II/differentiation/ad/ad_number_types.h#L87 > but of course that’s completely up for discussion. Either way, I think > that this should be documented because this issue may persist for some > time, and it would be good to have a warning in place until we know which > version of Trilinos has a fix in place. Perhaps we should also add a link > there to your issue on their GitHub page so that the reader can easily find > where to check the status of the issue? > > I hope that you’ve spotted the sacado_fad_fad alternative that should > work without issue. In many cases I would expect it to be less performant > than the (buggy) Rad-Fad implementation but they both still have, at the > very least, some use in debugging or prototyping. > > Best, > Jean-Paul > > -- The deal.II project is located at http://www.dealii.org/ For mailing list/forum options, see https://groups.google.com/d/forum/dealii?hl=en --- You received this message because you are subscribed to the Google Groups "deal.II User Group" group. To unsubscribe from this group and stop receiving emails from it, send an email to dealii+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/dealii/3551c670-3e01-4cd4-afa6-8d06e92c03den%40googlegroups.com.