Doxygen требуется около 12 часов для работы с нашей кодовой базой. Это в первую очередь потому, что для обработки требуется много кода (~ 1,5 млн строк). Тем не менее, он очень быстро приближается к тому моменту, когда мы не можем делать ночные обновления документации, потому что они занимают слишком много времени. Нам уже пришлось уменьшить глубину графика до 12 часов.
Я пробовал стандартные подходы, но мне действительно нужно высокое качество вывода, включая графы и SEARCH_INCLUDES. У меня есть довольно хорошая машина для запуска Doxygen, но Doxygen не использует преимущества своих многочисленных ядер. (Он привязывает один процессор к серверу сборки, но составляет всего 4% от доступной системы.) Многопоточная сборка Dot удобна, хотя это только половина времени сборки.
Могу ли я использовать какие-либо методы для запуска doxygen через несколько процессов и ручного разделения задачи? Я видел некоторые разговоры о создании файлов тегов, но я недостаточно разбираюсь в них, чтобы знать, будут ли они делать то, что я хочу. Я ищу что-то вроде:
doxygen Doxyfile-folder1
doxygen Doxyfile-folder2
doxygen Doxyfile-folder3
doxygen Doxyfile-folder4
doxygen-join output/folder1/html output/folder2/html output/folder3/html output/folder4/html
Конечно, я просто придумываю вещи, но это идея того, что я ищу. Кроме того, я бы использовал более 4 процессов.