Conversation
|
I wanted to look at doing an AVX2 backend before this, particularly for how that might interact with Perhaps we could do preleases to fix the broken hash crates in the meantime? |
|
I think it can be done in a patch release? I planned to add the proposed callback API in a future patch release as well. We even could cut a new minor version, since So I would prefer to cut proper releases instead of doing yet another cycle of pre-releases. But I can wait a day, since I don't consider the pre-release crate breakage a big issue. |
|
I am still also interested in looking at an intrinsics port of the ARMv8 assembly. Enquiring upstream on XKCP, I don't think the potential performance loss of moving away from a hand-tuned register schedule should be too severe. If we migrated to intrinsics, we could drop the If we do stick with ASM, and add ASM for AVX2 (I was in fact in the middle of working on that, but went on vacation for a few days), I think it might be nice to add a unified (I also think we should figure out how to expose the "timesN" parallel implementations, whose API design might be worth considering before a release to see if we want to make any breaking changes first. The ARMv8 ASM is already set up to be a "times2" implementation IIRC) |
|
I think it's fine to do the listed changes in a new breaking |
|
Or maybe we could just remove the ARMv8 ASM for now, and I can either add an intrinsics implementation, or we can add it back. The parallel API would impact something like the newly added |
Nah, I don't think we should bother with it. The |
Added
keccak_backendconfiguration parameter witharmv8_asm,simd,and
soft-compactvalues (#105, #106)KeccakP1600struct (#107)Changed
cpufeaturesdependency to v0.3 (#99)Removed
asm,simd, andno_unrollcrate features in favor ofthe
keccak_backendconfiguration parameter (#105, #106)f1600andp1600functions in favor of theKeccakP1600struct (#107)Fixed
doc_cfgin place of removeddoc_auto_cfgfeature (#91)