jmh-service
Описание
Реализация 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:
(в 2 раза медленнее MD5)189 - SHA-512:
(в 4 раза медленнее MD5)98
AverageTime (ms/op):
- MD5:
(самый быстрый)0.003 - SHA-256:
(медленнее MD5)0.005 - SHA-512:
(медленнее MD5)0.011
Итоговое сравнение алгоритмов
MD5 - самый быстрый
SHA-512 - самый медленный
| Алгоритм | SingleShot | SampleTime | Throughput | AverageTime |
|---|---|---|---|---|
| MD5 | 0.4 мс | 2.38 | 408 ops/ms | 0.003 ms/op |
| SHA-256 | 0.54 мс | 4.64 | 189 ops/ms | 0.005 ms/op |
| SHA-512 | 0.58 мс | 9.6 | 98 ops/ms | 0.011 ms/op |