tisonkun opened a new pull request, #316:
URL: https://github.com/apache/datasketches-rust/pull/316

   XOR construction retained its graph buffers while allocating the final 
fingerprint payload. Release the graph after peeling succeeds, when assignment 
only needs the peel stack.
   
   For eight million distinct synthetic hashes with base seed 1, measured peak 
live heap allocation changes as follows:
   
   | Fingerprint width | Before | After | Reduction |
   | --- | ---: | ---: | ---: |
   | 8 bits | 263.3 MB | 253.4 MB | 3.7% |
   | 16 bits | 273.1 MB | 253.4 MB | 7.2% |
   | 32 bits | 292.8 MB | 253.4 MB | 13.4% |
   
   Measurements use allocation tracking on arm64 macOS and exclude the 
preexisting input and allocator overhead; they are not process RSS. A separate 
16,384-key case exercises retry cleanup at all three widths.
   
   Add a required Java interoperability CI job pinned to Java commit 
`1034fb33b6e013334ff870f130b9c388cae5dfa9`. Java queries complete 
Rust-generated 8/16-bit images and re-encodes them byte-for-byte; Rust also 
queries Java-generated images. Cases cover empty, singleton, signed-integer, 
and larger sets. Independently constructed payloads are not required to match. 
The ordinary Rust suite remains JVM-independent, with the explicit 
cross-language command documented in CONTRIBUTING.md.
   
   Validation: `cargo x check`, `cargo x test`, `cargo x lint`, targeted MSRV 
1.86 tests, and the Java interoperability test.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to