Skip to content

Finish sdsdot/hsdot extended-precision dot products (C8 part 4)#21

Merged
sigilante merged 1 commit into
masterfrom
fix/finish-sdsdot
May 30, 2026
Merged

Finish sdsdot/hsdot extended-precision dot products (C8 part 4)#21
sigilante merged 1 commit into
masterfrom
fix/finish-sdsdot

Conversation

@sigilante
Copy link
Copy Markdown
Collaborator

Both were broken and had no header prototype: sdsdot used n instead of N and returned an undefined dot; hsdot initialized a float32_t accumulator directly from a float16_t alpha. Neither took rndMode.

Rewritten cleanly — sdsdot accumulates single-precision products in double precision plus the bias alpha; hsdot accumulates half-precision products in single precision. Both handle negative strides, canonicalize NaN output, take rndMode, gain header prototypes, and join the Makefile.

test_sdsdot.c: 1 + 2·4 + 3·5 = 24 for both. 179/179.

This completes every Level-1 routine the README lists as implemented.

🤖 Generated with Claude Code

Both were broken and had no header prototype: sdsdot used `n` instead of
`N` and returned an undefined `dot`; hsdot initialized a float32_t
accumulator directly from a float16_t alpha. Neither took rndMode.

Rewrite both cleanly: sdsdot accumulates single-precision products in
double precision plus the bias alpha; hsdot accumulates half-precision
products in single precision. Both handle negative strides, canonicalize
their NaN output, take rndMode, gain header prototypes, and join the
Makefile.

test_sdsdot.c: 1 + 2*4 + 3*5 = 24 for both. 179/179 tests pass.

This completes every Level-1 routine the README lists as implemented.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@sigilante sigilante force-pushed the fix/finish-sdsdot branch from 38b8360 to 3961160 Compare May 30, 2026 17:39
@sigilante sigilante merged commit a3b1eed into master May 30, 2026
1 check passed
@sigilante sigilante deleted the fix/finish-sdsdot branch May 30, 2026 17:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant