Commit Graph

7 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
l00591931 9ec100d069 Change TensorAdd to Add, from r1.1 to master 2021-02-01 17:53:52 +08:00
panyifeng 1a54785fe2 remove name arg from gradoperation 2020-08-26 11:16:57 +08:00
Wei Luning 8f56528f8c add flags on function 2020-06-23 20:22:07 +08:00
jinyaohui 86d197dfeb clean pylint 2020-05-29 23:00:00 +08:00
jinyaohui 26fd75895d pylint waring clean 2020-05-13 11:30:27 +08:00
zhunaipan 930a1fb0a8 initial version
Signed-off-by: leonwanghui <leon.wanghui@huawei.com>
2020-03-27 22:54:54 +08:00