diff --git a/src/engine.c b/src/engine.c index 5178de914e7770cb3d23c2bb04381bdbfa64e0ff..e9e3f15c2eb3f37a777e3652f564bd97a3a18a53 100644 --- a/src/engine.c +++ b/src/engine.c @@ -2666,7 +2666,7 @@ void engine_init_particles(struct engine *e, int flag_entropy_ICs) { clocks_gettime(&time2); /* Ready to go */ - e->step = -1; + e->step = 0; e->forcerebuild = 1; e->wallclock_time = (float)clocks_diff(&time1, &time2); diff --git a/src/scheduler.c b/src/scheduler.c index 18c66133633750874b7f41c7f28ab447db1db096..c2fe4126ce170c5f27c9edef4e38278b6ae4efe7 100644 --- a/src/scheduler.c +++ b/src/scheduler.c @@ -135,6 +135,7 @@ static void scheduler_splittask(struct task *t, struct scheduler *s) { ((t->type == task_type_kick1) && t->ci->nodeID != s->nodeID) || ((t->type == task_type_kick2) && t->ci->nodeID != s->nodeID) || ((t->type == task_type_drift) && t->ci->nodeID != s->nodeID) || + ((t->type == task_type_timestep) && t->ci->nodeID != s->nodeID) || ((t->type == task_type_init) && t->ci->nodeID != s->nodeID)) { t->type = task_type_none; t->skip = 1; @@ -964,12 +965,18 @@ void scheduler_reweight(struct scheduler *s, int verbose) { case task_type_ghost: if (t->ci == t->ci->super) cost = wscale * t->ci->count; break; + case task_type_drift: + cost = wscale * t->ci->count; + break; case task_type_kick1: cost = wscale * t->ci->count; break; case task_type_kick2: cost = wscale * t->ci->count; break; + case task_type_timestep: + cost = wscale * t->ci->count; + break; case task_type_init: cost = wscale * t->ci->count; break; @@ -1165,6 +1172,7 @@ void scheduler_enqueue(struct scheduler *s, struct task *t) { case task_type_kick1: case task_type_kick2: case task_type_drift: + case task_type_timestep: case task_type_init: qid = t->ci->super->owner; break;