Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Benchmarks: add EdDSA algorithm #1063

Merged
merged 1 commit into from
May 20, 2024
Merged

Conversation

Slamdunk
Copy link
Collaborator

@Slamdunk Slamdunk commented May 17, 2024

Apparently we've always missed to add EdDSA algorithm to the benchmarks.

Original PR: #605

Note on commit signing: so far commit signing has always been a source of hassles with zero benefits for me.
I'm dropping the practice and I won't sign commits anymore.

@Slamdunk Slamdunk added this to the 5.4.0 milestone May 17, 2024
@Slamdunk
Copy link
Collaborator Author

Result difference (GHA link):

 PHPBench (1.2.15) running benchmarks... #standwithukraine
 with configuration file: /src/phpbench.json
 with PHP version 8.3.7, xdebug ❌, opcache ❌

 ............................................

 Subjects: 20, Assertions: 0, Failures: 0, Errors: 0
 +----------------------+---------+---------+------+-----+----------+-----------+--------+
 | benchmark            | subject | set     | revs | its | mem_peak | mode      | rstdev |
 +----------------------+---------+---------+------+-----+----------+-----------+--------+
 | ParseTokenBench      | hmac    | HS256   | 100  | 5   | 4.559mb  | 13.028μs  | ±0.57% |
 | ParseTokenBench      | hmac    | HS384   | 100  | 5   | 4.559mb  | 13.032μs  | ±2.25% |
 | ParseTokenBench      | hmac    | HS512   | 100  | 5   | 4.559mb  | 13.020μs  | ±0.76% |
 | ParseTokenBench      | rsa     | RS256   | 100  | 5   | 4.559mb  | 375.433μs | ±1.35% |
 | ParseTokenBench      | rsa     | RS384   | 100  | 5   | 4.559mb  | 372.946μs | ±0.38% |
 | ParseTokenBench      | rsa     | RS512   | 100  | 5   | 4.559mb  | 378.916μs | ±1.45% |
 | ParseTokenBench      | ecdsa   | ES256   | 100  | 5   | 4.559mb  | 415.955μs | ±1.27% |
 | ParseTokenBench      | ecdsa   | ES384   | 100  | 5   | 4.559mb  | 918.062μs | ±1.25% |
 | ParseTokenBench      | ecdsa   | ES512   | 100  | 5   | 4.559mb  | 820.355μs | ±1.00% |
+| ParseTokenBench      | eddsa   | EdDSA   | 100  | 5   | 4.559mb  | 53.697μs  | ±0.33% |
 | ParseTokenBench      | blake2b | BLAKE2B | 100  | 5   | 4.559mb  | 11.837μs  | ±1.18% |
 | IssueTokenBench      | hmac    | HS256   | 100  | 5   | 4.559mb  | 7.342μs   | ±0.75% |
 | IssueTokenBench      | hmac    | HS384   | 100  | 5   | 4.559mb  | 7.526μs   | ±0.77% |
 | IssueTokenBench      | hmac    | HS512   | 100  | 5   | 4.559mb  | 7.594μs   | ±0.64% |
 | IssueTokenBench      | rsa     | RS256   | 100  | 5   | 4.559mb  | 1.165ms   | ±2.06% |
 | IssueTokenBench      | rsa     | RS384   | 100  | 5   | 4.559mb  | 1.175ms   | ±0.62% |
 | IssueTokenBench      | rsa     | RS512   | 100  | 5   | 4.559mb  | 1.198ms   | ±0.95% |
 | IssueTokenBench      | ecdsa   | ES256   | 100  | 5   | 4.559mb  | 426.960μs | ±2.36% |
 | IssueTokenBench      | ecdsa   | ES384   | 100  | 5   | 4.559mb  | 1.083ms   | ±3.17% |
 | IssueTokenBench      | ecdsa   | ES512   | 100  | 5   | 4.559mb  | 649.759μs | ±1.92% |
+| IssueTokenBench      | eddsa   | EdDSA   | 100  | 5   | 4.559mb  | 23.383μs  | ±1.64% |
 | IssueTokenBench      | blake2b | BLAKE2B | 100  | 5   | 4.559mb  | 6.136μs   | ±0.79% |
 | CreateSignatureBench | hmac    | HS256   | 100  | 5   | 4.559mb  | 1.380μs   | ±0.36% |
 | CreateSignatureBench | hmac    | HS384   | 100  | 5   | 4.559mb  | 1.590μs   | ±0.00% |
 | CreateSignatureBench | hmac    | HS512   | 100  | 5   | 4.559mb  | 1.590μs   | ±0.00% |
 | CreateSignatureBench | rsa     | RS256   | 100  | 5   | 4.559mb  | 1.140ms   | ±1.27% |
 | CreateSignatureBench | rsa     | RS384   | 100  | 5   | 4.559mb  | 1.135ms   | ±0.81% |
 | CreateSignatureBench | rsa     | RS512   | 100  | 5   | 4.559mb  | 1.143ms   | ±1.31% |
 | CreateSignatureBench | ecdsa   | ES256   | 100  | 5   | 4.559mb  | 378.836μs | ±1.26% |
 | CreateSignatureBench | ecdsa   | ES384   | 100  | 5   | 4.559mb  | 1.026ms   | ±1.87% |
 | CreateSignatureBench | ecdsa   | ES512   | 100  | 5   | 4.559mb  | 618.989μs | ±0.85% |
+| CreateSignatureBench | eddsa   | EdDSA   | 100  | 5   | 4.559mb  | 16.909μs  | ±0.45% |
 | CreateSignatureBench | blake2b | BLAKE2B | 100  | 5   | 4.559mb  | 0.490μs   | ±1.29% |
 | VerifySignatureBench | hmac    | HS256   | 100  | 5   | 4.559mb  | 1.461μs   | ±2.36% |
 | VerifySignatureBench | hmac    | HS384   | 100  | 5   | 4.559mb  | 1.689μs   | ±0.58% |
 | VerifySignatureBench | hmac    | HS512   | 100  | 5   | 4.559mb  | 1.690μs   | ±0.24% |
 | VerifySignatureBench | rsa     | RS256   | 100  | 5   | 4.559mb  | 343.735μs | ±0.99% |
 | VerifySignatureBench | rsa     | RS384   | 100  | 5   | 4.559mb  | 337.335μs | ±1.36% |
 | VerifySignatureBench | rsa     | RS512   | 100  | 5   | 4.559mb  | 340.165μs | ±1.10% |
 | VerifySignatureBench | ecdsa   | ES256   | 100  | 5   | 4.559mb  | 389.799μs | ±0.89% |
 | VerifySignatureBench | ecdsa   | ES384   | 100  | 5   | 4.559mb  | 889.068μs | ±0.61% |
 | VerifySignatureBench | ecdsa   | ES512   | 100  | 5   | 4.559mb  | 788.973μs | ±1.11% |
+| VerifySignatureBench | eddsa   | EdDSA   | 100  | 5   | 4.559mb  | 40.982μs  | ±1.04% |
 | VerifySignatureBench | blake2b | BLAKE2B | 100  | 5   | 4.559mb  | 0.560μs   | ±0.71% |
 +----------------------+---------+---------+------+-----+----------+-----------+--------+

Copy link
Collaborator

@Ocramius Ocramius left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

From this, I can see that BLAKE2b is amazing 🤣

@lcobucci lcobucci merged commit f7b7fb9 into lcobucci:5.4.x May 20, 2024
17 checks passed
@Slamdunk Slamdunk deleted the bench_eddsa branch May 20, 2024 18:08
# for free to join this conversation on GitHub. Already have an account? # to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants