jmh

Por qué devolver una referencia de objeto Java es mucho más lento que devolver una primitiva

Estamos trabajando en una aplicación sensible a la latencia y hemos estado microbenchmarking todo tipo de métodos (utilizando ... mvn clean install java -jar .\target\microbenchmarks.jar function.ReturnEnumObjectVersusPrimitiveBenchmark -i 5 -wi 5 -f 1

¿Por qué StringBuilder # append (int) es más rápido en Java 7 que en Java 8?

Mientras investigaba para un pequeño debate w. r. t. usando "" + n y Integer.toString(int) para convertir un entero primiti ... ngo que alguien familiarizado con las partes relacionadas del código fuente de JRE tendría que responder a estas preguntas...

newInstance vs new en jdk-9 / jdk-8 y jmh

He visto muchos hilos aquí que comparan y tratan de responder que es más rápido: newInstance o new operator. Mirando el códi ... avgt 5 4.554 ± 0.616 ns/op Puede alguien arrojó alguna luz sobre ¿por qué hay una diferencia tan grande?

Caída de rendimiento impredecible de Java 8 stream sin ninguna razón obvia

Estoy usando Java 8 streams para iterar sobre una lista con sublistas. El tamaño de la lista externa varía entre 100 y 1000 ( ... 79277.532 ? 2040.740 ops/s StreamBenchmark.stream 100 thrpt 5 161244.347 ? 3882.619 ops/s

Por qué el patrón de encadenamiento StringBuilder es sb.append (x).añadir (y) más rápido que sb normal.append (x); sb.añadir (y)?

Tengo una marca microbench que muestra resultados muy extraños: @BenchmarkMode(Mode.Throughput) @Fork(1) @State(Scope.Threa ... 8538.236 ± 209.924 ops/s Chaining.typicalChaining thrpt 40 36729.523 ± 988.936 ops/s ¿Alguien sabe cómo es posible?

Rendimiento errático de los arrays.flujo().asignar().resumir()

Me he topado con una instancia de perfil de rendimiento extremadamente errático de una operación de mapa/reducción muy simple ... 8.0_20" Java(TM) SE Runtime Environment (build 1.8.0_20-b26) Java HotSpot(TM) 64-Bit Server VM (build 25.20-b23, mixed mode)

Análisis extremadamente lento de la zona horaria con el nuevo java.API de tiempo

Estaba migrando un módulo de las antiguas fechas de java al nuevo java.tiempo API, y notó una gran caída en el rendimiento. S ... r de zona, que tampoco sería muy bueno, porque entonces no podría construir el DateTimeFormatter a través de appendPattern().

Cómo ejecutar JMH desde dentro de las pruebas JUnit?

¿Cómo puedo ejecutar JMH benchmarks dentro de mi proyecto existente usando JUnit tests? La documentación oficial recomienda ... n proyecto separado, usando el plugin Maven shade, y lanzar JMH dentro del método main. Es necesario y por qué se recomienda?