Ticket #529 (closed Enhancement: fixed)

Opened 2 years ago

Last modified 6 months ago

Time remaining for downloads is unreliable

Reported by: markrian Owned by: charles
Priority: Low Milestone: 1.73
Component: libtransmission Version: 0.95
Severity: Minor Keywords:
Cc:

Description

It seems that transmission calculates the time remaining to download a file by simply dividing the amount of data left by the current download speed. Obviously, speeds vary over the course of a download, and so then does the estimated time remaining. This can vary by quite a lot, making the estimation unreliable. It would make sense to uses some sort of smoothing, or a rolling average to give a better estimate.

KTorrent offers various methods for calculating time remaining estimates, however, their 'KTorrent' method is a combination of various methods that was found to be the most accurate in their testing. I've found it to be surprisingly accurate and reliable.

Perhaps their method could be brought to Transmission without too much trouble?

Attachments

eta.diff Download (4.6 KB) - added by MSN_Exploder 18 months ago.
eta2.diff Download (5.6 KB) - added by MSN_Exploder 17 months ago.
eta_tr.patch Download (9.8 KB) - added by fulgas 17 months ago.

Change History

Changed 2 years ago by livings124

  • priority changed from Normal to Low
  • severity changed from Normal to Minor

Changed 2 years ago by charles

Changed 23 months ago by charles

  • owner set to charles
  • component changed from Transmission to libtransmission

Changed 18 months ago by MSN_Exploder

Changed 18 months ago by MSN_Exploder

Hi, i wrote a small patch for using the KTorrent style ETA in Transmission.

HtH

MSN_Exploder

Changed 18 months ago by charles

  • milestone changed from None Set to 1.40

Changed 18 months ago by charles

  • status changed from new to assigned

Changed 18 months ago by charles

MSN_Exploder: it looks like that patch uses static variables for the samples... wouldn't that mean that different torrents would get each others' samples mixed in with their own?

Changed 17 months ago by MSN_Exploder

Sorry for my late reply, kinda busy right now.

i think adding all samples into the torrent struct should help. But i'm really not into the whole C Coding... Maybe you can point me into the right direction.

Changed 17 months ago by MSN_Exploder

I revised the patch, removed all wrong statics... It should work correctly now.

(had to add a tiny ugly "hack", maybe you know a better solution)

Changed 17 months ago by MSN_Exploder

Changed 17 months ago by fulgas

Hi, i'm sorry if i'm stepping into someone shoes but i did a almost equal eta to KT as a exercise. It took a couple of hours. I tried to follow tr code guidelines.

regards,

Nelson Silva

Changed 17 months ago by fulgas

Changed 17 months ago by charles

  • milestone changed from 1.40 to Sometime

Changed 10 months ago by charles

  • keywords patch-needed added

Changed 9 months ago by geertjan

Why is this marked as "patch needed"? There seem to be two patches available here.

Just asking, because I love Transmission but the ETA is currently quite useless, jumping from very high to very low all the time.

Changed 9 months ago by charles

There seem to be two patches available here.

Have you tried them? Give them a spin and tell me you think they're ready to go in.

Changed 9 months ago by charles

  • status changed from assigned to closed
  • resolution set to fixed
  • milestone changed from Sometime to 1.73

I used a simplified version of Pan's code. It was easy to drop in, seems to work reasonably well, and was implemented in 5 lines instead of 300.

Added in trunk in r8770 for 1.73.

Changed 9 months ago by charles

oops, make that r8771 :)

Changed 8 months ago by geertjan

Charles, just wanted to say thanks. I was actually planning to try the posted patches today, I didn't want to be one of those people who just ask things from open source developers without contributing anything. But I'll just look forward to version 1.73 now :)

Changed 6 months ago by charles

  • keywords backport-1.5x added; patch-needed removed

Changed 6 months ago by charles

  • keywords backport-1.5x removed
Note: See TracTickets for help on using tickets.