Repository navigation
Conversation
Separate microbenchmarks from the Ubuntu CAN/FD stress harness and restrict installed benchmark material to documentation and the baseline. Record local source provenance, frame accounting and socket loss checks. Archive the verified November 10 results with an English report and checksum verifier. Keep historical measurements separate from this head. Validate Clang 18 formatting, eight harness tests on macOS and Linux, strict GCC 13 benchmark builds, memory CAN/FD smoke runs, queue/recovery contracts, both micro modes and four installed-consumer tests on x86_64. Linux ARM64 validation remains pending.
Enable the optional stress targets in the report build so every new C/C++ source has a compilation entry. Include C files in the style gate and format the Linux socket probe. Make numeric conversions explicit and bound probe log writes. Explain the required glibc macro and bounded snprintf at their analyzer diagnostics. Validate workflow syntax, formatting, 351 native CTest cases, eight stress harness tests, queue/recovery contracts and real CAN socket probe output. Run the stress sources through Clang 18 and the CI Cppcheck version.
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
Separate microbenchmarks from an Ubuntu CAN/CAN FD stress harness and archive the verified November 10 results in English.
Reproduction
0e190032d65ed0b315337b45b3779cf4f650ed68(Transport 0.3.4).Fix
Move the existing microbenchmark and summarizer under
benchmarks/microwhile retaining the standalone build entry point. Add isolated stress workers, source/build provenance, per-frame accounting, socket loss checks, bounded-process cleanup and verified report archives. Keep generated results ignored and limit installed benchmark data to documentation, the summarizer and the recorded ARM64 baseline.Preserve the historical run separately: its archive verifies 119 configurations and four confirmed scenarios, including six recorded failed overload configurations. These measurements test the base commit and do not validate the new PR head.
Compatibility
benchmarks/micro/summarize.py; installed benchmark paths follow the new layout. Source-checkout commands and both performance guides are updated.Validation
Local ARM64
Passed:
-Wall -Wextra -Wpedantic -Werror, both microbenchmark allocation modes, memory CAN/FD smoke runs and deterministic queue/100-recovery contracts.Skipped, with reasons:
The required Linux ARM64 environment was unavailable. Its checks remain pending; x86_64 results do not replace them. The new integrated vcan workflow, full stress scan and physical hardware acceptance were not run. Sanitizer and full project coverage results are not claimed.
GitHub CI
03fbcae1462c5a88cc085566e34fa5e53def0f13.Documentation
Update benchmark navigation, micro/stress instructions, both performance guides and the English historical report/archive verification notes. Relative file links and the moved summarizer were checked.
Checklist
unknown_key; the signing public key is not registered there.