如何计算每个文件的复制开销?
How can I calculate the copy overhead per file?
如果给定文件大小与其各自传输时间的映射,我如何估算每个文件作为开销的常数因子?
例如
File size Transfer time
--------------------------------
1 kB 2 ms
1000 kB 1001 ms
--------------------------------
由此table我可以看出每个文件的开销为 1 ms,每个 kB 需要另外 ms。但是我该如何从数学上做到这一点?
我需要在 C++ 中将其计算为移动平均值,以估计剩余复制时间,如果您能提供一些想法,我将不胜感激(只需数学或伪代码即可。)
正如你所说,有两个变量:
T
是访问一个文件的时间;
A
是每千字节 (kB) 的访问时间。
因此,对于两个文件:
2ms = T + 1A
1001ms = T + 1000A
从 2 中减去 1):
(1001ms - 2ms) = (T - T) + (1000A - A)
999ms = 0 + 999A
999ms = 999A
A = 1ms
代替 1 中的 A
:
2ms = T + 1
1ms = T
简单的联立方程!
如果给定文件大小与其各自传输时间的映射,我如何估算每个文件作为开销的常数因子?
例如
File size Transfer time -------------------------------- 1 kB 2 ms 1000 kB 1001 ms --------------------------------
由此table我可以看出每个文件的开销为 1 ms,每个 kB 需要另外 ms。但是我该如何从数学上做到这一点?
我需要在 C++ 中将其计算为移动平均值,以估计剩余复制时间,如果您能提供一些想法,我将不胜感激(只需数学或伪代码即可。)
正如你所说,有两个变量:
T
是访问一个文件的时间;A
是每千字节 (kB) 的访问时间。
因此,对于两个文件:
2ms = T + 1A
1001ms = T + 1000A
从 2 中减去 1):
(1001ms - 2ms) = (T - T) + (1000A - A)
999ms = 0 + 999A
999ms = 999A
A = 1ms
代替 1 中的 A
:
2ms = T + 1
1ms = T
简单的联立方程!