Skip to content

Instantly share code, notes, and snippets.

@zivce
Created May 15, 2021 08:19
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save zivce/73fe2cd7b5d2f4eec2d1996d0565a990 to your computer and use it in GitHub Desktop.
Save zivce/73fe2cd7b5d2f4eec2d1996d0565a990 to your computer and use it in GitHub Desktop.
package de.jawb.jmh.benchmark.example.uniquechars;
import org.openjdk.jmh.annotations.Benchmark;
import org.openjdk.jmh.annotations.BenchmarkMode;
import org.openjdk.jmh.annotations.Fork;
import org.openjdk.jmh.annotations.Measurement;
import org.openjdk.jmh.annotations.Mode;
import org.openjdk.jmh.annotations.OutputTimeUnit;
import org.openjdk.jmh.annotations.Scope;
import org.openjdk.jmh.annotations.Setup;
import org.openjdk.jmh.annotations.State;
import org.openjdk.jmh.annotations.Threads;
import org.openjdk.jmh.annotations.Warmup;
import org.openjdk.jmh.infra.Blackhole;
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
import java.util.concurrent.TimeUnit;
@Warmup(iterations = 3, time = 2, timeUnit = TimeUnit.MILLISECONDS)
@Measurement(iterations = 3, time = 2, timeUnit = TimeUnit.MILLISECONDS)
@Fork(1)
@State(Scope.Benchmark)
@OutputTimeUnit(TimeUnit.MILLISECONDS)
@BenchmarkMode({Mode.Throughput})
public class CompilationBenchmark {
private static final int LIST_LENGTH = 100;
private List<String> strings = new ArrayList<>(LIST_LENGTH);
@Benchmark
public void testStringBuilder_Huge_Method(Blackhole bh) {
StringBuilder sb = new StringBuilder(LIST_LENGTH);
for(String s : strings) {
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
sb.append(s);
}
// bh.consume(sb.append(sb1.append(sb2).append(sb3).toString()));
}
@Benchmark
public void testStringBuilder_Smaller_Method(Blackhole bh) {
StringBuilder sb = new StringBuilder(LIST_LENGTH);
for(String s : strings) {
sb.append(s);
}
for(String s : strings) {
sb.append(s);
}
for(String s : strings) {
sb.append(s);
}
for(String s : strings) {
sb.append(s);
}
// bh.consume(sb.toString());
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment