Commit Graph

11 Commits

Author SHA1 Message Date
He Wei 7d9a783993 [auto-monad] Support side-effects by auto-monad
The basic idea is: exploits data dependency to control the execution order
of side-effect operations, and keep the semantics of ANF unchanged.

The ControlDepend primitive is removed and there are two primitives added:

1. UpdateState:
```
  a = Assign(para, value)
```
became:
```
  a = Assign(para, value, u)
  u = UpdateState(u, a)
```

2. Load:
```
  x = Add(para, value)
```
became:
```
  p = Load(para, u)
  x = Add(p, value)
  u = UpdateState(u, p)
```
2021-02-08 09:01:15 +08:00
Wei Luning 24a10225cf change base class of ref to tensor in cpp 2020-08-26 12:41:25 +08:00
huangdongrun 2a6d346d2f support if by if grad parameter
add join for ref

adjust env eliminate to eliminate all env ops

add partial app cache

resolve while endless

fix env eliminate

support for "for while" cases

fix join shape error
2020-08-15 09:47:10 +08:00
buxue 2c4cb49a11 support interface 'all' and 'any' of tensor 2020-08-04 18:24:56 +08:00
buxue 66bbdb4a31 change tensor dtype and shape from function to attr 2020-06-12 19:03:23 +08:00
kingfo 38436f929f move hook function to primtivePy class 2020-06-10 15:33:46 +08:00
BowenK 96379faa3a Remove ZerosLikeTensor and sub with ZerosLike 2020-06-02 09:52:12 +08:00
rick_sanchez e2a322b6b7 Modify code to support dynamic graph. 2020-06-01 10:20:24 +08:00
jinyaohui 26fd75895d pylint waring clean 2020-05-13 11:30:27 +08:00
kingfo 75fec82b52 resolve pynative operator issue 2020-04-16 21:02:22 +08:00
zhunaipan 930a1fb0a8 initial version
Signed-off-by: leonwanghui <leon.wanghui@huawei.com>
2020-03-27 22:54:54 +08:00