You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Removed Backend generic from VecZnxBigAllocBytesImpl.
Add CnvPVecL and CnvPVecR structs.
Add CnvPVecBytesOf and CnvPVecAlloc traits.
Add Convolution trait, which regroups the following methods:
cnv_prepare_left_tmp_bytes
cnv_prepare_left
cnv_prepare_right_tmp_bytes
cnv_prepare_right
cnv_by_const_apply
cnv_by_const_apply_tmp_bytes
cnv_apply_dft_tmp_bytes
cnv_apply_dft
cnv_pairwise_apply_dft_tmp_bytes
cnv_pairwise_apply_dft
Add the following Reim4 traits:
Reim4Convolution
Reim4Convolution1Coeff
Reim4Convolution2Coeffs
Reim4Save1BlkContiguous
Add the following traits:
i64Save1BlkContiguous
i64Extract1BlkContiguous
i64ConvolutionByConst1Coeff
i64ConvolutionByConst2Coeffs
Update signature Reim4Extract1Blk to Reim4Extract1BlkContiguous.
Add fft64 backend reference code for
reim4_save_1blk_to_reim_contiguous_ref
reim4_convolution_1coeff_ref
reim4_convolution_2coeffs_ref
convolution_prepare_left
convolution_prepare_right
convolution_apply_dft_tmp_bytes
convolution_apply_dft
convolution_pairwise_apply_dft_tmp_bytes
convolution_pairwise_apply_dft
convolution_by_const_apply_tmp_bytes
convolution_by_const_apply
Add take_cnv_pvec_left and take_cnv_pvec_right methods to ScratchTakeBasic trait.
Add the following tests methods for convolution:
test_convolution
test_convolution_by_const
test_convolution_pairwise
Add the following benches methods for convolution:
bench_cnv_prepare_left
bench_cnv_prepare_right
bench_cnv_apply_dft
bench_cnv_pairwise_apply_dft
bench_cnv_by_const
Update normalization API and OEP to take res_offset: i64. This allows the user to specify a bit-shift (positive or negative) applied to the normalization. Behavior-wise, the bit-shift is applied before the normalization (i.e. before applying mod 1 reduction). Since this is an API break, opportunity was taken to also re-order inputs for better consistency.
VecZnxNormalize & VecZnxNormalizeImpl
VecZnxBigNormalize & VecZnxBigNormalizeImpl
This change completes the road to unlocking full support for cross-base2k normalization, along with arbitrary positive/negative offset. Code is not ensured to be optimal, but correctness is ensured.