Commit Graph

2454 Commits

Author SHA1 Message Date
Quentin Bourgerie
a241447da6 chore: Update ci to directly launch slab command and fix docker images 2023-03-13 20:13:01 +01:00
Pedro Alves
9462cdd924 feat(concrete_cpu): update with latest concrete-cpu main
- add concrete_cpu_decrypt_glwe_ciphertext_u64
- add a C entry point to encrypt values as GGSWs
- add a C entry point to init GLWE secret keys
2023-03-13 17:29:29 +01:00
Agnes Leroy
b4b09ec0ed chore(ci): fix concrete-cuda and main workflows
Also refactor clang-format script for concrete-cuda
2023-03-13 15:34:27 +01:00
Antoniu Pop
ae22911bc9 chore: llvm bump and rebase. 2023-03-13 11:51:38 +00:00
Agnes Leroy
dc7754348d concrete-cuda(ci): first setup for the concrete-cuda ci 2023-03-13 11:31:10 +01:00
Quentin Bourgerie
d2c531772d chore: Fix profile machine for test and bench 2023-03-13 11:15:01 +01:00
Quentin Bourgerie
e02d12ab64 chore: Remove concrete-core dependecy and use the local concrete-cuda instead 2023-03-10 13:30:56 +01:00
Quentin Bourgerie
d5d7962e07 chore: Integrate concrete-cuda in the mono-repo 2023-03-10 13:29:37 +01:00
Quentin Bourgerie
d81c76aa02 chore: Fixing compilation error of the python bindings 2023-03-10 13:25:56 +01:00
Quentin Bourgerie
af824bf8a2 chore: Move concrete-cuda to the new mono-repo layout 2023-03-10 11:13:29 +01:00
Mayeul@Zama
645986803c fix(optimizer): fix new nightly lints 2023-03-09 18:43:33 +01:00
Quentin Bourgerie
f3910c179b chore: Run all test on main push 2023-03-09 18:29:12 +01:00
Quentin Bourgerie
55e6d075c9 fix(compiler): unused-result 2023-03-09 17:47:16 +01:00
Andi Drebes
3b00274a02 refactor(compiler): Use FoldAdaptor for FHE and FHELinalg folders
As per
https://discourse.llvm.org/t/psa-new-improved-fold-method-signature-has-landed-please-update-your-downstream-projects/67618,
attribute-based folders are now deprecated and their use generates a
warning during compilation.

This patch replaces the raw attribute-based folders with folders using
`FoldAdaptor`.
2023-03-09 17:47:16 +01:00
Umut
d975421c50 feat: implement (de)serialization of KeySet 2023-03-09 17:47:16 +01:00
Umut
dc086a795b refactor: rename unserialize to deserialize in Python bindings 2023-03-09 17:47:16 +01:00
Umut
f1f1c37831 feat: support signed integers in python bindings 2023-03-09 17:47:16 +01:00
Umut
72005be78d feat: expose !FHE.esint<p> in Python bindings 2023-03-09 17:47:16 +01:00
Umut
e949e7e2a7 feat: introduce FHELinalg.mul_eint 2023-03-09 17:47:16 +01:00
David Testé
8575435b3e chore(ci): compute operations throughput on benchmarks results
In addition to values currently parsed and sent to database, now
throughput is also computed. This computation is done only on
mean values. New results are:
 - operations per ms
 - operations per dollar spent which depends on the machine used
   to perform the benchmarks
2023-03-09 17:47:16 +01:00
Antoniu Pop
291019ba0f feat(GPU-runtime): add a SDFG+DFR backend and runtime for dynamic GPU offloading. 2023-03-09 17:47:16 +01:00
Antoniu Pop
6eb8841652 feat(GPU-runtime): add per device cache of BS and KS keys. 2023-03-09 17:47:16 +01:00
Antoniu Pop
e42d7bbe64 fix(SDFG): add output size attribute to KS/BS. 2023-03-09 17:47:16 +01:00
Andi Drebes
c8c969773e Rebase onto llvm-project 465ee9bfb26d with local changes
This commit rebases the compiler onto commit 465ee9bfb26d from
llvm-project with locally maintained patches on top, i.e.:

  * 5d8669d669ee: Fix the element alignment (size) for memrefCopy
  * 4239163ea337: fix: Do not fold the memref.subview if the offset are
                  != 0 and strides != 1
  * 72c5decfcc21: remove github stuff from llvm
  * 8d0ce8f9eca1: Support arbitrary element types in named operations
                  via attributes
  * 94f64805c38c: Copy attributes of scf.for on bufferization and make
                  it an allocation hoisting barrier

Main upstream changes from llvm-project that required modification of
concretecompiler:

  * Switch to C++17
  * Various changes in the interfaces for linalg named operations
  * Transition from `llvm::Optional` to `std::optional`
  * Use of enums instead of string values for iterator types in linalg
  * Changed default naming convention of getter methods in
    ODS-generated operation classes from `some_value()` to
    `getSomeValue()`
  * Renaming of Arithmetic dialect to Arith
  * Refactoring of side effect interfaces (i.e., renaming from
    `NoSideEffect` to `Pure`)
  * Re-design of the data flow analysis framework
  * Refactoring of build targets for Python bindings
  * Refactoring of array attributes with integer values
  * Renaming of `linalg.init_tensor` to `tensor.empty`
  * Emission of `linalg.map` operations in bufferization of the Tensor
    dialect requiring another linalg conversion pass and registration
    of the bufferization op interfaces for linalg operations
  * Refactoring of the one-shot bufferizer
  * Necessity to run the expand-strided-metadata, affine-to-std and
    finalize-memref-to-llvm passes before converson to the LLVM
    dialect
  * Renaming of `BlockAndValueMapping` to `IRMapping`
  * Changes in the build function of `LLVM::CallOp`
  * Refactoring of the construction of `llvm::ArrayRef` and
    `llvm::MutableArrayRef` (direct invocation of constructor instead
    of builder functions for some cases)
  * New naming conventions for generated SSA values requiring rewrite
    of some check tests
  * Refactoring of `mlir::LLVM::lookupOrCreateMallocFn()`
  * Interface changes in generated type parsers
  * New dependencies for to mlir_float16_utils and
    MLIRSparseTensorRuntime for the runtime
  * Overhaul of MLIR-c deleting `mlir-c/Registration.h`
  * Deletion of library MLIRLinalgToSPIRV
  * Deletion of library MLIRLinalgAnalysis
  * Deletion of library MLIRMemRefUtils
  * Deletion of library MLIRQuantTransforms
  * Deletion of library MLIRVectorToROCDL
2023-03-09 17:47:16 +01:00
rudy
8ebfccd9a7 fix: global_p_error fails on big 16b circuits
Resolve zama-ai/concrete-numpy-internal#1858
2023-03-09 17:47:16 +01:00
Antoniu Pop
65fc4ecc21 fix(tests): do not test precision 8 when dimension is too low. 2023-03-09 17:47:16 +01:00
Quentin Bourgerie
914295b4a8 chore: Fix workflow for compiler documentation build 2023-03-09 17:43:01 +01:00
Antoniu Pop
604d993f28 fix(DFRuntime): fix make_ready_future compilation with GCC 12+ (wrt. -Werror=use-after-free). 2023-03-09 16:34:46 +01:00
Mayeul@Zama
e41b2bba63 chore(CI cpu): run zig tests 2023-03-09 09:29:04 +01:00
Agnes Leroy
818f16f39f chore(cuda): small cleanup in the pbs code 2023-03-09 09:13:31 +01:00
Mayeul@Zama
5635ce2a67 chore(CI): enable workflow dispatch 2023-03-08 18:54:22 +01:00
Mayeul@Zama
ec532034bc chore(CI cpu): install rust and use cache 2023-03-08 18:15:49 +01:00
Mayeul@Zama
83799d4fba chore: update .gitignore files 2023-03-08 18:04:29 +01:00
David Testé
a5eb6be7eb chore: fix compiler benchmarks and use slab to execute them 2023-03-08 17:54:52 +01:00
Quentin Bourgerie
54eba86c02 chore(ci): Integrate concrete-python CI 2023-03-08 17:35:00 +01:00
Quentin Bourgerie
9858cf03ba chore: Integrate concrete-python in the mono-repo 2023-03-08 13:11:39 +01:00
Quentin Bourgerie
ce7eddc22d chore: Move to the mono repo layout 2023-03-08 11:23:21 +01:00
Quentin Bourgerie
da05e3e6db chore: Integrate concrete-cpu CI 2023-03-08 10:46:29 +01:00
Quentin Bourgerie
bb728959ec chore: Integrate concrete-optimizer CI 2023-03-07 16:46:31 +01:00
Umut
4fb476aaec feat: enable dataflow parallelization by default 2023-03-07 15:47:11 +01:00
dependabot[bot]
f2646c74f2 chore(deps): bump appleboy/ssh-action from 0.1.6 to 0.1.8
Bumps [appleboy/ssh-action](https://github.com/appleboy/ssh-action) from 0.1.6 to 0.1.8.
- [Release notes](https://github.com/appleboy/ssh-action/releases)
- [Commits](4a03da89e5...b601429988)

---
updated-dependencies:
- dependency-name: appleboy/ssh-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-07 15:47:03 +01:00
Quentin Bourgerie
c20726e487 chore: Refactor the ci in order to dispatch dependeding of file changes 2023-03-07 14:40:32 +01:00
Umut
e36c7d2e03 docs: remove virtual from documentation 2023-03-07 13:26:44 +01:00
Quentin Bourgerie
ea46bd70bb chore: Fix compiler CI 2023-03-07 09:08:29 +01:00
Quentin Bourgerie
6cd9fa6eff chore: concrete-optimizer is no more build by make 2023-03-06 17:19:39 +01:00
Quentin Bourgerie
2f9c7da6c6 chore: Fix test and build compiler with the new monorepo layout 2023-03-06 17:17:29 +01:00
David Testé
556ff1249b chore(ci): rename some worflow secrets 2023-03-06 14:01:51 +01:00
David Testé
24457bd3e8 chore(ci): change private ssh key secret name 2023-03-06 14:01:51 +01:00
David Testé
5beb13b435 chore(ci): move ci directory to to repository root 2023-03-06 14:01:51 +01:00
Quentin Bourgerie
86422cf2d5 chore: Integrate concrete-optimizer in the mono-repo 2023-03-06 13:55:27 +01:00