Hello all, > If this doesn't help, then you may have to change the source file, > e.g. breaking it into several pieces that are "easier" on the > compiler. You may also have to break large function in these pieces > into several smaller functions, allowing you to generate even more > pieces. This would be a good thing to do in any case. Those routines in GRHydro instantiate many C++ templates for the different cases. Overall compilation speed probably improves if one makes one tiny C++ file per instantiation. The instantiation happens in these lines:
INSTANTIATE_RECONSTRUCTION_OPERATOR(GRHydro_WENOReconstruct1d_cxx00) INSTANTIATE_RECONSTRUCTION_OPERATOR(GRHydro_WENOReconstruct1d_cxx01) INSTANTIATE_RECONSTRUCTION_OPERATOR(GRHydro_WENOReconstruct1d_cxx10) INSTANTIATE_RECONSTRUCTION_OPERATOR(GRHydro_WENOReconstruct1d_cxx11) *each* of which (in the macro INSTANTIATE_RECONSTRUCTION_OPERATOR) instantiates 12 copies of the given routine. The macro is defined in GRHydro_Reconstruct_drv_cxx.hh . Yours, Roland -- My email is as private as my paper mail. I therefore support encrypting and signing email messages. Get my PGP key from http://keys.gnupg.net.
signature.asc
Description: OpenPGP digital signature
_______________________________________________ Users mailing list Users@einsteintoolkit.org http://lists.einsteintoolkit.org/mailman/listinfo/users