@Test public void testPerformance() throws Exception { CompressedIdBuffer buffer = new CompressedIdBuffer(BufferType.LARGE, true); int counter = 0; long t = System.currentTimeMillis(); for (long i = 0; i < 10000000; i++) { long value = i % 10000; if (value % 10 == 0) { for (int j = 0; j < 100; j++) { buffer.store(value); } counter += 100; } else { buffer.store(value); counter++; } } buffer.flush(); t = System.currentTimeMillis() - t; System.out.println( "Stored " + counter + " values in " + t + " ms. " + buffer + " bytes/value " + buffer.getBytesPerValue()); }
private void assertStoreAndRead(long... data) { for (long value : data) { idBuffer.store(value); } idBuffer.flush(); System.out.println("idBuffer = " + idBuffer + " for " + Arrays.toString(data)); idBuffer.toggleMode(); for (long value : data) { assertEquals(value, idBuffer.read()); } }