From b4da7cd1126f691d88edcf959ec8734e35a85017 Mon Sep 17 00:00:00 2001 From: Mathieu Baudier Date: Sun, 30 Aug 2020 14:24:52 +0200 Subject: [PATCH] Improve UUID benchmarking. --- .../src/org/argeo/util/UuidUtils.java | 28 ++++++++++++++----- 1 file changed, 21 insertions(+), 7 deletions(-) diff --git a/org.argeo.util/src/org/argeo/util/UuidUtils.java b/org.argeo.util/src/org/argeo/util/UuidUtils.java index 54e6b2cb3..788d6b9b8 100644 --- a/org.argeo.util/src/org/argeo/util/UuidUtils.java +++ b/org.argeo.util/src/org/argeo/util/UuidUtils.java @@ -240,24 +240,38 @@ public class UuidUtils { public final static void main(String[] args) { UUID uuid; -// uuid= compactToUuid("996b1f5122de4b2f94e49168d32f22d1"); -// System.out.println(uuid.toString() + ", isRandom=" + isRandom(uuid)); - + uuid= compactToUuid("996b1f5122de4b2f94e49168d32f22d1"); + System.out.println(uuid.toString() + ", isRandom=" + isRandom(uuid)); + + // warm up + UUID.randomUUID(); + timeBasedRandomUUID(); + timeBasedUUID(); + UUID.randomUUID(); + timeBasedRandomUUID(); + timeBasedUUID(); + UUID.randomUUID(); + timeBasedRandomUUID(); + timeBasedUUID(); + long begin; long duration; + begin = System.nanoTime(); uuid = UUID.randomUUID(); duration = System.nanoTime() - begin; System.out.println(uuid.toString() + " in " + duration + " ns, isRandom=" + isRandom(uuid)); + begin = System.nanoTime(); - uuid = timeBasedRandomUUID(); + uuid = timeBasedUUID(); duration = System.nanoTime() - begin; System.out.println(uuid.toString() + " in " + duration + " ns, isTimeBasedRandom=" + isTimeBasedRandom(uuid)); -// System.out.println(toBinaryString(uuid, 8, ' ')); -// System.out.println(toBinaryString(uuid, 16, '\n')); + begin = System.nanoTime(); - uuid = timeBasedUUID(); + uuid = timeBasedRandomUUID(); duration = System.nanoTime() - begin; System.out.println(uuid.toString() + " in " + duration + " ns, isTimeBasedRandom=" + isTimeBasedRandom(uuid)); +// System.out.println(toBinaryString(uuid, 8, ' ')); +// System.out.println(toBinaryString(uuid, 16, '\n')); } } -- 2.30.2