Beka Barbakadze
471ebc080b
feat(backend-gpu): implement integer multiplication, including test and benchmark
2023-08-11 12:54:18 -03:00
Pedro Alves
b91a736cd6
fix(backend-gpu): minor fixes to the rust API
2023-07-26 10:43:43 -03:00
Pedro Alves
ae43e7ffe5
feat(backend-gpu): implement the multi-bit PBS
2023-07-11 12:25:18 -03:00
Pedro Alves
5b103acbd9
feat(backend-gpu): expose a rust API for concrete-cuda
2023-07-07 13:15:56 -03:00
Pedro Alves
a4ef7543a6
feat(backend-gpu): introduce a function to check for cooperative groups support
2023-06-27 08:48:39 -03:00
Agnes Leroy
3561b51329
bench(backend-gpu): add multi-gpu support in pbs benchmark
...
Remove amortized PBS bench & bench with copy as well, it is deprecated
2023-05-24 15:32:20 +02:00
Agnes Leroy
72ee8eb572
fix(backend-gpu): decrease opt values for N >= 2048 for new low lat pbs
2023-05-23 11:34:53 +02:00
Agnes Leroy
b174f81687
fix(backend-gpu): avoid warp branching in the PBS
2023-05-17 15:01:37 +02:00
Pedro Alves
43a58e1820
refactor(backend-gpu): replace the amortized PBS by the new low latency PBS in boolean gates.
2023-05-05 18:15:06 +02:00
Pedro Alves
336709a011
refactor(backend-gpu): replace the amortized PBS by the new low latency PBS in circuit bootstrap
2023-05-05 18:15:06 +02:00
Pedro Alves
dda65a4ac6
refactor(backend-gpu): implement an alternative to the low latency pbs
2023-05-05 18:15:06 +02:00
Beka Barbakadze
d57cbfd705
fix(backend-cuda): modify bit extract to work for batch lwe ciphertexts
2023-05-05 13:01:07 +02:00
Agnes Leroy
1e8a5b0d14
fix(backend-gpu): fix cmux tree for tau > 1
2023-04-25 10:29:07 +02:00
Pedro Alves
fa226e232f
feat(backend-gpu): refactor the Wop-PBS implementation to support a wider set of parameters
2023-04-17 09:45:17 +02:00
Pedro Alves
fb862e37e8
bench(backend/gpu): fixes a memory leakage and refactors the verification for the grid size of the low latency kernel
2023-04-03 17:49:33 +02:00
Pedro Alves
c236dffdd8
chore(backend/cuda): reduces memory consumption in the bootstrap benchmark
2023-04-03 17:49:33 +02:00
Beka Barbakadze
adf7adffa3
feat(backend/cuda): add tests for fft in concrete-cuda. fix shared memory mode choosing bug, when compute capability was lower than 8.
2023-03-30 11:12:08 +02:00
Agnes Leroy
573f4756fd
fix(concrete_cuda): fix buffer size type in the scratches, int is not big enough
2023-03-22 15:55:15 +01:00
Beka Barbakadze
b5839a3993
feat(concrete-cuda): Added classical pbs support for 2^14 polynomial size, added corresponding tests.
2023-03-20 13:10:31 +01:00
Agnes Leroy
dff6532f2f
chore(concrete_cuda): update cmake minimum version required and check cmake files formatting
2023-03-20 09:44:44 +01:00
Mayeul@Zama
45f5267f3d
fix(CI): add newlines in end of files
2023-03-16 17:35:34 +01:00
Beka Barbakadze
9b4faaa66e
feat(concrete-cuda): unroll while loop for cuda fft and ifft
2023-03-16 17:53:43 +04:00
Agnes Leroy
e0c52515bf
fix(concrete_cuda): make sure r > 0 in the wop PBS
...
Sometimes the optimizer provides inconsistent parameter sets for the wop
PBS depending on how many inputs & bits to extract we're going to need
for a certain precision. This results in r < 0 and until now the
corresponding error in concrete-cuda was very hard to understand. This
commit fixes this behavior.
Also, when introducing the support for k > 1 we forgot to update the
checks on the low lat PBS. This commit also fixes them.
2023-03-16 14:00:28 +01:00
Agnes Leroy
6efe5f3a3b
fix(concrete_cuda): fix cleartext mult and enhance linalg tests
2023-03-16 14:00:06 +01:00
Agnes Leroy
629e22aaac
chore(concrete_cuda): fix tests, reduce test time
...
- Update concrete-cuda with latest commits in concrete-core
- Add C++ tests based on google test
- Run the tests in the CI with Cuda 11.8 and Cuda 11.1
- Test for many PBS/KS parameters
- Repetitions & samples are set for each parameter set in the PBS test
2023-03-16 09:30:27 +01:00
Agnes Leroy
39800f2d8a
test(concrete_cuda): add C++ tests to concrete-cuda
2023-03-16 09:30:27 +01:00
Agnes Leroy
7d7780bd23
fix(concrete_cuda): fix multi gpu behavior
2023-03-16 09:30:27 +01:00
Pedro Alves
5cb4e5ff4e
chore(concrete_cuda): Add checks to validate inputs passed to the scratch functions
2023-03-16 09:30:27 +01:00
Mayeul@Zama
570ad78442
cleanup: remove concrete-core references
2023-03-15 10:55:13 +01:00
Quentin Bourgerie
af824bf8a2
chore: Move concrete-cuda to the new mono-repo layout
2023-03-10 11:13:29 +01:00