qbittorrent / qBittorrent

qBittorrent BitTorrent client
https://www.qbittorrent.org
Other
27.79k stars 3.92k forks source link

Make use of multiple cores to speed-up opening an application with many torrents #19405

Open helperman opened 1 year ago

helperman commented 1 year ago

Suggestion

If you have a lot of torrents (and trackers) added in qbittorrent it takes too much time to open an application (about ~10-15 minutes). If opening task manager you can see qbittorrent.exe makes use of only one core (16 threads are created but cpu usage is 12% out of 100% for 8 threads available on CPU, which means only 1 thread is actually working). Isn't it possible to use all available CPU cores or at least more than one core?

Use case

No response

Extra info/examples/attachments

No response

rumplin commented 1 year ago

First you would need proof that the bottleneck is not your hard drive. The other thing that could take long is the "recheck" process. That might get improved with more threads running, but again, the HDD performance plays a role here too. Too many IO requests to the HDD might slow it immensely down.

luzpaz commented 1 year ago

First you would need proof that the bottleneck is not your hard drive.

@rumplin how can a user determine this ?

helperman commented 1 year ago

HDD is absolutely new. It shows no activity, but CPU is loaded constantly. Bottleneck is code itself when some unknown conditions are met (possibly a lot of torrents, a lot of trackers(!), a lot of files in torrents or something like this).

Stress testing would be benefitial (!)

@luzpaz Just take a look at taskmgr.exe.

0000000555

0000000554