Re: [Doxygen-users] how to avoid running dot for really big diagrams
Brought to you by:
dimitri
|
From: Dimitri v. H. <di...@st...> - 2003-03-29 14:09:43
|
On Fri, Mar 28, 2003 at 06:41:49PM -0800, Karl Pfleger wrote: > > I wouldn't expect this to do anything other than scale down the image. I > > wouldn't think this would save any time running dot. I tried this but 5.5 > > hours into my trial run it doesn't seem to be helping. > > So it turns out it did actually help. Reducing dot's width and height from > 1024 to 512 for both reduced running time from 15.5 hours to 7 hours. Still, > not nearly as good as 45min from not running dot on the 100+ node graphs. I think this can be explained by the way doxygen tries to fit the graph within the specific image size. Doxygen uses a binary search, starting with the smallest graph (depth from root=1) and the complete graph (depth from root=N). When the complete graph doesn't fit, one with maximum depth of N/2 is tried, etc. This obviously requires multiple runs of dot (and at least one with the complete graph) to determine the best fit. So if you stop dot when the number of nodes exceed a certain value that will give better results. Maybe a better way to reduce time is to add an config option to limit the graph depth (i.e. distance from the root) or maximum node count, then that could be used as the upper bound for searching a best fit. Let me know which one (graph depth or node count) you think is better. Regards, Dimitri |