ygrek / mldonkey

cross-platform multi-network p2p daemon (previously at http://mldonkey.sourceforge.net/)
Other
240 stars 45 forks source link

Excessive CPU use and low download speed #44

Open jcea opened 4 years ago

jcea commented 4 years ago

Since a few months ago, same OS, same MLdonkey release 3.1.5, same configuration, after some time, the mldonkey process eats a complete CPU core and download speed is abysmal. If I restart the process, the CPU usage will be low and the download speed will be high... for a while.

The CPU core can be saturated even if nothing in the download queue/incoming. That is, not traffic at all, core 100%.

I upgraded to 3.1.6 a couple of months ago, and the problem persists.

This is a new behaviour . I have been using MLDONKEY for a decade or more and this bad behaviour is recent, a few months ago. Maybe the donkey network has changed and some new messages are bugging mldonkey.

I don't know ocaml, so I can not debug this by myself, but I can follow instructions if you direct me.

PS: With nothing to do, no shared files, nothing in the queue, the idle CPU time is 10%, a bit overkill to be only maintaining DHT presence... :-?

Thanks for your time.

ygrek commented 4 years ago
  1. Please post the output of sysinfo.
  2. What is your OS and hardware?
  3. What network(s) are you using (BT, edonkey, etc)?
  4. Please use the pmp script to get the run-time profile when the problems happens : pmp -i 40 -p PID (where PID is the pid of mlnet process (aka pgrep mlnet))
Testerprivate commented 4 years ago

jcea, just switch to false the option "enable_servers". On 3.1.5 it helped me. Later I will check on 3.1.6.

jcea commented 4 years ago

Where is that option, @Testerprivate ?

Thanks.

jcea commented 4 years ago

Ok, @Testerprivate . I have found it in the INI files, but not in the web GUI.

The comment says this:

        (* Set to true if you want mldonkey to connect to edonkey servers
          (enable_donkey must be true, and only experimental) *)
 enable_servers = true

Unfortunatelly, I use mldonkey for edonkey access, including using index servers. I can not disable such an option.

I am glad some other people are seeing mldonkey CPU abuse for no reason :-), too. I am not alone!

Testerprivate commented 4 years ago

jcea, by the way, if you enable enable_servers again, the problem no longer occurs. Magic! Check out, please. Perhaps this should be done “live”, that is, in the web interface or via telnet (ssh + Lynx).

jcea commented 4 years ago

jcea, by the way, if you enable enable_servers again, the problem no longer occurs. Magic! Check out, please. Perhaps this should be done “live”, that is, in the web interface or via telnet (ssh + Lynx).

I can not reproduce this.

I have CPU time >90% when idle after a few hours of starting mldonkey, and I have to restart it to improve situation for a while. The proposed workaround seems not to work in my case.