2 protected void doLiveImpl() {
3 simulateKernel.setArguments(mmMem, omMem, worldsMem, mmOffsetsMem, omOffsetsMem, mmCSRMem, omCSRMem, partsMem);
5 if (blockSize < Math.max(nbOM, nbMM)) {
6 throw new RuntimeException("blockSize (" + blockSize +
7 ") too small to execute the simulation");
10 OCLEvent event = queue.enqueue1DKernel(simulateKernel, nbSim * blockSize, blockSize);
12 OCLEvent.waitFor(event);
13 OCLUtils.printEventStats("simulate", event);
15 if (! isBatchModeEnabled()) {
16 queue.blockingReadBuffer(mmMem, mmList, 0, mmMem.getSize());
17 queue.blockingReadBuffer(omMem, omList, 0, omMem.getSize());
18 queue.blockingReadBuffer(worldsMem, worlds, 0, worldsMem.getSize());