[freenet-support] Insane load averages again. (build 535)

2002-11-14 Thread misty-
For a while, for a long while actually, freenet builds have been working 
without pegging my cpu meters at 100%... for whatever reason, build 535 
likes doing absolutely absurd things to my load average. I can have no 
activity for minutes and suddenly BAM! up to loadaverage 12 in seconds. 
Whatever is going on is getting a little silly. :/

I'm running debian unstable (kernel 2.4.19) with sun's j2re1.4.1_01 and 
freenet 535. I am using a K6-III 400 with 320MB of ram and a 512MB 
store.

Another thing. I noted this before, but nobody has replied about it in a 
while... When I set bandwidth to 1 or use the default using 
BandwidthLimit in the configuration file, freenet does NOT limit itself 
to using 10Kb/S - it winds up using my entire upstream (15Kb/S) more 
than half  the time for uploading data. And I was not using other 
programs at the time other than an IRC client, and that uses less than 
a kilobyte per second.

I have tried other things, and found by setting this at 5000, it works. 
I don't know WHY it works and the 1 setting doesn't, only that it 
does work at setting 5000.

Finally, I tried using the independent bandwidth settings  for input and 
output (inputBandwidthLimit and outputBandwidthLimit) - setting input to 
15000 and output to 5000 again, works.

Now don't forget that I'm currently running the 535 build and I've been 
seeing this behavior since 532, which is when I first started using 
freenet.

I would appreciate ideas, and general discussion of these problems as 
they're annoying me quite a bit. :)

Tim McGrath

___
support mailing list
[EMAIL PROTECTED]
http://hawk.freenetproject.org/cgi-bin/mailman/listinfo/support



Re: [freenet-support] Bandwidth settings

2002-11-09 Thread misty-
On Sat, Nov 09, 2002 at 08:33:57AM -0500, Greg Wooledge wrote:
 [EMAIL PROTECTED] ([EMAIL PROTECTED]) wrote:
 
  The default of 1 doesn't seem to properly limit the amount of use to
  1 - my outgoing data stream winds up using everything it has (15K) for
  long periods of time while I have freenet running. A side effect of this
  seems to be that my freenet node has load spikes where normally it'll be
  sitting at around load average 2 or 3 and suddenly spike to around 15 or even
  as high as 20 sometimes.
 
 Using which build of Freenet?  The high load average problem is fixed
 in build 533.

Sorry for neglecting to say that. I'm using build 534 currently.

Tim McGrath

___
support mailing list
[EMAIL PROTECTED]
http://hawk.freenetproject.org/cgi-bin/mailman/listinfo/support



[freenet-support] Re: Freenet uses java and I'm a loon.

2002-11-06 Thread misty-
I am surprised and delighted to report that after upgrading to 
the current freenet update my performance problems have disappeared 
completely. I am now able to work with the default thread and server 
connection settings. Apparently earlier versions to the just released 
version weren't working right!

Tim McGrath

___
support mailing list
[EMAIL PROTECTED]
http://hawk.freenetproject.org/cgi-bin/mailman/listinfo/support



[freenet-support] Freenet bug?

2002-11-06 Thread misty-
While the current release (531) works great here cpuwise, I just 
noticed something extremely odd here in 
http://localhost:/servlet/nodeinfo/performance/general :

#  Active pooled jobs: 136 (113.36%) [Rejecting incoming 
connections and requests!]
# Available threads: 54

Now, I understand that it's rejecting requests to do other work, right? 
... ... It's not actually serving any data at all, although it has quite 
a few connections in iptraf.

I've been monitoring it for around six minutes and the load isn't going 
down very quickly, I only saw one job drop off the queue. Very little 
data is being sent or recieved, and the cpu use of the daemon is 
practically negligible. (load average is 0.00 actually. Oy.) Also as I 
watch it now, the daemon is only connected to 5 servers. It's hard to 
watch it through iptraf, but  it doesn't look to me like any of the 
servers are sending or recieving any data at all.

The server isn't even responding to local requests for information. 
Something seems very wrong.

Errors I've recieved recently (The last 24 hrs) in the logs:
Nov 6, 2002 1:57:49 AM 
(freenet.node.ds.FSDataStoreElement$KeyInputStreamImpl, Finalizer): 
Please close() me manually in finalizer: Key: 
683f38303336237daf9543e23b285c04e703751b100302 Buffer: 
freenet.fs.dir.NativeFSDirectory$ExternalNativeBuffer@7b4703 New: true ( 
0 of 65600 read)
java.lang.IllegalStateException: unclosed
at 
freenet.node.ds.FSDataStoreElement$KeyInputStreamImpl.finalize(FSDataStoreElement.java:312)
at java.lang.ref.Finalizer.invokeFinalizeMethod(Native Method)
at java.lang.ref.Finalizer.runFinalizer(Finalizer.java:83)
at java.lang.ref.Finalizer.access$100(Finalizer.java:14)
at 
java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:160)
===
StateChain started at Wed Nov 06 01:48:20 EST 2002
Current state: Request Done @ f95052bb7196f417
===
Nov 6, 2002 4:53:24 AM (freenet.node.states.request.TransferReply, 
QThread-1538): Upstream node sent bad data!
Nov 6, 2002 4:53:24 AM (freenet.node.states.request.TransferReply, 
QThread-1537): Failed to send data with CB 0x81 (CB_BAD_DATA), on chain 
9a94e18541637251

If you need any other information, please let me know.

___
support mailing list
[EMAIL PROTECTED]
http://hawk.freenetproject.org/cgi-bin/mailman/listinfo/support



[freenet-support] Re: Freenet bug?

2002-11-06 Thread misty-
Hmm. I've noticed something recently. I have had the two same 
connections 'open' according to 
http://localhost:/servlet/nodeinfo/networking/ocm for a insanely 
long amount of time. Iptraf reports no connections are currently 
running, certaintly not by those ip addresses.

Peer addrOpenSend CountReceivingLifetimeMessages ThreadTypeID 
tcp/194.153.168.129:52196 yes 0 yes 34422575 1 QThread-1783 
Inbound 1a00355 
tcp/213.153.48.24:2561 yes 0 no 13584673 3 QThread-1817 Inbound 3af8a6


My daemon is still using no cpu and is still according to it overloaded 
severely.

Diagnostics reports really weird values in some bits:

insufficient threads says there have never been an occurence of no 
thread being available for a task.

http://localhost:/servlet/nodestatus/diagnostics/jobsPerQThread/hour

also shows the 'qthreads' stopped doing tasks at around 7am, and all 
entries afterwards are NaN

hour1036573200  11.555084745762711  14.051661415214742  
1.0 46.0472
hour1036576800  15.421875   16.5401368186334NaN 
NaN 384
hour1036580400  14.341708542713567  14.385171205150542  
NaN NaN 199
hour1036584000  NaN NaN NaN NaN 0
hour1036587600  NaN NaN NaN NaN 0


http://localhost:/servlet/nodestatus/diagnostics/globalQueryTrafficDeviation/hour

shows some interesting information, although I can't understand heads or 
tails of what it's trying to say.

Again, after 7am, interesting information occurs. in this instance 
however, all entries match eachother exactly! (no std deviation. minimum 
is exactly the same as maximum... really odd)

I'd include examples here but copy and pasting is producing strange 
results. wait, let me see...

I think this will work:

hour1036580400  3893.9370370370366  2.9721561091352338  
3890.1  3895.85554  6
hour1036584000  3895.85554  0.0 
3895.85554  3895.85554  6
hour1036587600  3895.85554  0.0 
3895.85554  3895.85554  6

... That sort of worked. Anyway, I think you can see that all the 
entries match. In fact, every single one matches after 7am. :/

I can't think of any other data I can include that would help. If you 
need something let me know, I'm leaving this node running as it's 
basically not productive, but also not hurting anything by running in 
this state.

In the last four hours, the amount of jobs to do has not gone down by 
more than one, and in some cases it has increased. :/

I think something is seriously fubared somewhere important in this thing 
^^;

Tim McGrath

___
support mailing list
[EMAIL PROTECTED]
http://hawk.freenetproject.org/cgi-bin/mailman/listinfo/support



Re: [freenet-support] Re: Freenet bug?

2002-11-06 Thread misty-
I *was* using 501. I think 503 fixed this.

I've been running it for a few hours and it's both functioning at low 
cpu use *and* it's working too.

Tim McGrath

___
support mailing list
[EMAIL PROTECTED]
http://hawk.freenetproject.org/cgi-bin/mailman/listinfo/support



[freenet-support] Freenet uses java and I'm a loon.

2002-11-05 Thread misty-
On Tue, Nov 05, 2002 at 04:53:07PM +, Matthew Toseland wrote:
  Anyway, I just noticed freenet figures out the loadaverage NOT by the 
  operating system, but by the amount of threads in use vs threads not in 
  use. This means settings greater than 1 are useless, for obvious 
 Well, we don't think they are completely _useless_. But java does not
 provide us with anything useful like CPU usage, so we have to make do.
Hmm. My lack of knowledge of java rears it's ugly head here. I simply 
had assumed it was capable of getting the information from the operating 
system not realizing java (Nor windows for that matter) doesn't have 
that ability. Dohmeter++

  reasons. This also means that the configuration setting is misleading, 
  confusing, and basically useless for a real world config. We (I most 
  certaintly at least) cannot rely on a setting that doesn't actually do 
  anything useful. I believe currently the only real way to reduce the 
  amount of cpu used in a REAL way is to actually lower the amount of 
  threads and the amount of connections to other servers that can be used.
 Nodes have often run with many connections without hogging the whole CPU 
 or the whole network connection. Connections really aren't that
 expensive. The threads are mostly idle, likewise, since most of them are
 used for blocking comms. We could rewrite fred to use nonblocking I/O,
 and we may eventually, but it would be an enormous amount of work and
 have portability-to-free-JVMs issues (although the current code has
 those too)

Hmm. I'm not saying rewrite it, and I didn't mean to attack you. I'll 
be the first to admit that when I was writing this last night I was a 
bit tired and wasn't thinking completely clearly, nor did I bother to 
read what I wrote. As I read my own writing, I notice my frustration 
was making me quite a bit more hostile than I intended. Please accept 
my apologies.

Let me try to explain what I'm seeing here.

With the default settings of 60 server connections and 120 threads, my 
computer after it's being accessed for a while bogs down considerably 
and my load average soars above 15, sometimes as high as 20 depending on 
if I'm trying to do something else. (Nearly anything, really.)

I've tried a number of things that have helped in minor ways: I've 
disabled datastore encryption (Which I *KNOW* I shouldn't advocate but 
it did help) hacked the startup file to run the daemon niced 19 (Which 
helped me take control of my system back whenever the daemon would go 
basically insane...)

(Note I discribe 'basically insane' as while watching my gkrellm meter 
without freenet running I get ~70 procs running. With freenet running 
for a while, I have well over *300* procs running around. I uh. Don't 
think it's supposed to be doing that.)

While doing these things both decreased the daemon's response time, and 
enabled me to control the machine whenever the daemon would lose it's 
mind, freenet still makes the load average soar to around 14-18. I can't 
have the daemon running and do other things like this.

The only *really* noticable way I found to lower the loadaverage was 
when I decreased the amount of threads running to 1. I suddenly had a 
practically useless daemon, but it gave me ideas, so I experimented with 
the thread settings as I watched my gkrellm meter to give me the amount 
of procs in use. I quickly learned that despite the threads setting, I'd 
still spawn a large number of threads whenever an outside connection 
contacted my server, (I'm watching it via iptraf) and I realized the 
server connections setting controlled this.

I experimented, and experimented, and experimented.

I've found that no matter what I do, if I increase *either* the server 
connections to somewhere above 20 (lowest I tried above that was 30) or 
the maximum amount of threads above 20, (again, lowest I tried 
above this was 30) things start to overload my machine really fast.

It's a large difference between 20 and 30. For either setting. My load 
average maximum is generally very low when at 20, between 0.5 and 1, 
sometimes as high as 2 when a lot of servers get lucky and get in the 
queue. When I try setting 30 on either server connections or maximum 
threads, my load average suddenly has this annoying tendency to soar 
past 4 or even 5. I don't really understand what's going on here so 
comments are appreciated.

Now before I go any further, I'd like to humbly ask, since I don't 
understand, how the Overloadlow/high settings are useful. When the 
low/high thresholds in threads are hit what is supposed to happen? 

It seems to me - *seems* as I don't actually *know* - that 
when the threshold is reached, the remaining 'free' threads aren't used 
by anything. I'm starting to think my assumptions are wrong here and that 
maybe I should do 20/120 and put that as my low threshold point and 
leave the maxthreads setting alone. I'm worried that setting the threads 
this low is a bad idea and the general