Repository navigation
Add AmiSSL-vs-builtin and asm-vs-C on-target benchmarks (#85 groundwork) - #102
Merged
Merged
Conversation
Dev-only Copperline benchmark tooling, wired into make amissl-bench / make asm-bench: - amissl-bench.sh compares AmiSSL's PKCS5_PBKDF2_HMAC_SHA1 against the builtin pbkdf2_hmac_sha1, same boot/CPU pass. Boots from a copy-on-write clone of the project's Workbench 3.2 test install rather than a synthetic minimal disk - OpenAmiSSLTags() reliably crashed ramlib on a from-scratch boot volume that only had the libraries copied into LIBS: (also needs the `AmiSSL:` assign that S:User-Startup sets up, evidently for something InitAmiSSL() reads even with no networking). - asm-bench.sh compares the portable C SHA-1 compress function against the hand-written 68000 asm one (#47), same boot/CPU, real 68000. - fetch-amissl-sdk.sh fetches + verifies the pinned AmiSSL SDK (Developer headers + libamisslstubs.a) needed to link amissl-bench. Findings posted to #85: AmiSSL is 12.7% slower than builtin on 68020, but 15-17% faster on 68030/68040 - the earlier "not worth it" read didn't generalize across CPU tiers. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
make amissl-bench/make asm-bench.amissl-bench.shcompares AmiSSL'sPKCS5_PBKDF2_HMAC_SHA1against the builtinpbkdf2_hmac_sha1, same boot/CPU pass. Boots from a copy-on-write clone of the project's Workbench 3.2 test install rather than a synthetic minimal disk —OpenAmiSSLTags()reliably crashed ramlib on a from-scratch boot volume that only had the libraries copied intoLIBS:(it also needs theAmiSSL:assign thatS:User-Startupsets up).asm-bench.shcompares the portable C SHA-1 compress function against the hand-written 68000 asm one (68k assembler crypto hot loop (SHA-1) #47), same boot/CPU, real 68000.fetch-amissl-sdk.shfetches + verifies the pinned AmiSSL SDK (Developer headers +libamisslstubs.a) needed to linkamissl-bench.Findings posted to #85: AmiSSL is 12.7% slower than builtin on 68020, but 15-17% faster on 68030/68040 — the earlier "not worth it" read didn't generalize across CPU tiers. Also checked whether rolling per-CPU-tier hand asm would be a better alternative (no — the current CPU-generic asm path already banks its win at the real 68000 baseline, and AmiSSL is the cheaper way to capture the 030/040 margin if it's wanted). PiStorm/Vampire-Apollo accelerators and the ZZ9000 hardware-crypto-offload AmiSSL variant are also addressed in the issue comments (untested / doesn't apply to AmiAuth's crypto usage, respectively).
Test plan
make amissl-bench— BUILTIN/AMISSL PBKDF2 comparison runs end-to-end on 68020/68030/68040 (real Kickstart 3.2, A1200/AGA, WB clone)make asm-bench— C-vs-asm PBKDF2 comparison runs end-to-end on real 68000 (A500,[[filesys]])make all— dev-only, doesn't affect the shipped build🤖 Generated with Claude Code