jesec / rtorrent

stable, high-performance and low resource consumption BitTorrent client
GNU General Public License v2.0
185 stars 38 forks source link

Performance issue #34

Closed Germwalker closed 2 years ago

Germwalker commented 2 years ago

Hello,

I went from rtorrent 0.9.6 from rakshasa to your fork because i was less buggy and it got the console less launch mode. However, when i had a few To/month with the 0.9.6, now all torrents are on error state and i see rtorrent freezeing for few seconds. jesec/rtorrent 0.9.8 is always using 100% of the CPU while rakshasa/rtorrent 0.9.6 was peaking at ~50% with the same .rtorrent.rc and and session, i just updated bins.

I have ~600 torrents.

Some of the torrents error messages :

This is the CPU usage trace that let me think rtorrent process is stalling : 100

Flood is also sometimes stalling on the rtorrent interface, that didn't happend with rakshasa/rtorrent 0.9.6.

I know this version has some issues with the UDP DNS resolution that make rtorrent stall, so i have a local dnsmask server as DNS caching. My first resolv.conf line is nameserver 127.0.0.1.

How to make it work like it should ?

[EDIT] : stopping all torrents solve the problem. I guess it's the UDP nameserver resolution error. How can i track the bad UDP torrents or stop only UDP torrents ?

jesec commented 2 years ago

Disable UDP. UDP tracker is rarely used.

rTorrent can not do asynchronous DNS resolve for UDP tracker at this moment.

It is a current technical priority to implement that.