Add new benchmark with no loggers at all
[lttng-ust-java-tests.git] / lttng-ust-java-tests-jul / src / test / java / org / lttng / ust / agent / benchmarks / jul / handler / JulHandlerBenchmarkBase.java
index 9ac3df5075ec4937d3b5fc636875ba7f2889cddc..201ff838d6b32974d4b0e94c81a451bf6ff12021 100644 (file)
@@ -93,7 +93,7 @@ public abstract class JulHandlerBenchmarkBase {
      */
     @Test
     public void runBenchmark() {
-        if (handler != null) {
+        if (logger != null && handler != null) {
             logger.addHandler(handler);
         }
 
@@ -105,18 +105,18 @@ public abstract class JulHandlerBenchmarkBase {
     }
 
     private static void runTest(Logger log, int nbThreads) {
-        long start, end, average, total = 0;
+        long total = 0;
         for (int i = 0; i < NB_RUNS; i++) {
             Runner runner = new Runner(nbThreads, NB_ITER, log);
 
-            start = System.nanoTime();
+            long start = System.nanoTime();
             runner.run();
-            end = System.nanoTime();
+            long end = System.nanoTime();
 
             total += (end - start);
         }
-        average = total / NB_RUNS;
-        System.out.println(nbThreads + " threads, average = " + average / NB_ITER + " ns/event");
+        long average = (total / NB_RUNS);
+        System.out.println(nbThreads + " threads, average = " + average / NB_ITER + " ns/loop");
     }
 
     // ------------------------------------------------------------------------
@@ -139,17 +139,15 @@ public abstract class JulHandlerBenchmarkBase {
 
         @Override
         public void run() {
-            for (Thread curThread : workerThreads) {
-                curThread.start();
-            }
+            workerThreads.forEach(Thread::start);
 
-            for (Thread curThread : workerThreads) {
+            workerThreads.forEach(t -> {
                 try {
-                    curThread.join();
+                    t.join();
                 } catch (InterruptedException e) {
                     e.printStackTrace();
                 }
-            }
+            });
         }
 
         private static class Worker implements Runnable {
@@ -158,6 +156,9 @@ public abstract class JulHandlerBenchmarkBase {
             private final int threadId;
             private final int nbIter;
 
+            @SuppressWarnings("unused")
+            private volatile int value = 0;
+
             public Worker(int threadId, int nbIter, Logger log) {
                 this.log = log;
                 this.threadId = threadId;
@@ -167,10 +168,12 @@ public abstract class JulHandlerBenchmarkBase {
             @Override
             public void run() {
                 for (int i = 0; i < nbIter; i++) {
-                    log.info("Thread " + threadId + ", iteration " + i);
+                    value = i;
+                    if (log != null) {
+                        log.info("Thread " + threadId + ", iteration " + i);
+                    }
                 }
             }
-
         }
     }
 }
This page took 0.025228 seconds and 4 git commands to generate.