Код для теста скорости находится в <openssl>/apps/speed.c
.
-multi
- это переключатель для нескольких эталонных тестов параллельно, а не умножений (чтобы устранить всю путаницу). Смотрите комментарии вокруг линии 1145:
#ifndef NO_FORK
BIO_printf(bio_err,"-multi n run n benchmarks in parallel.\n");
#endif
Что означает знак колонки и проверить, имеет в виду?
Подпишите и проверьте, что они говорят. Они выполняют операцию подписи и проверяют работу с различными модулями RSA.
Знаки/Подтверждения/s являются инверсиями знака и подтверждения. I.e., 1/0.000008s => 125 000 знаков в секунду.
Вот код для печати отчета, который вы видите. Она начинается вокруг линии 2450:
#ifndef OPENSSL_NO_RSA
j=1;
for (k=0; k<RSA_NUM; k++)
{
if (!rsa_doit[k]) continue;
if (j && !mr)
{
printf("%18ssign verify sign/s verify/s\n"," ");
j=0;
}
if(mr)
fprintf(stdout,"+F2:%u:%u:%f:%f\n",
k,rsa_bits[k],rsa_results[k][0],
rsa_results[k][1]);
else
fprintf(stdout,"rsa %4u bits %8.6fs %8.6fs %8.1f %8.1f\n",
rsa_bits[k],rsa_results[k][0],rsa_results[k][1],
1.0/rsa_results[k][0],1.0/rsa_results[k][1]);
}
#endif
Нахождение кода для выполнения знака и проверки остается в качестве упражнения для читателя;)
имеют Intel (R) Xeon (R) CPU E5-1650 v2 @ 3.50GHz
Просто велосипед линять, но обязательно config
с enable-ec_nistp_64_gcc_128
, если вы используете современный GCC. Использование ec_nistp_64_gcc_128
ускорит некоторые операции, такие как операция DH, на 2x или 4x.
Вам нужен современный GCC для __uint128_t
. Configure
не может определить, поддерживает ли компилятор __uint128_t
, поэтому он оставляет ec_nistp_64_gcc_128
отключенным.