John wrote > 1) What should we be working on if we did a task switch now? This detects > that cases where we need to trigger a task switch immediately because of a > potential missed deadline.
I've seen the following (presumably in chase of a "missed deadline") - I forget which release of the BOINC client I was using. [I run off-line; my interval-between-connects is 1.1 days; my additional work days are 1.x days (for a total ready-queue size of 2+ days).] From one project, ten tasks (typically taking 4 hours each) get downloaded. They have deadlines four+ days away. Lo and behold - several of these new tasks immediately end up running in EDF. ---- I keep advocating 'scheduling across a span of time'. To my mind, there are 100 hours to run these tasks before deadline. Take away the interval-between-connects, and that leaves 70+ hours to complete crunching of all of these tasks. Even if these tasks were run sequentially, I would expect "scheduling" to conclude that they could finish in less than two days - that is, *before* deadline. So why does "scheduling" think there is a potential missed deadline? The only answer I can come up with is that "resource share" is being factored in - if this is one of five projects, then 20% (they all have equal shares) of 70 hours is 14 hours - not enough to do the estimated 40 hours of work. But this is a four-core system -- so 20% of (70 * 4) is 56 hours of crunching that this project is "entitled" to in the next three days. A need to do 40 hours of work in three days will potentially miss the target if there are actually less than 56 hours available to this project in that time span. But if they are not available to *this* project, it must be because there is an even greater need by another project. Yet none of the other projects are running in EDF. For me, this case does not add up to a "potential missed deadline". mikus _______________________________________________ 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.
