One way to look at this issue is as follows: What do you want the computer to spend it's time resources doing?<br>1) Analyzing all aspects of the task and the current conditions which could provide a very accurate time estimate.<br>2) Concentrate on moving the data or crunching it with time calculations done on available wait times.<br>It's often the case where an accurate completion time estimate would take longer than just doing the requested task.