package org.nd4j.parameterserver.updater; import org.junit.Test; import org.nd4j.aeron.ipc.NDArrayMessage; import org.nd4j.aeron.ndarrayholder.InMemoryNDArrayHolder; import org.nd4j.linalg.factory.Nd4j; import org.nd4j.parameterserver.updater.storage.NoUpdateStorage; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; import static org.junit.Assume.assumeNotNull; /** * Created by agibsonccc on 12/2/16. */ public class ParameterServerUpdaterTests { @Test public void synchronousTest() { int cores = Runtime.getRuntime().availableProcessors(); ParameterServerUpdater updater = new SynchronousParameterUpdater(new NoUpdateStorage(), new InMemoryNDArrayHolder(Nd4j.zeros(2, 2)), cores); for (int i = 0; i < cores; i++) { updater.update(NDArrayMessage.wholeArrayUpdate(Nd4j.ones(2, 2))); } assertTrue(updater.shouldReplicate()); updater.reset(); assertFalse(updater.shouldReplicate()); assumeNotNull(updater.toJson()); } }