Skip to content

test(EDyadicFloat): conformance vs native Float32 and Float (FP64)#792

Open
bollu wants to merge 1 commit into
edyadicfloat-opsfrom
edyadicfloat-conformance-native
Open

test(EDyadicFloat): conformance vs native Float32 and Float (FP64)#792
bollu wants to merge 1 commit into
edyadicfloat-opsfrom
edyadicfloat-conformance-native

Conversation

@bollu

@bollu bollu commented Jun 8, 2026

Copy link
Copy Markdown
Contributor

What

Adds UnitTest/FP/EDyadicFloat/ConformanceNative.lean: bit-for-bit conformance of EDyadicFloat 8 23 .RNE against native Float32 and EDyadicFloat 11 52 .RNE against native Float, across +//*/÷ and specials. Both native types are themselves correctly rounded, and EDyadicFloat has no internal double-rounding, so the agreement is exact. Output is routed EDyadicFloat → PackedFloat → native.

Stack

Part of full-precision-floats-edyadic (patch 5/6). Base: #791.

🤖 Generated with Claude Code

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

VeIR Benchmarks

Details
Benchmark suite Current: 5da6715 Previous: eb0390c Ratio
add-fold-worklist/create 2209000 ns (± 63526) 2198000 ns (± 109413) 1.01
add-fold-worklist/rewrite 3754000 ns (± 67677) 3733000 ns (± 84672) 1.01
add-fold-worklist-local/create 2144000 ns (± 101682) 2191000 ns (± 99246) 0.98
add-fold-worklist-local/rewrite 3023000 ns (± 44142) 3011000 ns (± 27372) 1.00
add-zero-worklist/create 2206000 ns (± 97002) 2140500 ns (± 109777) 1.03
add-zero-worklist/rewrite 2377000 ns (± 61876) 2383000 ns (± 53970) 1.00
add-zero-reuse-worklist/create 1849500 ns (± 109352) 1798000 ns (± 63295) 1.03
add-zero-reuse-worklist/rewrite 1939000 ns (± 35786) 1965000 ns (± 30368) 0.99
mul-two-worklist/create 2169000 ns (± 98750) 2191000 ns (± 103104) 0.99
mul-two-worklist/rewrite 5139000 ns (± 91057) 5176000 ns (± 80037) 0.99
add-fold-forwards/create 2260000 ns (± 43419) 2174500 ns (± 97824) 1.04
add-fold-forwards/rewrite 2963000 ns (± 31254) 2967500 ns (± 35897) 1.00
add-zero-forwards/create 2256000 ns (± 105818) 2115000 ns (± 33441) 1.07
add-zero-forwards/rewrite 1990500 ns (± 65337) 1903000 ns (± 16300) 1.05
add-zero-reuse-forwards/create 1846000 ns (± 85827) 1832000 ns (± 91568) 1.01
add-zero-reuse-forwards/rewrite 1549000 ns (± 35718) 1555000 ns (± 50375) 1.00
mul-two-forwards/create 2237500 ns (± 101042) 2126000 ns (± 70864) 1.05
mul-two-forwards/rewrite 3636500 ns (± 62608) 3520000 ns (± 48872) 1.03
add-zero-reuse-first/create 1827000 ns (± 95078) 1827500 ns (± 94828) 1.00
add-zero-reuse-first/rewrite 8000 ns (± 1382) 8000 ns (± 1592) 1
add-zero-lots-of-reuse-first/create 1798000 ns (± 87929) 1773000 ns (± 69739) 1.01
add-zero-lots-of-reuse-first/rewrite 767000 ns (± 31371) 759000 ns (± 9407) 1.01

This comment was automatically generated by workflow using github-action-benchmark.

@bollu bollu force-pushed the edyadicfloat-ops branch from fc0fbc8 to c641963 Compare June 8, 2026 17:28
@bollu bollu force-pushed the edyadicfloat-conformance-native branch from 4090469 to 5da6715 Compare June 8, 2026 17:28
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