Antoniu Pop
49111dd295
fix(dfr): simplify runtime parametrization and fix implicit thread allocation policy.
2022-08-04 17:06:09 +01:00
Antoniu Pop
ae55e88435
feat(dfr): add default configuration file for HPX runtime.
2022-08-04 17:06:09 +01:00
Antoniu Pop
7410502e60
fix(dfr): simplify synchronization in work function registry.
2022-08-04 17:06:09 +01:00
Antoniu Pop
e36c7d3b55
feat(dfr): add environment variable option for using HPX configuration file path at initialization.
2022-08-04 17:06:09 +01:00
Antoniu Pop
615109d432
fix(dfr): simplify initialization and add namespaces where possible.
2022-08-04 17:06:09 +01:00
Antoniu Pop
460fbabbe0
feat(runtime): deactivate main wrapping by default and add explicit initialization/termination.
2022-08-04 17:06:09 +01:00
Antoniu Pop
954b2098c6
feat(runtime): enable distributed execution.
2022-08-04 17:06:09 +01:00
Antoniu Pop
1df468a084
feat(runtime): increase the limit of task input parameters to 16.
2022-08-04 17:06:09 +01:00
youben11
f4166a4973
docs: use consistent style for comment blocks
...
prefix comment blocks with ///
2022-07-07 16:11:19 +01:00
Antoniu Pop
fb219f0fbf
feat(runtime): increase the limit of task input parameters to 16.
2022-06-28 17:11:12 +01:00
Mayeul@Zama
928a44d243
chore(ci): enforce ending files with a newline
2022-06-16 17:04:25 +02:00
Andi Drebes
45577fb79e
Rebase onto llvm-project f69328049e9e with local changes
...
This commit rebases the compiler onto commit f69328049e9e from
llvm-project.
Changes:
* Use of the one-shot bufferizer for improved memory management
* A new pass `OneShotBufferizeDPSWrapper` that converts functions
returning tensors to destination-passing-style as required by the
one-shot bufferizer
* A new pass `LinalgGenericOpWithTensorsToLoopsPass` that converts
`linalg.generic` operations with value semantics to loop nests
* Rebase onto a fork of llvm-project at f69328049e9e with local
modifications to enable bufferization of `linalg.generic` operations
with value semantics
* Workaround for the absence of type propagation after type conversion
via extra patterns in all dialect conversion passes
* Printer, parser and verifier definitions moved from inline
declarations in ODS to the respective source files as required by
upstream changes
* New tests for functions with a large number of inputs
* Increase the number of allowed task inputs as required by new tests
* Use upstream function `mlir_configure_python_dev_packages()` to
locate Python development files for compatibility with various CMake
versions
Co-authored-by: Quentin Bourgerie <quentin.bourgerie@zama.ai >
Co-authored-by: Ayoub Benaissa <ayoub.benaissa@zama.ai >
Co-authored-by: Antoniu Pop <antoniu.pop@zama.ai >
2022-06-14 14:35:25 +02:00
youben11
1354759884
chore: rename refs to main branch
2022-06-09 09:19:06 +01:00
Umut
b052157fae
refactor: separate runtime context from public arguments
2022-05-30 10:19:14 +03:00
Quentin Bourgerie
247d60503d
fix(compiler): Custom copy op from 1D tensor to avoir stack allocation from mlir memref to llvm lowering
2022-04-13 10:16:53 +02:00
Antoniu Pop
51d4d044cb
fix(build): refactor DFRuntime build and link in ConcretelangRuntime instead.
2022-04-01 20:39:16 +01:00
Antoniu Pop
0e38e0a48c
feat(parallelization): enable OpenMP/loop parallelism as a compilation target independently of HPX/DFR.
2022-04-01 20:39:16 +01:00
Antoniu Pop
337a9bb5c2
fix(dfr): add runtime termination call on compiler main exit.
2022-03-17 16:15:02 +01:00
Antoniu Pop
27318ff29a
fix(runtime): disable main wrapping and provide _dfr_terminate new termination call for the runtime.
2022-03-17 16:15:02 +01:00
Antoniu Pop
2f31edef7f
fix(runtime): add initialization guard to avoid double initialization/finalization of the runtime.
2022-03-17 16:15:02 +01:00
Antoniu Pop
7cfa0a1212
feat(dfr): add pre_main and post_main functions to be called when main wrapping is not feasible.
2022-03-17 16:15:02 +01:00
youben11
e43e7d9c17
fix: link runtime lib with dfruntime
...
there is no symbol referenced in the runtime lib that is in dfruntime,
but it is needed during execution when code gets generated using
dfruntime functions
2022-03-17 16:15:02 +01:00
Antoniu Pop
c440fc30f8
fix: CMake dependencies
...
define CONCRETELANG_PARALLEL_EXECUTION_ENABLED at toplevel and prevent RuntimeContext copy constructors from passing engines map.
2022-03-15 18:14:35 +01:00
Mayeul@Zama
ca8d4fb110
feat(compiler): use engine concrete C API
...
remove ConcreteToConcreteCAPI and ConcreteUnparametrize passes
2022-03-15 18:14:35 +01:00
Antoniu Pop
f3fca58efc
fix(runtime): add missing assert on context BSK.
2022-02-28 21:00:48 +00:00
rudy
8b71e9d476
feat(Clientlib): separate client encryption and server computation
...
Resolve #200
2022-02-24 15:50:18 +01:00
Quentin Bourgerie
4e8a9d1077
enhance(runtime): Fix the runtime tools to handle the ciphertext bufferization and the new compiler concrete bufferized API
2022-02-17 15:53:23 +01:00
Antoniu Pop
35e6966f95
enhance(dfr/runtime): throttle the number of HPX worker threads when using OpenMP for loop parallelism within tasks.
2022-02-03 10:59:12 +00:00
Antoniu Pop
260768e9af
enhance(dfr): use linker wrapping of main in addition to start/stop; enable DFR+OpenMP.
2022-02-03 10:59:12 +00:00
Andi Drebes
0284e06016
fix(compiler): Remove unused variable err in lib/Runtime/context.cpp
2022-01-07 12:03:13 +01:00
youben11
2009ee1c94
chore: changing ref to repo after its renaming
...
also formatting and update the check_license script to match that
2022-01-06 12:40:10 +01:00
Antoniu Pop
8f71c331d4
fix(runtime): formatting.
2022-01-04 12:43:33 +01:00
Antoniu Pop
93835e0106
fix(runtime): move deallocation of key clones in context destructor.
2022-01-04 12:43:33 +01:00
Antoniu Pop
9deaa1400e
chore: add missing license header.
2022-01-04 12:43:33 +01:00
Antoniu Pop
84f01f78d6
fix(runtime/DFR): create only one BSK clone per thread and deallocate.
2022-01-04 12:43:33 +01:00
youben11
f1161f7f6d
chore: formatting
...
Quick fix due to ordering of includes, had to add #include
<mlir/Transforms/DialectConversion.h> to include/concretelang/Conversion/Utils/GenericOpTypeConversionPattern.h
2022-01-03 09:29:19 +01:00
youben11
e73291abdc
chore: rename compiler to concrete-compiler
...
zamalang => concretelang
zamacompiler => concretecompiler
2021-12-29 15:13:34 +01:00
youben11
971cb56182
chore: licensing
2021-12-29 15:13:34 +01:00
Antoniu Pop
bc3d647453
fix(dfr): make HPX runtime environment persistent and deallocate temporaries.
2021-12-23 15:57:53 +00:00
Antoniu Pop
2cba686c66
fix(runtime): enable concurrent key usage by cloning it on get operation.
2021-12-23 15:57:53 +00:00
Antoniu Pop
bb44124999
feat(dfr): add the DFR (DataFlow Runtime).
2021-12-08 18:35:29 +00:00
Quentin Bourgerie
fb58dcc59d
enhance(compiler/lowlfhe): Give the runtime context as function argument instead of a global variable ( close #195 )
2021-12-02 10:56:47 +01:00
youben11
7a48900fae
chore: build zamacompiler as an LLVM external proj
2021-10-07 14:38:50 +01:00
youben11
272a725e9a
feat(lower_LUT): add precision attribute to encode LUT at runtime
2021-09-09 20:35:28 +02:00
youben11
5f16cfabbf
fix(Runtime): link missing libraries
...
We currently use LD_PRELOAD with the python extension to make the JIT
execution find the appropriate symbols, however, not linking with some
libraries caused other tools such as make to complain of not finding
symbols from libpthread and others
2021-09-09 20:35:28 +02:00
youben11
8aee5dd5c3
chore(runtime): link concrete statically with runtime lib
2021-09-09 20:35:28 +02:00
youben11
de81ac3f3e
feat: Runtime library
2021-09-09 20:35:28 +02:00