Comment 1 for bug 606783

Revision history for this message
Arago (arago) wrote :

I think that checking all torrent files simultaneously is very bad idea, because HDD can read only one file in a time, and such behavour will cause very heavy load to the heads drive and overall transfer speed will fall dramatically. But if files of different torrents are physically located on different disks (not partitions) - this is a good idea. So it's must be check for physical location of files.

And I'm using mhddfs to join two physical disks and transparently put files to different disks (it's not RAID or LVM - disks are completely independent, and have separated filesystems) - so we should look for this (and for unionfs/aufs mounts too), because this can speed up check if some files was written to first disk, and another count of files to second - we can read two (or more if more disks are joined) files in a time (but, of course, there must be a check for joined partitions on same disk). And, if there is a RAID or LVM - we should handle it as one drive, imho.

As for second wish - I'm want this too. Let's count torrents that idle for some minutes as stalled, leave them active and waiting for seeders and start next torrent (and manage max active torrents/max active downloads settings dynamically). And if first torrent will found seed - we should limit speed of other downloading torrents to get maximum speed for seedless torrent (because usually such torrents have very low download speed, and we should try to get all possibly speed from the seed), and if speed of seedless torrent will raise - we should limit seedfull torrents more heavily (and even pause them). I.e. if torrent downloads badly - we should try to provide enough bandwidth for it, but we shouldn't pause all other torrents, because this seedless torrent may have download speed like 1 kb/s and all remaining bandwidth will be wasted in this case.

Let's be smart...