Sync post

This commit is contained in:
cyberpwn 2021-08-22 03:49:51 -04:00
parent 28e41a0ae9
commit 858c5a27ad
2 changed files with 10 additions and 12 deletions

View File

@ -417,11 +417,13 @@ public class IrisEngine extends BlockPopulator implements Engine {
burst().burst(multicore,
() -> getCaveModifier().modify(x, z, vblocks, multicore),
() -> getDecorantActuator().actuate(x, z, blocks, multicore),
() -> getRavineModifier().modify(x, z, vblocks, multicore),
() -> getPostModifier().modify(x, z, vblocks, multicore)
() -> getRavineModifier().modify(x, z, vblocks, multicore)
);
getDecorantActuator().actuate(x, z, blocks, multicore);
getPostModifier().modify(x, z, vblocks, multicore);
burst().burst(multicore,
() -> getDecorantActuator().actuate(x, z, blocks, multicore),
() -> getMantle().insertMatter(x >> 4, z >> 4, BlockData.class, blocks, multicore),
() -> getDepositModifier().modify(x, z, blocks, multicore)
);

View File

@ -64,19 +64,15 @@ public class IrisPostModifier extends EngineAssignedModifier<BlockData> {
PrecisionStopwatch p = PrecisionStopwatch.start();
AtomicInteger i = new AtomicInteger();
AtomicInteger j = new AtomicInteger();
BurstExecutor burst = burst().burst(multicore);
Hunk<BlockData> sync = output.synchronize();
for (i.set(0); i.get() < output.getWidth(); i.getAndIncrement()) {
burst.queue(() -> {
for (j.set(0); j.get() < output.getDepth(); j.getAndIncrement()) {
int ii = i.get();
int jj = j.get();
post(ii, jj, sync, ii + x, jj + z);
}
});
}
burst.complete();
getEngine().getMetrics().getPost().put(p.getMilliseconds());
}