Additional:
- DO NOT USE THE WRAPPER! Here is my command line (stick it all on one
  line, change paths to reflect your local setup):

java
-Xmx300M 
-cp "/usr/src/cvs/eclipse-workspace/Freenet 
0.7/bin:/usr/src/cvs/eclipse-workspace/Freenet 0.7/lib/freenet-ext.jar"
-Dnetworkaddress.cache.ttl=0
-Dnetworkaddress.cache.negative.ttl=0
-Xloggc:freenet.loggc
-Xrunhprof:heap=all,format=a,depth=12,lineno=y,doe=y,gc_okay=y
freenet.node.NodeStarter
freenet-darknet.ini

- Search for SITES in the output file. It's not always at the end of the
  file, e.g. if you did a kill -QUIT and let it keep on running.

On Fri, Feb 16, 2007 at 02:03:44AM +0000, Matthew Toseland wrote:
> I have been trying to profile a running node with queued requests and
> inserts. I have previously profiled nodes without queued
> requests/inserts, so I had assumed this would be possible. But it
> appears not to be. After many hours spent on this (mostly waiting for it
> to do something), it still doesn't work. So far:
> 
> Add to or change wrapper.conf:
> wrapper.java.additional.3=-Xloggc:freenet.loggc
> wrapper.java.additional.4=-Xrunhprof:heap=all,format=a,depth=12,lineno=y,doe=y,gc_okay=y
> wrapper.startup.timeout=0
> wrapper.shutdown.timeout=0
> wrapper.jvm_exit.timeout=0
> wrapper.ping.timeout=0
> wrapper.disable_restarts=true
> 
> Add to or change freenet.ini:
> logger.priority=NORMAL
> node.disableHangCheckers=true
> 
> (and remove any detailed log thresholds)
> 
> The latest:
> [01:52] <toad_> i don't understand it
> [01:52] <toad_> everything i have done to try to get profiling to work
> while there are actual requests queued has been thwarted
> [01:52] <toad_> this is the latest:
> [01:52] <toad_> INFO   | jvm 1    | 2007/02/16 01:28:33 | Dumping Java
> heap ...
> [01:52] <toad_> half an hour later, it's not using any CPU
> [01:52] <toad_> and apparently not doing anything
> [01:53] <toad_> but it hasn't dumped the heap
> [01:53] <toad_> nor has freenet resumed operations
> [01:53] <toad_> which is insane
> [01:54] <toad_> i don't think the right answer is not to address the
> problem, because if i can't get profiling data, how can i know whether
> doing XYZ to reduce memory usage will actually hit a significant part of
> the problem?
> [01:54] <toad_> you end up with complex code which doesn't actually help
> matters that way
> [01:57] <thatjoe> Is there a way to get an object (or byte) count by
> type?
> [01:59] <thatjoe> I wish I could be of help.  I haven't done heavy-duty
> Java debugging in ages.  If you want to port it to .NET I could help you
> track down memory problems, piece of cake! :)
> [01:59] <toad_> thatjoe: with jmap yes
> [01:59] <toad_> but that's not very helpful
> [01:59] <toad_> hprof lets you have detailed numbers on each backtrace
> [01:59] <toad_> which is VERY helpful
> [01:59] <toad_> but it's not working at all now
> [02:00] <toad_> also when i tried jmap <pid of java running fred> it
> didn't work :<



> _______________________________________________
> Devl mailing list
> Devl at freenetproject.org
> http://emu.freenetproject.org/cgi-bin/mailman/listinfo/devl
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
URL: 
<https://emu.freenetproject.org/pipermail/devl/attachments/20070216/81f89887/attachment.pgp>

Reply via email to