Commit Graph

38 Commits

Author SHA1 Message Date
Benoit Chevallier-Mames
78f82fb9a1 chore: remove useless variables that make pcc didn't see 2021-11-17 11:01:57 +01:00
Benoit Chevallier-Mames
5448669e83 chore: split test_tracing
closes #913
2021-11-17 10:10:05 +01:00
Benoit Chevallier-Mames
a2a61a079f feat(tracing): add support for ndarray functions
ndarray.flatten
ndarray.__abs__
ndarray.__neg__, __pos__ and __invert__
ndarray.__rshift__ and __lshift_

refs #751
refs #218
2021-11-16 18:36:14 +01:00
Umut
6fec590e65 refactor(debugging): re-write graph formatting 2021-11-15 16:33:15 +03:00
Benoit Chevallier-Mames
1394dd6db5 chore: clarify these tests a bit 2021-11-15 10:10:58 +01:00
Arthur Meyre
93820e1588 feat: add support for __floordiv__
closes #871
closes #872
2021-11-11 09:42:02 +01:00
Arthur Meyre
955470fb89 feat: add support for __truediv__
- cannot use the standard binary op workflow as we don't have an op for div

closes #866
closes #867
2021-11-10 15:07:59 +01:00
Umut
f417246ea3 refactor(debugging): rename get_printable_graph to format_operation_graph 2021-11-08 13:20:18 +03:00
Arthur Meyre
bff367137e refactor: update GenericFunction to take an iterable as inputs
- also fix some corner cases in memory operations
- some small style changes

refs #600
2021-11-04 09:43:22 +01:00
Arthur Meyre
d2faa90106 refactor: replace UnivariateFunction by GenericFunction
- add an attribute fusable to False for the operations that should not be
explicitely fused from the original addition of GenericFunction
- add op_kind instance attribute to differentiate between TLU and memory
operations for GenericFunction

refs #600
2021-11-03 12:05:02 +01:00
Arthur Meyre
fed3342c5f fix(tracing): fix a corner case for astype on arrays with 1 element 2021-11-03 12:05:02 +01:00
Benoit Chevallier-Mames
50a6b06c37 feat(tracing): support x.reshape as well as np.reshape(x, )
closes #701
2021-11-03 11:01:06 +01:00
Benoit Chevallier-Mames
086dba4194 feat: management of reshape
refs #615
closes #786
2021-11-02 14:55:27 +01:00
Benoit Chevallier-Mames
8123a5ef45 feat: implement a generic node for functions which change shape
and implement np.transpose with it
and implement np.ravel with it

refs #745
2021-11-02 11:20:48 +01:00
Benoit Chevallier-Mames
23d4dead30 chore: remove unnecessary lambda in tests 2021-10-27 18:47:56 +02:00
Umut
118e6454b7 test(tracing): fix shape mismatch in one of the dot tracing tests 2021-10-27 17:11:19 +03:00
Benoit Chevallier-Mames
7bf2f09615 feat: remove support for np.invert
remove support for np.invert and propose to the user to use bitwise_xor instead, because of impossibilities with float fusing
closes #658
2021-10-19 10:40:23 +02:00
Arthur Meyre
a4da3b8210 feat(tracing): add output_idx information in edges
- renamed output_index to output_idx in BaseTracer
- update tracing and fusing code to manage output_idx correctly
- update OPGraph evaluate and update_values_with_bounds to manage
output_idx
- update tests checking graph validity to have output_idx set properly
- the support of actual multi-output nodes is in #81
2021-10-13 11:14:31 +02:00
Benoit Chevallier-Mames
dedbde93d0 feat: get_printable_graph is more precise
get_printable_graph prints the constant if the ArbitraryFunction has a baked constant
closes #584
2021-10-12 11:43:49 +02:00
Benoit Chevallier-Mames
e8b8869ae8 feat: write %2 = Add(%0, %1) instead of %2 = Add(0, 1)
refs #601
2021-10-11 14:34:49 +02:00
Arthur Meyre
00916bcfdb refactor: rename ArbitraryFunction to UnivariateFunction
- the naming has always been confusing and recent changes to the code make
this rename necessary for things to be clearer
2021-10-11 11:36:35 +02:00
Benoit Chevallier-Mames
e8114cc470 feat: add management of boolean binary operators with a const scalar
refs #126
refs #529
2021-10-08 15:31:04 +02:00
Benoit Chevallier-Mames
2da3895f1a feat: add more bivariate operations
which are supported if one of the operands is a constant
refs #126
2021-10-07 16:14:07 +02:00
Arthur Meyre
4a77d0515a feat(tracing): add test for extra args passed to ufuncs
- add comment to explain why sanitizing all args is safe for ufuncs
2021-10-07 12:01:44 +02:00
Benoit Chevallier-Mames
56e0ed4a11 feat: manage binary op where one input is constant
feat #126
2021-10-06 17:53:52 +02:00
Umut
83ea485fe1 feat(tracing): enable implicit broadcasting for binary operations 2021-10-06 10:33:12 +03:00
Umut
ceb23f93d5 feat(tracing): implement and test tracing of basic operations for tensors 2021-10-05 15:25:53 +03:00
Benoit Chevallier-Mames
42d5b66b69 fix: better test. 2021-09-30 10:47:27 +02:00
Benoit Chevallier-Mames
3d6baf4101 fix: fix the type 2021-09-30 10:47:27 +02:00
Benoit Chevallier-Mames
7ea39fb77d fix: clear comments 2021-09-30 10:47:27 +02:00
Benoit Chevallier-Mames
ab7cf24285 fix: pylint. 2021-09-30 10:47:27 +02:00
Benoit Chevallier-Mames
2351730cee feat: adding management of numpy.absolute
refs #126
2021-09-30 10:47:27 +02:00
Benoit Chevallier-Mames
0a758ed672 test: change a bit the way we test
to prepare modifications for more ufunc
refs #126
2021-09-30 10:47:27 +02:00
Umut
36d732b0ae refactor: rename 'data_type' field of 'BaseValue' to 'dtype' 2021-09-29 11:51:08 +03:00
Arthur Meyre
86052fa43d chore(tools): update command line for isort to follow the 100 line length 2021-09-23 14:00:07 +02:00
Arthur Meyre
959328e0f5 chore: rename hdk to concrete first pass 2021-09-06 18:43:49 +02:00
Arthur Meyre
9ffe9b667a refacto: fix missed renaming after bad merge 2021-09-02 14:27:19 +02:00
Arthur Meyre
bf2585ba0a refacto: rename hnumpy to numpy as requested for the package imports 2021-09-02 12:20:01 +02:00