NIKX-Tech / NIKX-Tech/numx

Re-run benchmarks after Kahan summation; update validation docs

Open
#59 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

validation
Dominant language
C
Stars
23
Forks
2
PR merge metrics
No merged PRs in 30d

Description

#57 replaced naive summation with Kahan (compensated) summation in 8 hot loops: numx_stats_mean, numx_vec_dot, numx_vec_norm (L1/L2), numx_integrate_trap, numx_integrate_simpson, and signal.c's convolve/correlate/fir.

Kahan summation adds roughly 4 extra floating-point operations per accumulated element compared to naive summation. Correctness was verified (337/337 tests, sanitizers clean, exhaustive stress tests), but the per-call timing numbers in validation/results/ and the README benchmark table now reflect the pre-Kahan implementation and are stale.

Needed: re-run benchmarks on at least the platforms already validated for these functions, update the affected validation/results/*.md files and the README benchmark table.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by identifying the benchmark commands and the platforms already validated for the affected functions. Re-run the benchmarks, then update the corresponding validation/results/*.md files and the README benchmark table so their timing numbers reflect Kahan summation.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
documentation, embedded-iot, performance
Issue type
Documentation
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.