mirror of
https://github.com/zama-ai/tfhe-rs.git
synced 2026-01-09 22:57:59 -05:00
chore: update toolchain to 2025-04-16
This commit is contained in:
committed by
Nicolas Sarlin
parent
b7dcbaafe7
commit
0a279711d8
@@ -52,20 +52,19 @@ where
|
|||||||
|
|
||||||
#[derive(Default)]
|
#[derive(Default)]
|
||||||
pub struct KeyCache {
|
pub struct KeyCache {
|
||||||
u32_multi_bit_cache: KeyCacheCoreImpl<MultiBitTestParams<u32>, MultiBitBootstrapKeys<u32>>,
|
u32_multi_bit: KeyCacheCoreImpl<MultiBitTestParams<u32>, MultiBitBootstrapKeys<u32>>,
|
||||||
u64_multi_bit_cache: KeyCacheCoreImpl<MultiBitTestParams<u64>, MultiBitBootstrapKeys<u64>>,
|
u64_multi_bit: KeyCacheCoreImpl<MultiBitTestParams<u64>, MultiBitBootstrapKeys<u64>>,
|
||||||
u32_classic_cache: KeyCacheCoreImpl<ClassicTestParams<u32>, ClassicBootstrapKeys<u32>>,
|
u32_classic: KeyCacheCoreImpl<ClassicTestParams<u32>, ClassicBootstrapKeys<u32>>,
|
||||||
u64_classic_cache: KeyCacheCoreImpl<ClassicTestParams<u64>, ClassicBootstrapKeys<u64>>,
|
u64_classic: KeyCacheCoreImpl<ClassicTestParams<u64>, ClassicBootstrapKeys<u64>>,
|
||||||
u128_classic_cache: KeyCacheCoreImpl<ClassicTestParams<u128>, ClassicBootstrapKeys<u128>>,
|
u128_classic: KeyCacheCoreImpl<ClassicTestParams<u128>, ClassicBootstrapKeys<u128>>,
|
||||||
u32_fft_cache: KeyCacheCoreImpl<FftTestParams<u32>, FftBootstrapKeys<u32>>,
|
u32_fft: KeyCacheCoreImpl<FftTestParams<u32>, FftBootstrapKeys<u32>>,
|
||||||
u64_fft_cache: KeyCacheCoreImpl<FftTestParams<u64>, FftBootstrapKeys<u64>>,
|
u64_fft: KeyCacheCoreImpl<FftTestParams<u64>, FftBootstrapKeys<u64>>,
|
||||||
u128_fft_cache: KeyCacheCoreImpl<FftTestParams<u128>, FftBootstrapKeys<u128>>,
|
u128_fft: KeyCacheCoreImpl<FftTestParams<u128>, FftBootstrapKeys<u128>>,
|
||||||
u64_fft_wopbs_cache: KeyCacheCoreImpl<FftWopPbsTestParams<u64>, FftWopPbsKeys<u64>>,
|
u64_fft_wopbs: KeyCacheCoreImpl<FftWopPbsTestParams<u64>, FftWopPbsKeys<u64>>,
|
||||||
u32_pksk_cache: KeyCacheCoreImpl<PackingKeySwitchTestParams<u32>, PackingKeySwitchKeys<u32>>,
|
u32_pksk: KeyCacheCoreImpl<PackingKeySwitchTestParams<u32>, PackingKeySwitchKeys<u32>>,
|
||||||
u64_pksk_cache: KeyCacheCoreImpl<PackingKeySwitchTestParams<u64>, PackingKeySwitchKeys<u64>>,
|
u64_pksk: KeyCacheCoreImpl<PackingKeySwitchTestParams<u64>, PackingKeySwitchKeys<u64>>,
|
||||||
#[cfg(feature = "gpu")]
|
#[cfg(feature = "gpu")]
|
||||||
u128_noise_squashing_cache:
|
u128_noise_squashing: KeyCacheCoreImpl<NoiseSquashingTestParams<u128>, FftBootstrapKeys<u128>>,
|
||||||
KeyCacheCoreImpl<NoiseSquashingTestParams<u128>, FftBootstrapKeys<u128>>,
|
|
||||||
}
|
}
|
||||||
|
|
||||||
impl KeyCache {
|
impl KeyCache {
|
||||||
@@ -97,7 +96,7 @@ impl KeyCacheAccess for MultiBitTestParams<u32> {
|
|||||||
type Keys = MultiBitBootstrapKeys<u32>;
|
type Keys = MultiBitBootstrapKeys<u32>;
|
||||||
|
|
||||||
fn access(keycache: &KeyCache) -> &KeyCacheCoreImpl<Self, Self::Keys> {
|
fn access(keycache: &KeyCache) -> &KeyCacheCoreImpl<Self, Self::Keys> {
|
||||||
&keycache.u32_multi_bit_cache
|
&keycache.u32_multi_bit
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -105,7 +104,7 @@ impl KeyCacheAccess for MultiBitTestParams<u64> {
|
|||||||
type Keys = MultiBitBootstrapKeys<u64>;
|
type Keys = MultiBitBootstrapKeys<u64>;
|
||||||
|
|
||||||
fn access(keycache: &KeyCache) -> &KeyCacheCoreImpl<Self, Self::Keys> {
|
fn access(keycache: &KeyCache) -> &KeyCacheCoreImpl<Self, Self::Keys> {
|
||||||
&keycache.u64_multi_bit_cache
|
&keycache.u64_multi_bit
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -113,7 +112,7 @@ impl KeyCacheAccess for ClassicTestParams<u32> {
|
|||||||
type Keys = ClassicBootstrapKeys<u32>;
|
type Keys = ClassicBootstrapKeys<u32>;
|
||||||
|
|
||||||
fn access(keycache: &KeyCache) -> &KeyCacheCoreImpl<Self, Self::Keys> {
|
fn access(keycache: &KeyCache) -> &KeyCacheCoreImpl<Self, Self::Keys> {
|
||||||
&keycache.u32_classic_cache
|
&keycache.u32_classic
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -121,7 +120,7 @@ impl KeyCacheAccess for ClassicTestParams<u64> {
|
|||||||
type Keys = ClassicBootstrapKeys<u64>;
|
type Keys = ClassicBootstrapKeys<u64>;
|
||||||
|
|
||||||
fn access(keycache: &KeyCache) -> &KeyCacheCoreImpl<Self, Self::Keys> {
|
fn access(keycache: &KeyCache) -> &KeyCacheCoreImpl<Self, Self::Keys> {
|
||||||
&keycache.u64_classic_cache
|
&keycache.u64_classic
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -129,7 +128,7 @@ impl KeyCacheAccess for ClassicTestParams<u128> {
|
|||||||
type Keys = ClassicBootstrapKeys<u128>;
|
type Keys = ClassicBootstrapKeys<u128>;
|
||||||
|
|
||||||
fn access(keycache: &KeyCache) -> &KeyCacheCoreImpl<Self, Self::Keys> {
|
fn access(keycache: &KeyCache) -> &KeyCacheCoreImpl<Self, Self::Keys> {
|
||||||
&keycache.u128_classic_cache
|
&keycache.u128_classic
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -137,7 +136,7 @@ impl KeyCacheAccess for FftTestParams<u32> {
|
|||||||
type Keys = FftBootstrapKeys<u32>;
|
type Keys = FftBootstrapKeys<u32>;
|
||||||
|
|
||||||
fn access(keycache: &KeyCache) -> &KeyCacheCoreImpl<Self, Self::Keys> {
|
fn access(keycache: &KeyCache) -> &KeyCacheCoreImpl<Self, Self::Keys> {
|
||||||
&keycache.u32_fft_cache
|
&keycache.u32_fft
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -145,7 +144,7 @@ impl KeyCacheAccess for FftTestParams<u64> {
|
|||||||
type Keys = FftBootstrapKeys<u64>;
|
type Keys = FftBootstrapKeys<u64>;
|
||||||
|
|
||||||
fn access(keycache: &KeyCache) -> &KeyCacheCoreImpl<Self, Self::Keys> {
|
fn access(keycache: &KeyCache) -> &KeyCacheCoreImpl<Self, Self::Keys> {
|
||||||
&keycache.u64_fft_cache
|
&keycache.u64_fft
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -153,7 +152,7 @@ impl KeyCacheAccess for FftTestParams<u128> {
|
|||||||
type Keys = FftBootstrapKeys<u128>;
|
type Keys = FftBootstrapKeys<u128>;
|
||||||
|
|
||||||
fn access(keycache: &KeyCache) -> &KeyCacheCoreImpl<Self, Self::Keys> {
|
fn access(keycache: &KeyCache) -> &KeyCacheCoreImpl<Self, Self::Keys> {
|
||||||
&keycache.u128_fft_cache
|
&keycache.u128_fft
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -161,7 +160,7 @@ impl KeyCacheAccess for FftWopPbsTestParams<u64> {
|
|||||||
type Keys = FftWopPbsKeys<u64>;
|
type Keys = FftWopPbsKeys<u64>;
|
||||||
|
|
||||||
fn access(keycache: &KeyCache) -> &KeyCacheCoreImpl<Self, Self::Keys> {
|
fn access(keycache: &KeyCache) -> &KeyCacheCoreImpl<Self, Self::Keys> {
|
||||||
&keycache.u64_fft_wopbs_cache
|
&keycache.u64_fft_wopbs
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -169,7 +168,7 @@ impl KeyCacheAccess for PackingKeySwitchTestParams<u32> {
|
|||||||
type Keys = PackingKeySwitchKeys<u32>;
|
type Keys = PackingKeySwitchKeys<u32>;
|
||||||
|
|
||||||
fn access(keycache: &KeyCache) -> &KeyCacheCoreImpl<Self, Self::Keys> {
|
fn access(keycache: &KeyCache) -> &KeyCacheCoreImpl<Self, Self::Keys> {
|
||||||
&keycache.u32_pksk_cache
|
&keycache.u32_pksk
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -177,7 +176,7 @@ impl KeyCacheAccess for PackingKeySwitchTestParams<u64> {
|
|||||||
type Keys = PackingKeySwitchKeys<u64>;
|
type Keys = PackingKeySwitchKeys<u64>;
|
||||||
|
|
||||||
fn access(keycache: &KeyCache) -> &KeyCacheCoreImpl<Self, Self::Keys> {
|
fn access(keycache: &KeyCache) -> &KeyCacheCoreImpl<Self, Self::Keys> {
|
||||||
&keycache.u64_pksk_cache
|
&keycache.u64_pksk
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#[cfg(feature = "gpu")]
|
#[cfg(feature = "gpu")]
|
||||||
@@ -185,7 +184,7 @@ impl KeyCacheAccess for NoiseSquashingTestParams<u128> {
|
|||||||
type Keys = FftBootstrapKeys<u128>;
|
type Keys = FftBootstrapKeys<u128>;
|
||||||
|
|
||||||
fn access(keycache: &KeyCache) -> &KeyCacheCoreImpl<Self, Self::Keys> {
|
fn access(keycache: &KeyCache) -> &KeyCacheCoreImpl<Self, Self::Keys> {
|
||||||
&keycache.u128_noise_squashing_cache
|
&keycache.u128_noise_squashing
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ use crate::shortint::engine::ShortintEngine;
|
|||||||
use crate::shortint::parameters::ShortintKeySwitchingParameters;
|
use crate::shortint::parameters::ShortintKeySwitchingParameters;
|
||||||
use crate::shortint::EncryptionKeyChoice;
|
use crate::shortint::EncryptionKeyChoice;
|
||||||
|
|
||||||
#[allow(dead_code)]
|
#[allow(dead_code, clippy::struct_field_names)]
|
||||||
pub struct CudaKeySwitchingKey<'keys> {
|
pub struct CudaKeySwitchingKey<'keys> {
|
||||||
pub(crate) key_switching_key: CudaLweKeyswitchKey<u64>,
|
pub(crate) key_switching_key: CudaLweKeyswitchKey<u64>,
|
||||||
pub(crate) dest_server_key: &'keys CudaServerKey,
|
pub(crate) dest_server_key: &'keys CudaServerKey,
|
||||||
|
|||||||
@@ -81,6 +81,7 @@ pub(crate) struct KeySwitchingKeyBuildHelper<'keys> {
|
|||||||
/// sends it to the server so it can cast from one set of parameters to another.
|
/// sends it to the server so it can cast from one set of parameters to another.
|
||||||
#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Versionize)]
|
#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Versionize)]
|
||||||
#[versionize(KeySwitchingKeyVersions)]
|
#[versionize(KeySwitchingKeyVersions)]
|
||||||
|
#[allow(clippy::struct_field_names)]
|
||||||
pub struct KeySwitchingKey {
|
pub struct KeySwitchingKey {
|
||||||
pub(crate) key_switching_key_material: KeySwitchingKeyMaterial,
|
pub(crate) key_switching_key_material: KeySwitchingKeyMaterial,
|
||||||
pub(crate) dest_server_key: ServerKey,
|
pub(crate) dest_server_key: ServerKey,
|
||||||
|
|||||||
@@ -12,6 +12,7 @@ use tfhe_versionable::Versionize;
|
|||||||
/// A structure containing a public key.
|
/// A structure containing a public key.
|
||||||
#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Versionize)]
|
#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Versionize)]
|
||||||
#[versionize(PublicKeyVersions)]
|
#[versionize(PublicKeyVersions)]
|
||||||
|
#[allow(clippy::struct_field_names)]
|
||||||
pub struct PublicKey {
|
pub struct PublicKey {
|
||||||
pub(crate) lwe_public_key: LwePublicKeyOwned<u64>,
|
pub(crate) lwe_public_key: LwePublicKeyOwned<u64>,
|
||||||
pub parameters: ShortintParameterSet,
|
pub parameters: ShortintParameterSet,
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
nightly-2025-02-20
|
nightly-2025-04-16
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ use crate::{
|
|||||||
pub(crate) enum VersionizeImplementor {
|
pub(crate) enum VersionizeImplementor {
|
||||||
Classic(ClassicVersionizeAttribute),
|
Classic(ClassicVersionizeAttribute),
|
||||||
Convert(ConvertVersionizeAttribute),
|
Convert(ConvertVersionizeAttribute),
|
||||||
Transparent(TransparentStruct),
|
Transparent(Box<TransparentStruct>),
|
||||||
}
|
}
|
||||||
|
|
||||||
impl VersionizeImplementor {
|
impl VersionizeImplementor {
|
||||||
@@ -33,9 +33,9 @@ impl VersionizeImplementor {
|
|||||||
match attributes {
|
match attributes {
|
||||||
VersionizeAttribute::Classic(classic) => Ok(Self::Classic(classic)),
|
VersionizeAttribute::Classic(classic) => Ok(Self::Classic(classic)),
|
||||||
VersionizeAttribute::Convert(convert) => Ok(Self::Convert(convert)),
|
VersionizeAttribute::Convert(convert) => Ok(Self::Convert(convert)),
|
||||||
VersionizeAttribute::Transparent => {
|
VersionizeAttribute::Transparent => Ok(Self::Transparent(Box::new(
|
||||||
Ok(Self::Transparent(TransparentStruct::new(decla, base_span)?))
|
TransparentStruct::new(decla, base_span)?,
|
||||||
}
|
))),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user