Hello Chris,
I have profiled current version of FreeMind using the mind map I send
you personally later and have got some important unexpected result.
Approximately a half of the processor time (43%) was used by method
LinkRegistryAdapter.getAllLinksFromMe .
CPU hot spots
freemind.modes.LinkRegistryAdapter.getAllLinksFromMe(MindMapNode)
Time (ms) Invocation Count
73.500 (43 %) 5.788
It should be optimized by introducing additional HashMaps
protected HashMap SourceIDToLinks;
protected HashMap SourceIDToCuttedLinks;
managing the links attached to their source nodes
similar to current
protected HashMap IDToLinks;
protected HashMap IDToCuttedLinks;
managing the links attached to their target nodes
I have some problems with understanding the current code so that in this
case I was not able to make the changes myself.
Particularly I could not understand, why method
LinkRegistryAdapter.getAssignedLinksVector always put a new link into
IDToLinks, even if it is called from deregisterLink and
deregisterLinkTarget .
Could you pay some attention to this class and optimize it?
Best regards, Dimitry
P.S. Because of the big size of the attached map I use VM setting
-Xmx256m to increase maximum possible heap and avoid OutOfMemory error.
-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems? Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
Freemind-developer mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freemind-developer