Commit Graph

38 Commits

Author SHA1 Message Date
Zhang Qinghua 12826b0f6c Add core/abstract/ops directory.
Move core_ops.h.
2022-04-14 19:31:28 +08:00
zhoufeng b7bb53ff73 build libmindspore_backend.so
Signed-off-by: zhoufeng <zhoufeng54@huawei.com>
2022-03-17 19:14:45 +08:00
huanghui 1077601e26 add cpp ut for jit_config 2022-03-10 10:56:18 +08:00
zhoufeng f49b195c39 extract common as an independent shared library
Signed-off-by: zhoufeng <zhoufeng54@huawei.com>
2022-02-26 10:55:51 +08:00
Zhang Qinghua d2572719f7 Eliminate unused nodes in a tuple or list node. 2022-01-07 21:30:01 +08:00
zhousiyi 19e9571149 rename env_getitem/setitem to EnvironGet/EnvironGet 2022-01-04 02:17:30 +00:00
i-robot d251800c62 !26705 Add the check of function return None.
Merge pull request !26705 from Margaret_wangrui/return_none
2021-11-24 11:09:27 +00:00
Margaret_wangrui f9a384456a Add the check of function return None. 2021-11-24 15:30:35 +08:00
He Wei 41dcac9c49 Replace std::unordered_map/set with robin-hood-hashing
Robin-hood-hashing (https://github.com/martinus/robin-hood-hashing)
is considered faster then std::unordered_map/set,
so we use it to improve mindspore performance.

1. robin_hood head file in `third_party/robin_hood/include`;
2. In `utils/hash_map.h` and `utils/hash_set.h`, we define:
 - mindspore::HashMap as an alias of robin_hood::unordered_map;
 - mindspore::HashSet as an alias of robin_hood::unordered_set;
3. Replace:
 - `#include <unordered_map>` --> `#include "utils/hash_map.h"`;
 - `#include <unordered_set>` --> `#include "utils/hash_set.h"`;
 - `std::unordered_map` --> `mindspore::HashMap`;
 - `std::unordered_set` --> `mindspore::HashSet`;
 - `map.insert(std::pair(key, value))` --> `map.emplace(key, value)`;
 - `[] (const std::pair<K, V> &p) {..} ` --> `[] (const auto &p) {..} `;
4. Fix issues found by switch to robin_hood:
 - AnfNodeConfig hash and equal;
 - Fix a bug in `Slice::operator==()`;
 - Fix a bug in `CNode::HasPrimalAttr()`;
 - Fix map.erase() usage bugs: `map.erase(iter++)` --> `iter = map.erase(iter)`;
 - Fix some iterator invalidated problem;
5. Some std::unordered_map/set can not replace by robin_hood:
 - As parameter of functions that exposed to python by pybind11;
 - Use bad hash that cause robin_hood::map over_flow, such as AbstractBasePtrListHasher;
6. Update cpp unit tests;
7. Add build option '-F' to enable robin_hood, default on.
2021-11-24 10:47:40 +08:00
huanghui ba66c0d491 add security isolate for save_graphs 2021-09-14 10:24:12 +08:00
Zhang Qinghua 7203989c26 Support fallback feature in Graph mode (1). 2021-09-06 16:00:03 +08:00
Zhang Qinghua b37a0cef63 Modify context searching and creating routine. 2021-07-06 11:01:52 +08:00
Zhang Qinghua 5ad27e7639 Evaluate the func graph in simulative stack, not to call recursively. 2021-05-11 15:36:22 +08:00
LianLiguang bdc21bcf3e change infer value 2021-04-12 20:38:10 +08:00
buxue d830a2b55a optimize exception mode when use undefined name in if for and while 2021-03-27 17:28:52 +08:00
dingpeifei 87e41aaeee IR operators of GPU and CPU are unified as batchnorm 2021-03-18 19:02:28 +08:00
l00591931 bbdb050fc7 Change switch to Switch 2021-03-11 17:06:55 +08:00
l00591931 cf7c5840e3 Change return 2021-03-04 09:38:43 +08:00
yujianfeng f0b7c3dd4d Add a switch to control grad for scalar 2021-02-27 18:12:37 +08:00
yujianfeng 41189781f3 support scalar input for cell 2021-02-25 09:56:15 +08:00
mindspore-ci-bot cbfba95ad0 !11921 do not broaden when arg is not tensor
From: @zhangbuxue
Reviewed-by: 
Signed-off-by:
2021-02-03 17:07:47 +08:00
buxue 6ccc4379b4 do not broaden scalar 2021-02-03 11:30:25 +08:00
mindspore-ci-bot b189f177bb Change tuple_getitem to TupleGetItem and some other ops, merge from r1.1 to master 2021-02-02 15:54:15 +08:00
zhouyuanshen d1e6878011 remove dot 2021-02-01 09:39:27 +08:00
buxue 6d395c1d3f keep consistent in Graph mode and PyNative mode for 'isinstance' 2021-01-05 21:36:10 +08:00
Yi Huaijie d7faa77b5e support int64 shape 2020-11-05 21:15:49 +08:00
zhousiyi d0e58dd765 remove ccsrc/common.h
replace frontend/operator/ops.h in backend with base/core_ops.h as
backend should not use any frontend-only primitive
2020-08-20 09:34:07 +00:00
fary86 38083e055a Fix coredump missing return statement after while loop 2020-08-18 14:16:21 +08:00
buxue b075674cf2 support tensor attr shape and dtype in graph mode 2020-08-03 17:09:31 +08:00
liubuyu f4bc0bc9fe move the dependency of utils to core 2020-07-27 10:28:46 +08:00
liubuyu 43c79eb853 mindspore path adjust 2020-07-14 18:07:28 +08:00
Zhang Qinghua 87715ed127 Refactoring for base and abstract types: Moving Base into base folder; Splitting the abstract type and infer&specialize routines; 2020-07-14 09:38:00 +08:00
He Wei 43e0967024 Decouple ir::Tensor class from python 2020-06-24 10:28:59 +08:00
leopz 4508134ceb add tensor_minnie and separate py from ir 2020-05-28 14:26:26 +08:00
huangdongrun 1159f2b11e add prim infer attr cache
modify infer to get abstract value and attr value map together

support get attr in specialize

clone primitive when specialize if attribute is not the same with
infered attribute
2020-05-26 16:19:58 +08:00
Kang be60bd3d79 Code refactoring for the static_analysis : modified Infer to Eval. 2020-05-15 09:56:41 +08:00
panfengfeng 53a98210af skip ut test cases temporarily 2020-04-11 09:28:09 +08:00
zhunaipan 930a1fb0a8 initial version
Signed-off-by: leonwanghui <leon.wanghui@huawei.com>
2020-03-27 22:54:54 +08:00