Doxygen mất khoảng 12 giờ để chạy trên cơ sở mã của chúng tôi. Điều này chủ yếu là do có rất nhiều mã để xử lý (~ 1.5M dòng). Tuy nhiên, nó rất nhanh chóng tiếp cận điểm mà tại đó chúng tôi không thể cập nhật tài liệu hàng đêm vì chúng mất quá nhiều thời gian. Chúng tôi đã phải giảm độ sâu đồ thị để giảm xuống 12 giờ.Doxygen là Slow
Tôi đã thử các phương pháp tiếp cận chuẩn, nhưng tôi thực sự cần sản lượng chất lượng cao và điều này bao gồm đồ thị và SEARCH_INCLUDES. Tôi có một máy khá tốt để chạy Doxygen, nhưng Doxygen không tận dụng được nhiều lõi của nó. (Nó gắn một CPU đơn trên máy chủ xây dựng, nhưng chỉ có 4% của hệ thống có sẵn.) Việc xây dựng Dot đa luồng rất tiện lợi, mặc dù đó chỉ là một nửa thời gian xây dựng.
Có bất kỳ kỹ thuật nào tôi có thể sử dụng để chạy doxygen thông qua nhiều quy trình và tự phân đoạn tác vụ không? Tôi đã nhìn thấy một số nói về việc tạo ra các tập tin thẻ, nhưng tôi không hiểu đủ về họ để biết nếu họ muốn làm những gì tôi muốn. Những gì tôi đang tìm kiếm là một cái gì đó như:
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
Tất nhiên, tôi chỉ đang tạo công cụ, nhưng đó là ý tưởng về những gì tôi đang tìm kiếm. Ngoài ra, tôi sẽ sử dụng nhiều hơn 4 quy trình.
Máy chủ có đủ RAM để giữ toàn bộ bộ đệm ẩn và chạy doxygen mà không hoán đổi không? – mpartel
RAM và/hoặc ổ cứng nhanh hơn. Chọn ổ SSD 80 GB và đặt mã của bạn lên đó. Phần mềm mà IO chuyên sâu sẽ được hưởng lợi rất nhiều từ một ổ đĩa cứng trạng thái rắn hiện đại. –
Vâng, nó hiện đang ngồi trên một mảng 10 đột kích của ổ đĩa 10k, vì vậy nó không phải là chậm ... – alficles