diff options
author | Harald Musum <musum@verizonmedia.com> | 2021-04-06 14:19:35 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-04-06 14:19:35 +0200 |
commit | 778894b29b13831115c19ff13285541a10ab2d30 (patch) | |
tree | 62ea7aa8689a3d5421f54cd0ac6c5290e82f23dc /container-di/benchmarks/src | |
parent | 5df00bb90a04082847440716bcb6146bdda0ca06 (diff) |
Revert "Gjoranv/merge di into core (rebased)"
Diffstat (limited to 'container-di/benchmarks/src')
-rw-r--r-- | container-di/benchmarks/src/test/java/com/yahoo/component/ComponentIdBenchmark.java | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/container-di/benchmarks/src/test/java/com/yahoo/component/ComponentIdBenchmark.java b/container-di/benchmarks/src/test/java/com/yahoo/component/ComponentIdBenchmark.java new file mode 100644 index 00000000000..bcdaff110e1 --- /dev/null +++ b/container-di/benchmarks/src/test/java/com/yahoo/component/ComponentIdBenchmark.java @@ -0,0 +1,50 @@ +// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +package com.yahoo.component; + +/** + * @author baldersheim + */ +public class ComponentIdBenchmark { + public void run() { + boolean result=true; + String strings[] = createStrings(1000); + // Warm-up + out("Warming up..."); + for (int i=0; i<30*1000; i++) + result = result ^ createComponentId(strings); + + long startTime=System.currentTimeMillis(); + out("Running..."); + for (int i=0; i<100*1000; i++) + result = result ^ createComponentId(strings); + out("Ignore this: " + result); // Make sure we are not fooled by optimization by creating an observable result + long endTime=System.currentTimeMillis(); + out("Create anonymous component ids of 1000 strings 100.000 times took " + (endTime-startTime) + " ms"); + } + + private final String [] createStrings(int num) { + String strings [] = new String [num]; + for(int i=0; i < strings.length; i++) { + strings[i] = "this.is.a.short.compound.name." + i; + } + return strings; + } + + private final boolean createComponentId(String [] strings) { + boolean retval = true; + for (int i=0; i < strings.length; i++) { + ComponentId n = ComponentId.createAnonymousComponentId(strings[i]); + retval = retval ^ n.isAnonymous(); + } + return retval; + } + + private void out(String string) { + System.out.println(string); + } + + public static void main(String[] args) { + new ComponentIdBenchmark().run(); + } + +} |