CUDA code operating on problem_t device-side members needs to include the entire problem.cuh include, which pulls in a lot of unnecessary header dependencies which is most often not required in kernel code. This has drastic consequences on compile time, as experienced by the engine team.
Work should be put into decoupling this structure from problem.cuh, and ideally perform more header and TU-splitting work to minimize compile times.
CUDA code operating on problem_t device-side members needs to include the entire
problem.cuhinclude, which pulls in a lot of unnecessary header dependencies which is most often not required in kernel code. This has drastic consequences on compile time, as experienced by the engine team.Work should be put into decoupling this structure from problem.cuh, and ideally perform more header and TU-splitting work to minimize compile times.