Test results for amd64, hertz, crypto_sign/luov890351
[Page version: 20251231 05:58:02]
Measurements for amd64, hertz, crypto_sign
Test results for amd64, hertz, crypto_sign
Test results for crypto_sign/luov890351
Computer: hertz
Microarchitecture: amd64; Zen 4 (a60f12)
Architecture: amd64
CPU ID: AuthenticAMD-00a60f12-178bfbff
SUPERCOP version: 20251222
Operation: crypto_sign
Primitive: luov890351
| Time | Object size | Test size | Implementation | Compiler | Benchmark date | SUPERCOP version |
| 20230085 | 71585 0 0 | 101655 876 1832 | T:avx2 | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251225 | 20251222 |
| 20253537 | 73715 0 0 | 105559 876 1832 | T:avx2 | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251225 | 20251222 |
| 20267110 | 50309 0 0 | 79367 860 1832 | T:avx2 | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251225 | 20251222 |
| 20309911 | 22743 32768 0 | 52095 33628 1896 | T:avx2 | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251225 | 20251222 |
| 20432096 | 35469 32768 0 | 66791 33628 1896 | T:avx2 | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251225 | 20251222 |
| 21134114 | 16294 32768 0 | 43759 33620 1800 | T:avx2 | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251225 | 20251222 |
| 33610768 | 560571 0 0 | 56567 844 1896 | T:portable | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251225 | 20251222 |
| 34357314 | 559357 0 0 | 59798 876 1832 | T:portable | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251225 | 20251222 |
| 35014502 | 558079 0 0 | 56790 876 1832 | T:portable | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251225 | 20251222 |
| 35357077 | 556078 0 0 | 52463 844 1896 | T:portable | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251225 | 20251222 |
| 36012610 | 550188 0 0 | 48558 860 1832 | T:portable | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251225 | 20251222 |
| 40262030 | 549820 0 0 | 46071 836 1800 | T:portable | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251225 | 20251222 |
| 393146833 | 416529 36 0 | 176718 876 1832 | T:ref | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251225 | 20251222 |
| 395890387 | 416953 36 0 | 178638 876 1832 | T:ref | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251225 | 20251222 |
| 409238572 | 418971 36 0 | 176623 844 1896 | T:ref | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251225 | 20251222 |
| 416775196 | 414742 36 0 | 173551 844 1896 | T:ref | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251225 | 20251222 |
| 433851198 | 410308 36 0 | 169167 836 1800 | T:ref | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20251225 | 20251222 |
| 439997041 | 409189 36 0 | 170174 860 1832 | T:ref | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20251225 | 20251222 |
Compiler output
keccakrng.c: keccakrng.c:71:24: warning: unused function 'rotl' [-Wunused-function]
keccakrng.c: 71 | static inline uint64_t rotl(const uint64_t x, int k) {
keccakrng.c: | ^~~~
keccakrng.c: 1 warning generated.
Number of similar (implementation,compiler) pairs: 3, namely:
| Implementation | Compiler |
| T:avx2 | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_21.1.6_(3ubuntu1)) |
| T:avx2 | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_21.1.6_(3ubuntu1)) |
| T:avx2 | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_21.1.6_(3ubuntu1)) |
Compiler output
LUOV.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/15/include/immintrin.h:43,
LUOV.c: from LUOV.h:7,
LUOV.c: from LUOV.c:1:
LUOV.c: In function '_mm256_loadu_si256',
LUOV.c: inlined from 'calculateQ2' at LUOV.c:142:17:
LUOV.c: /usr/lib/gcc/x86_64-linux-gnu/15/include/avxintrin.h:873:10: warning: array subscript '__m256i_u[0]' is partly outside array bounds of '__m128i[1]' [-Warray-bounds=]
LUOV.c: 873 | return *__P;
LUOV.c: | ^~~~
LUOV.c: LUOV.c: In function 'calculateQ2':
LUOV.c: LUOV.c:141:38: note: object 'r' of size 16
LUOV.c: 141 | bitcontainer r = TempMat[j][i];
LUOV.c: | ^
LUOV.c: In function '_mm256_loadu_si256',
LUOV.c: inlined from 'calculateQ2' at LUOV.c:110:17:
LUOV.c: /usr/lib/gcc/x86_64-linux-gnu/15/include/avxintrin.h:873:10: warning: array subscript '__m256i_u[0]' is partly outside array bounds of '__m128i[1]' [-Warray-bounds=]
LUOV.c: 873 | return *__P;
LUOV.c: | ^~~~
LUOV.c: LUOV.c: In function 'calculateQ2':
LUOV.c: LUOV.c:109:38: note: object 'r' of size 16
LUOV.c: 109 | bitcontainer r = Q1[col++];
LUOV.c: | ^
LUOV.c: In function '_mm256_loadu_si256',
LUOV.c: inlined from 'TransformQ1' at LUOV.c:280:17:
LUOV.c: /usr/lib/gcc/x86_64-linux-gnu/15/include/avxintrin.h:873:10: warning: array subscript '__m256i_u[0]' is partly outside array bounds of '__m128i[1]' [-Warray-bounds=]
LUOV.c: 873 | return *__P;
LUOV.c: ...
Number of similar (implementation,compiler) pairs: 3, namely:
| Implementation | Compiler |
| T:avx2 | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (15.2.0) |
| T:avx2 | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (15.2.0) |
| T:avx2 | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (15.2.0) |
Compiler output
F64Field.c: F64Field.c: In function 'f64addInPlace':
F64Field.c: F64Field.c:43:11: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
F64Field.c: 43 | *((uint64_t *) a->coef) ^= *((uint64_t *) b->coef);
F64Field.c: | ~^~~~~~~~~~~~~~~~~~~~~
F64Field.c: F64Field.c:43:38: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
F64Field.c: 43 | *((uint64_t *) a->coef) ^= *((uint64_t *) b->coef);
F64Field.c: | ~^~~~~~~~~~~~~~~~~~~~~
F80Field.c: F80Field.c: In function 'f80addInPlace':
F80Field.c: F80Field.c:55:11: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
F80Field.c: 55 | *((uint64_t *) a->coef) ^= *((uint64_t *) b->coef);
F80Field.c: | ~^~~~~~~~~~~~~~~~~~~~~
F80Field.c: F80Field.c:55:38: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
F80Field.c: 55 | *((uint64_t *) a->coef) ^= *((uint64_t *) b->coef);
F80Field.c: | ~^~~~~~~~~~~~~~~~~~~~~
Number of similar (implementation,compiler) pairs: 3, namely:
| Implementation | Compiler |
| T:portable | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (15.2.0) |
| T:portable | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (15.2.0) |
| T:portable | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (15.2.0) |
Namespace violations
LUOV.o BuildAugmentedMatrixFromP1L T
LUOV.o BuildAugmentedMatrixFromQ1 T
LUOV.o EvaluateVinegarPart T
LUOV.o TransformQ1 T
LUOV.o _generateKeyPair T
LUOV.o _sign T
LUOV.o calculateQ2 T
LUOV.o computeTarget T
LUOV.o deserializeQ2 T
LUOV.o evaluatePublicMap T
LUOV.o extractMessage T
LUOV.o generateBigKeyPair T
LUOV.o generateKeyPair T
LUOV.o initializeVinegarSponge T
LUOV.o multiplyByT T
LUOV.o precompute_sign T
LUOV.o precompute_verify T
LUOV.o serializeQ2 T
LUOV.o solvePrivateUOVSystem T
LUOV.o verify T
LUOV.o verify_fast T
LinearAlgebra.o destroy_matrix T
LinearAlgebra.o getUniqueSolution T
LinearAlgebra.o newMatrix T
LinearAlgebra.o printMatrix T
LinearAlgebra.o rowEchelonAugmented T
LinearAlgebra.o rowOp T
LinearAlgebra.o scalarMul2 T
LinearAlgebra.o scaleRow T
LinearAlgebra.o swapRows T
intermediateValues.o printAugmentedMatrix T
intermediateValues.o printEvaluation T
intermediateValues.o printPrivateSolution T
intermediateValues.o printVinegarValues T
intermediateValues.o reportSolutionFound T
keccakrng.o calculateQ1 T
keccakrng.o initializeAndAbsorb T
keccakrng.o squeezeCols T
keccakrng.o squeezeVector T
keccakrng.o squeezeuint64_t T
Number of similar (implementation,compiler) pairs: 6, namely:
| Implementation | Compiler |
| T:avx2 | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_21.1.6_(3ubuntu1)) |
| T:avx2 | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_21.1.6_(3ubuntu1)) |
| T:avx2 | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_21.1.6_(3ubuntu1)) |
| T:avx2 | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (15.2.0) |
| T:avx2 | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (15.2.0) |
| T:avx2 | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (15.2.0) |
Namespace violations
Bitcontainer.o deserialize_bitcontainer T
Bitcontainer.o flipBit T
Bitcontainer.o getBit T
Bitcontainer.o randomBitcontainer T
Bitcontainer.o serialize_bitcontainer T
Bitcontainer.o squeezeBitcontainerArray T
Bitcontainer.o xor T
F16Field.o f16EucildeanDivision T
F16Field.o f16ExtendedEuclideanAlgorithm T
F16Field.o f16antilog T
F16Field.o f16deserialize_FELT T
F16Field.o f16inverse T
F16Field.o f16log T
F16Field.o f16multiply T
F16Field.o f16polyAdd T
F16Field.o f16polyCopy T
F16Field.o f16polyMult T
F16Field.o f16polyOne T
F16Field.o f16polyZero T
F16Field.o f16printFELT T
F16Field.o f16scalarMultiply T
F16Field.o f16serialize_FELT T
F16Field.o isArrayOfZeros T
F32Field.o f32add T
F32Field.o f32addInPlace T
F32Field.o f32deserialize_FELT T
F32Field.o f32inverse T
F32Field.o f32isEqual T
F32Field.o f32multiply T
F32Field.o f32multiplyOld T
F32Field.o f32printFELT T
F32Field.o f32scalarMultiply T
F32Field.o f32serialize_FELT T
F32Field.o newF32FELT T
F48Field.o f48add T
F48Field.o f48addInPlace T
F48Field.o f48deserialize_FELT T
F48Field.o f48inverse T
F48Field.o f48isEqual T
F48Field.o f48multiply T
F48Field.o f48printFELT T
F48Field.o f48scalarMultiply T
F48Field.o f48serialize_FELT T
F48Field.o newF48FELT T
F64Field.o f64add T
F64Field.o f64addInPlace T
F64Field.o f64deserialize_FELT T
F64Field.o f64inverse T
F64Field.o f64isEqual T
F64Field.o f64multiply T
F64Field.o f64printFELT T
F64Field.o f64scalarMultiply T
F64Field.o f64serialize_FELT T
F64Field.o newF64FELT T
F80Field.o f80Scalarmultiply T
F80Field.o f80add T
F80Field.o f80addInPlace T
F80Field.o f80deserialize_FELT T
F80Field.o f80inverse T
F80Field.o f80isEqual T
F80Field.o f80multiply T
F80Field.o f80printFELT T
F80Field.o f80serialize_FELT T
F80Field.o newF80FELT T
F8Field.o f8antilog T
F8Field.o f8deserialize_FELT T
F8Field.o f8inverse T
F8Field.o f8log T
F8Field.o f8multiply T
F8Field.o f8printFELT T
F8Field.o f8serialize_FELT T
LUOV.o BuildAugmentedMatrix T
LUOV.o _addScalarProduct1 T
LUOV.o _addScalarProduct3 T
LUOV.o addScalarProduct T
LUOV.o addScalarProduct3 T
LUOV.o calculateQ2 T
LUOV.o computeTarget T
LUOV.o deserialize_PublicKey T
LUOV.o deserialize_SecretKey T
LUOV.o deserialize_signature T
LUOV.o destroy_PublicKey T
LUOV.o destroy_SecretKey T
LUOV.o destroy_signature T
LUOV.o evaluatePublicMap T
LUOV.o expandTable T
LUOV.o extractMessage T
LUOV.o generateKeyPair T
LUOV.o repeatTable T
LUOV.o serialize_PublicKey T
LUOV.o serialize_SecretKey T
LUOV.o serialize_signature T
LUOV.o signDocument T
LUOV.o solvePrivateUOVSystem T
LUOV.o verify T
LinearAlgebra.o destroy_matrix T
LinearAlgebra.o getUniqueSolution T
LinearAlgebra.o newMatrix T
LinearAlgebra.o printMatrix T
LinearAlgebra.o rowEchelonAugmented T
LinearAlgebra.o rowOp T
LinearAlgebra.o scaleRow T
LinearAlgebra.o swapRows T
LinearAlgebra.o zeroMatrix T
buffer.o deserialize_uint64_t T
buffer.o newReader T
buffer.o newWriter T
buffer.o readBit T
buffer.o serialize_uint64_t T
buffer.o transcribe T
buffer.o writeBit T
intermediateValues.o printAugmentedMatrix T
intermediateValues.o printEvaluation T
intermediateValues.o printPrivateSolution T
intermediateValues.o printVinegarValues T
intermediateValues.o reportSolutionFound T
keccakrng.o initializeAndAbsorb T
keccakrng.o squeezeVector T
keccakrng.o squeezeuint64_t T
Number of similar (implementation,compiler) pairs: 6, namely:
| Implementation | Compiler |
| T:portable | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_21.1.6_(3ubuntu1)) |
| T:portable | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_21.1.6_(3ubuntu1)) |
| T:portable | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_21.1.6_(3ubuntu1)) |
| T:portable | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (15.2.0) |
| T:portable | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (15.2.0) |
| T:portable | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (15.2.0) |
Namespace violations
Bitcontainer.o deserialize_bitcontainer T
Bitcontainer.o flipBit T
Bitcontainer.o getBit T
Bitcontainer.o randomBitcontainer T
Bitcontainer.o serialize_bitcontainer T
Bitcontainer.o squeezeBitcontainerArray T
Bitcontainer.o xor T
F16Field.o f16EucildeanDivision T
F16Field.o f16ExtendedEuclideanAlgorithm T
F16Field.o f16antilog T
F16Field.o f16deserialize_FELT T
F16Field.o f16inverse T
F16Field.o f16log T
F16Field.o f16multiply T
F16Field.o f16polyAdd T
F16Field.o f16polyCopy T
F16Field.o f16polyMult T
F16Field.o f16polyOne T
F16Field.o f16polyZero T
F16Field.o f16printFELT T
F16Field.o f16scalarMultiply T
F16Field.o f16serialize_FELT T
F16Field.o isArrayOfZeros T
F32Field.o f32add T
F32Field.o f32deserialize_FELT T
F32Field.o f32inverse T
F32Field.o f32isEqual T
F32Field.o f32multiply T
F32Field.o f32multiplyOld T
F32Field.o f32printFELT T
F32Field.o f32scalarMultiply T
F32Field.o f32serialize_FELT T
F32Field.o newF32FELT T
F48Field.o f48add T
F48Field.o f48deserialize_FELT T
F48Field.o f48inverse T
F48Field.o f48isEqual T
F48Field.o f48multiply T
F48Field.o f48printFELT T
F48Field.o f48scalarMultiply T
F48Field.o f48serialize_FELT T
F48Field.o newF48FELT T
F64Field.o f64add T
F64Field.o f64deserialize_FELT T
F64Field.o f64inverse T
F64Field.o f64isEqual T
F64Field.o f64multiply T
F64Field.o f64printFELT T
F64Field.o f64scalarMultiply T
F64Field.o f64serialize_FELT T
F64Field.o newF64FELT T
F80Field.o f80Scalarmultiply T
F80Field.o f80add T
F80Field.o f80deserialize_FELT T
F80Field.o f80inverse T
F80Field.o f80isEqual T
F80Field.o f80multiply T
F80Field.o f80printFELT T
F80Field.o f80serialize_FELT T
F80Field.o newF80FELT T
F8Field.o f8antilog T
F8Field.o f8deserialize_FELT T
F8Field.o f8inverse T
F8Field.o f8log T
F8Field.o f8multiply T
F8Field.o f8printFELT T
F8Field.o f8serialize_FELT T
LUOV.o BuildAugmentedMatrix T
LUOV.o calculateQ2 T
LUOV.o computeTarget T
LUOV.o deserialize_PublicKey T
LUOV.o deserialize_SecretKey T
LUOV.o deserialize_signature T
LUOV.o destroy_PublicKey T
LUOV.o destroy_SecretKey T
LUOV.o destroy_signature T
LUOV.o evaluatePublicMap T
LUOV.o extractMessage T
LUOV.o generateKeyPair T
LUOV.o serialize_PublicKey T
LUOV.o serialize_SecretKey T
LUOV.o serialize_signature T
LUOV.o signDocument T
LUOV.o solvePrivateUOVSystem T
LUOV.o verify T
LinearAlgebra.o destroy_matrix T
LinearAlgebra.o getUniqueSolution T
LinearAlgebra.o newMatrix T
LinearAlgebra.o printMatrix T
LinearAlgebra.o rowEchelonAugmented T
LinearAlgebra.o rowOp T
LinearAlgebra.o scaleRow T
LinearAlgebra.o swapRows T
LinearAlgebra.o zeroMatrix T
buffer.o deserialize_uint64_t T
buffer.o newReader T
buffer.o newWriter T
buffer.o readBit T
buffer.o serialize_uint64_t T
buffer.o transcribe T
buffer.o writeBit T
intermediateValues.o printAugmentedMatrix T
intermediateValues.o printEvaluation T
intermediateValues.o printPrivateSolution T
intermediateValues.o printVinegarValues T
intermediateValues.o reportSolutionFound T
keccakrng.o initializeAndAbsorb T
keccakrng.o squeezeVector T
keccakrng.o squeezeuint64_t T
Number of similar (implementation,compiler) pairs: 6, namely:
| Implementation | Compiler |
| T:ref | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_21.1.6_(3ubuntu1)) |
| T:ref | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_21.1.6_(3ubuntu1)) |
| T:ref | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_21.1.6_(3ubuntu1)) |
| T:ref | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (15.2.0) |
| T:ref | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (15.2.0) |
| T:ref | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (15.2.0) |