Comments (7)
I would think that specifying curve25519_dalek_backend
would override autodetection
from curve25519-dalek.
If there's ever autodetection for mobile platforms, we might want to turn it off if it's not enough of a speedup to be worth the extra code.
I would think mobile platforms are ARM64, in which case the neon
target feature is enabled by default (#457)
from curve25519-dalek.
Some q's
-
Which use-cases would need to disable the CPU detecion ?
1.1) Or is this just in case something goes wrong a.k.a "break glass" ? -
Is there much use for disabling CPU detection in granular basis
2.1) Or should there be just plain override vs disallowing detection one-by-one ? -
Should we just re-use
cfg(curve25519_dalek_backend)
"override"
3.1) which could besimd
|simd_avx512
|simd_avx2
-
We already use some hazardous / risky features that should be enabled with care and
4.1) not sure how many (would) use--all-features
-
If consensus is to do feature-set here then should the existing
cfg(*_dalek_*)
also migrated as features
Having a plain override with cfg()
would align to everything else - it would be great to know what use-cases there are to make it easier if it's widely expected to be used ?
from curve25519-dalek.
One use case for us (Signal) is code size, though not on Intel platforms. If there's ever autodetection for mobile platforms, we might want to turn it off if it's not enough of a speedup to be worth the extra code.
from curve25519-dalek.
Yeah consensus here seems to be that override seems to be the best.
There is this discussion re-opened so let's redirect there to simplify things further:
from curve25519-dalek.
Oh sorry, I forgot you opened this issue, but thanks for directing the conversation back to #414
from curve25519-dalek.
Yeah I think we got consensus on this issue so your get-together words it well what needs ot happen overall :)
I mainly tried to gather use-cases to surface where additional complexity would be required but I don't think we have any.
from curve25519-dalek.
Related Issues (20)
- Use of unstable library feature 'stdsimd HOT 6
- Use of unstable library feature 'stdsimd' HOT 3
- Incorrect use of cfg to import dependency HOT 1
- docs.rs homepage examples use `rand_core` crate option, but do not mention its existence HOT 2
- [docs request] how to serialize a public key in the format compatible with `~/.ssh/authorized_keys`? HOT 2
- AVX512-IFMA & AVX10 status
- curve25519: nightly CI seems borked w/ warn(unused_imports)
- Impl std::num_traits::{One, Zero} for Scalar types
- Zeroize `SecretKey` on drop HOT 5
- Potential optimization for the torsion check HOT 1
- 4.1.3 release? HOT 4
- Implementation of ed25519-dalek::VerifyingKey::verify_strict seemingly inconsistent with documentation
- Verifying signatures using ZIP215 criteria
- Hard to use API for raw_sign_prehashed, I want to pass a 64 byte message hash HOT 1
- Add the ability to convert `[u8; 32]` into a `VerifyingKey` HOT 17
- `mul_bits_be` endianess footgun HOT 1
- new
- new
- Implement `Reduce` trait HOT 3
- Allow disabled SIMD support on x86_64 baremetal targets HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from curve25519-dalek.