|
@@ -306,17 +306,21 @@ static int _parallel_heft_push_task(struct starpu_task *task, unsigned prio)
|
|
nimpl_best = nimpl;
|
|
nimpl_best = nimpl;
|
|
}
|
|
}
|
|
|
|
|
|
- if (isnan(local_task_length[worker][nimpl]))
|
|
|
|
|
|
+ if (isnan(local_task_length[worker][nimpl])) {
|
|
/* we are calibrating, we want to speed-up calibration time
|
|
/* we are calibrating, we want to speed-up calibration time
|
|
* so we privilege non-calibrated tasks (but still
|
|
* so we privilege non-calibrated tasks (but still
|
|
* greedily distribute them to avoid dumb schedules) */
|
|
* greedily distribute them to avoid dumb schedules) */
|
|
|
|
+ fprintf(stderr,"still nan\n");
|
|
calibrating = 1;
|
|
calibrating = 1;
|
|
|
|
+ }
|
|
|
|
|
|
if (isnan(local_task_length[worker][nimpl])
|
|
if (isnan(local_task_length[worker][nimpl])
|
|
- || _STARPU_IS_ZERO(local_task_length[worker][nimpl]))
|
|
|
|
|
|
+ || _STARPU_IS_ZERO(local_task_length[worker][nimpl])) {
|
|
/* there is no prediction available for that task
|
|
/* there is no prediction available for that task
|
|
* with that arch yet, so switch to a greedy strategy */
|
|
* with that arch yet, so switch to a greedy strategy */
|
|
|
|
+ fprintf(stderr,"unknown\n");
|
|
unknown = 1;
|
|
unknown = 1;
|
|
|
|
+ }
|
|
|
|
|
|
if (unknown)
|
|
if (unknown)
|
|
continue;
|
|
continue;
|
|
@@ -442,6 +446,7 @@ static void initialize_parallel_heft_policy(struct starpu_machine_topology *topo
|
|
_starpu_sched_find_worker_combinations(topology);
|
|
_starpu_sched_find_worker_combinations(topology);
|
|
|
|
|
|
ncombinedworkers = topology->ncombinedworkers;
|
|
ncombinedworkers = topology->ncombinedworkers;
|
|
|
|
+ fprintf(stderr,"combined %d\n", ncombinedworkers);
|
|
|
|
|
|
unsigned workerid;
|
|
unsigned workerid;
|
|
for (workerid = 0; workerid < nworkers; workerid++)
|
|
for (workerid = 0; workerid < nworkers; workerid++)
|