jmh-service

0

Описание

Реализация benchmark для алгоритма. Демонстрация тестов по замеру производительности с помощью JMH

Языки

  • Java100%
год назад
год назад
год назад
readme.md

MyBenchmark

SingleShotTime

Время однократного выполнения (без прогрева)

Result:

Summary:

  • MD5 - самый быстрый -
    0.157
  • SHA256 - меделеннее чем MD5 -
    0.225
  • SHA-512 - медленный чем MD5 -
    0.306

SampleTime

Статистика по времени выполнения (процентили)

Result:

Summary:

  • MD5 - самый быстрый - p0.50 =
    2380 ns
  • SHA256 - в два раза меделеннее чем MD5 - p0.50 =
    4640 ns
  • SHA-512 - самый медленный - p0.50 =
    9600 ns

Throughput + AverageTime

Throughput - Количество операций в секунду (ops/time) AverageTime - Среднее время выполнения операции

Result:

Summary:

Throughput (ops/ms):

  • MD5:
    408
    (самый эффективный)
  • SHA-256:
    189
    (в 2 раза медленнее MD5)
  • SHA-512:
    98
    (в 4 раза медленнее MD5)

AverageTime (ms/op):

  • MD5:
    0.003
    (самый быстрый)
  • SHA-256:
    0.005
    (медленнее MD5)
  • SHA-512:
    0.011
    (медленнее MD5)

Итоговое сравнение алгоритмов

MD5 - самый быстрый

SHA-512 - самый медленный

АлгоритмSingleShotSampleTimeThroughputAverageTime
MD50.4 мс2.38408 ops/ms0.003 ms/op
SHA-2560.54 мс4.64189 ops/ms0.005 ms/op
SHA-5120.58 мс9.698 ops/ms0.011 ms/op

Openjdk jmh samples

JMHSample_02_BenchmarkModes