Commit Graph

3540 Commits

Author SHA1 Message Date
yuxizama
edea215146 docs(frontend): language edits 2024-05-30 10:25:55 +02:00
youben11
b6a43cfc5c feat(compiler/simu): support signed integers nightly-2024.05.16 2024-05-15 10:53:42 +01:00
youben11
c655856b1c test(compiler): overflow in simulation 2024-05-15 10:53:42 +01:00
youben11
cae77e89bf feat(compiler/simu): add loc in overflow warnings 2024-05-15 10:53:42 +01:00
youben11
b953d57fe4 feat(compiler): warn when there is overflow in sim (native encoding) 2024-05-15 10:53:42 +01:00
youben11
001aba6809 refactor(compiler, simu): rewrite add/mul to CAPI calls 2024-05-15 10:53:42 +01:00
Umut
8fef2ab114 docs(compiler): update documentation of dialects 2024-05-15 11:21:46 +03:00
Umut
d954b279e8 fix(compiler): use exact passes on check tests to avoid reordering when new passes are introduced 2024-05-15 11:21:46 +03:00
Umut
8e4d237364 feat(compiler): fancy assignment 2024-05-15 11:21:46 +03:00
Umut
6e36d0f801 feat(compiler): tensor.generate to scf.forall 2024-05-15 11:21:46 +03:00
Umut
0b161c436f feat(compiler): fancy indexing operation 2024-05-15 11:21:46 +03:00
Bourgerie Quentin
efe223e181 fix(compiler): Share the decompress state instead of try to avoid copies
This partially reverts commit 081e8b7b74.
nightly-2024.05.15
2024-05-14 15:08:34 +02:00
Ayoub Benaissa
c740503b0e fix(ci): use GITHUB_TOKEN for workflow dispatch 2024-05-14 13:39:22 +01:00
Ayoub Benaissa
bf76d8f1b4 fix(ci): fail when build cmd fail nightly-2024.05.14 2024-05-13 11:39:06 +01:00
Ayoub Benaissa
a9cdc0f890 fix(ci): remove dependence between diff py repo pushes
we don't want one push failure to impact the others
2024-05-13 11:39:06 +01:00
youben11
20590cf6df fix(ci): make docker push on public release nightly-2024.05.09 nightly-2024.05.10 2024-05-08 12:18:39 +01:00
youben11
d5a1bbdad5 feat(ci): release CP to new zama public pypi nightly-2024.05.08 2024-05-07 12:18:18 +01:00
aquint-zama
622df68b34 docs(frontend-python): fix redirections nightly-2024.05.07 2024-05-06 15:47:51 +02:00
Bourgerie Quentin
081e8b7b74 fix(compiler): Decompression of evaluation keys was done several times 2024-05-06 11:53:34 +02:00
rudy
b0301483ff chore(frontend-python): requires 99% coverage nightly-2024.05.04 2024-05-03 14:09:55 +02:00
Antoniu Pop
fe2682a78e docs(compiler): Add documentation for enabling and configuring GPU offloading. 2024-05-03 11:58:56 +01:00
Antoniu Pop
73d254162b feat(compiler): [GPU runtime] add heuristic estimate of GPU vs. CPU core ratio and update CPU HW threads usedwhen not specified by user. 2024-05-03 11:58:56 +01:00
Antoniu Pop
05ee0a59c9 fix(compiler): [GPU backend] add SDFG_MAX_BATCH_SIZE environment variable to control batching limit. 2024-05-03 11:58:56 +01:00
Antoniu Pop
904cbae70a fix(compiler): [GPU backend] Restrict SDFG generation and batching to bootstrapping subgraphs to limit overhead. Restricts loop parallelism in loop nests where SDFG put/get operations occur as they have side effects. 2024-05-03 11:58:56 +01:00
Antoniu Pop
a431c9d4ef feat(compiler): [GPU backend] enable parallel loop collapsing for GPU backend using batching and fix loop coalescing infrastructure in MLIR to allow operation before bufferization. 2024-05-03 11:58:56 +01:00
Antoniu Pop
a3a6216cbf feat(compiler): [GPU runtime] add basic support for multiple keys on GPU. 2024-05-03 11:58:56 +01:00
Alexandre Péré
b96fecea16 chore(optimizer): please new rust compiler lints 2024-05-03 10:15:47 +02:00
Alexandre Péré
36cf48113a fix(optimizer): faulty output regeneration 2024-05-03 10:15:47 +02:00
Alexandre Péré
6f323e58a2 fix(optimizer): broken viz macro 2024-05-03 10:15:47 +02:00
rudy
1d0a63caa5 fix(optimizer): woppbs, full cost, missing ks and hybrid packing ep 2024-05-03 09:28:59 +02:00
Yuxi Zhao
854b6eae3d docs(frontend): add a link 2024-05-03 09:26:33 +02:00
yuxizama
2e658bd6a2 docs(frontend): fix a broken link 2024-05-03 09:26:33 +02:00
yuxizama
e07d224894 docs(frontend): change wordings 2024-05-03 09:26:33 +02:00
yuxizama
d4aef32835 docs(frontend): change wordings 2024-05-03 09:26:33 +02:00
yuxizama
81e584bda1 docs(frontend): update card images and texts 2024-05-03 09:26:33 +02:00
Alexandre Péré
d033102a3c feat(optimizer): allow circuit manipulation in optimizer dag nightly-2024.05.03 nightly-2024.05.02 nightly-2024.05.01 2024-04-30 10:16:52 +02:00
aquint-zama
9b2e39fd10 docs(frontend): renaming nightly-2024.04.30 2024-04-29 17:33:29 +02:00
aquint-zama
c2677fa3bd docs(frontend): add redirections 2024-04-29 17:33:29 +02:00
Umut
3d338af27f feat(frontend-python): memory usage per location 2024-04-29 11:12:48 +02:00
Benoit Chevallier-Mames
179080aacb fix(compiler): this file had been removed from GitBook. nightly-2024.04.27 2024-04-26 16:31:35 +02:00
Benoit Chevallier-Mames
adf1c18d80 fix(compiler): fixing a few typos in the doc 2024-04-26 16:31:35 +02:00
Antoniu Pop
7e0bae5c27 fix(ci): [Distributed CI] add missing directory. 2024-04-26 12:39:11 +01:00
Antoniu Pop
088bc7987d fix(ci): [Distributed CI] remove all of the concrete directory when cleaning the instance as lock files can persist after a failed run and the instance is not regenerated each time. 2024-04-26 10:16:18 +01:00
Bourgerie Quentin
9beaeac007 feat(compiler): Allow concat with only one operand 2024-04-26 10:13:54 +02:00
Andi Drebes
51b5b42c05 fix(compiler): Support indirect references to IVs in indexes when hoisting RT.await_future ops
Until now, the pass hoisting `RT.await_future` operations only
supports `tensor.parallel_insert_slice` operations that use loop
induction variables directly as indexes. Any more complex indexing
expressions produce a domination error, since a
`tensor.parallel_insert_slice` cloned by the pass into an additional
parallel for loop is left with references to values from the original
loop.

This change properly clones operations producing intermediate values
within the original parallel for loop and thus adds support for
indexing expressions that reference loops IVs only indirectly.
nightly-2024.04.26
2024-04-25 11:05:54 +02:00
Luis Montero
5c5f573e5b fix(frontend): remove ResourceWarning from using TemporaryDirectory
We currently have something like `var = TemporaryDirectory`
without explicitly calling the `close` method on `var` thus
raising a `ResourceWarning` when the resource is implicitely cleaned-up.

This could be avoided by using `mkdtemp` instead.
2024-04-25 10:02:47 +03:00
Andi Drebes
16f00416fc fix(compiler): Fix RT type parser: Remove unconditional parsing of prefix "future"
The type parser of the RT dialect unconditionally attempts to parse
the string "future". This breaks the parsing of any RT type. Remove
unconditional parsing of this prefix.
nightly-2024.04.25
2024-04-23 13:26:35 +02:00
Andi Drebes
e238067cd8 fix(compiler): Type inference rewriter: Handle return-like operations correctly
Return-like operations require special treatment by the type inference
rewriter, since their operand types are both tied to the result types
of their producers and to result types of their parent operations.

The inference scheme for ordinary operations, in which the initial
local inference state is composed of the operand types of the
rewritten producers and the old types of related operations before
rewriting is insufficient, since this may result in a mismatch between
the inferred types and the actual types of the already rewritten
parent operation.

Until now, precedence of the new result types of the parent operation
has been implemented by simply designating these types as the operand
types of a return-like operation. However, while this works as
intended for return-like operations, which simply forward values
(e.g., `func.return`), this creates invalid IR for other return-like
operations (e.g., `tensor.yield`).

This change implements precedence of the result types of the parent
operation of a return-like operation by adding the return types of the
already rewritten parent operation to the initial local inference
state before final invocation of type inference.
nightly-2024.04.23 nightly-2024.04.20 nightly-2024.04.24
2024-04-19 09:10:57 +02:00
Benoit Chevallier-Mames
46f92ec6ec chore(frontend): clarify XOR-distance example. nightly-2024.04.19 2024-04-18 19:14:38 +02:00
Bourgerie Quentin
676a787ff2 fix(compiler): Use concrete-cpu function to compute key size in compilation feedbacks 2024-04-18 14:55:43 +02:00