I think what you're saying is that the job's fraction-done reporting is wrong; e.g. it reports 50% done when it's actually only 25% done. This causes the RR sim to think it will meet its deadline, potentially causing it to get preempted by unstarted identical jobs.
The change should handle this case correctly. -- David [email protected] wrote: > =================================================================== > --- branches/boinc_core_release_6_10/checkin_notes 2010-01-14 > 21:37:15 UTC (rev 20165) > +++ branches/boinc_core_release_6_10/checkin_notes 2010-01-14 > 21:40:31 UTC (rev 20166) > @@ -188,3 +188,26 @@ > client/ > scheduler_op.cpp > work_fetch.cpp > + > +David 5 Jan 2010 > + - client: scheduling problem: > + - a project overestimates job FLOP counts > + - the client starts jobs in EDF mode > + - as job progresses and fraction done increases, > + its completion time estimate decreases until > + it's no longer a deadline miss. > + - job gets preempted by other job from that project; > + you end up with lots of partly completed jobs. > + Solution (I hope): if an app version has running jobs, > + compute a "temp DCF" for the app version, > + which is the min of dynamic/static estimates for its jobs. > + Apply this scaling factor to completion time estimates > + for unstarted jobs in RR simulation > + - client: the estimation of remaining time of running jobs was wrong > + (how did this bug survive so long?) > + > + client/ > + app.h > + client_types.h > + rr_sim.cpp > + work_fetch.cpp > > > The problem described is not the actual problem. The basic problem can > happen even if the estimate is exact. > > The real problem is that a task when running may be using CPU time faster > than its resource fraction. This is true if the resource fraction for the > project < number of CPUs for the task / ncpus. In this case, at some point > during the run of the task, the task will no longer be in deadline trouble. > If there are other tasks in deadline trouble with later deadlines, these > tasks will instantly preempt the running task. > > The fix for this is an EDF simulation that has the ability to turn off > preemption. The fix checked in will have no effect on this problem. > > jm7 > _______________________________________________ boinc_dev mailing list [email protected] http://lists.ssl.berkeley.edu/mailman/listinfo/boinc_dev To unsubscribe, visit the above URL and (near bottom of page) enter your email address.
