Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenDILab开源决策智能平台
treevalue
提交
83aff31b
T
treevalue
项目概览
OpenDILab开源决策智能平台
/
treevalue
大约 1 年 前同步成功
通知
3
Star
213
Fork
3
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
treevalue
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
83aff31b
编写于
1月 18, 2022
作者:
HansBug
😆
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
test(hansbug): add compare with facebook nest library
上级
6f2f5b2d
变更
5
隐藏空白更改
内联
并排
Showing
5 changed file
with
71 addition
and
1 deletion
+71
-1
.github/workflows/test.yml
.github/workflows/test.yml
+2
-0
.gitignore
.gitignore
+2
-1
install_test.sh
install_test.sh
+6
-0
test/compare/facebook/__init__.py
test/compare/facebook/__init__.py
+0
-0
test/compare/facebook/test_nest.py
test/compare/facebook/test_nest.py
+61
-0
未找到文件。
.github/workflows/test.yml
浏览文件 @
83aff31b
...
...
@@ -42,6 +42,7 @@ jobs:
pip install -r requirements.txt
pip install -r requirements-build.txt
pip install -r requirements-test.txt
./install_test.sh
-
name
:
Test the basic environment
run
:
|
python -V
...
...
@@ -103,6 +104,7 @@ jobs:
pip install -r requirements.txt
pip install -r requirements-build.txt
pip install -r requirements-test.txt
./install_test.sh
-
name
:
Test the basic environment
run
:
|
python -V
...
...
.gitignore
浏览文件 @
83aff31b
...
...
@@ -1197,6 +1197,7 @@ fabric.properties
.python-version
/docs/build
/public
/.installs
/docs/source/**/*.puml.svg
/docs/source/**/*.puml.png
/docs/source/**/*.gv.svg
...
...
@@ -1208,4 +1209,4 @@ fabric.properties
/docs/source/**/*.sh.err
/docs/source/**/*.sh.exitcode
/docs/source/**/*.dat.*
!/docs/source/_static/**/*
\ No newline at end of file
!/docs/source/_static/**/*
install_test.sh
0 → 100755
浏览文件 @
83aff31b
mkdir
-p
.installs
git clone
--depth
=
1 https://github.com/facebookresearch/torchbeast.git .installs/torchbeast
cd
.installs/torchbeast/nest
CXX
=
c++ pip
install
.
-vv
cd
../../..
test/compare/facebook/__init__.py
0 → 100644
浏览文件 @
83aff31b
test/compare/facebook/test_nest.py
0 → 100644
浏览文件 @
83aff31b
try
:
import
nest
except
ImportError
:
nest
=
None
import
pytest
from
treevalue
import
FastTreeValue
,
flatten
,
mapping
,
func_treelize
,
unflatten
,
union
_TREE_DATA_1
=
{
'a'
:
1
,
'b'
:
2
,
'x'
:
{
'c'
:
3
,
'd'
:
4
}}
_TREE_1
=
FastTreeValue
(
_TREE_DATA_1
)
_UMARK
=
pytest
.
mark
.
benchmark
(
group
=
'facebook-nest'
)
if
nest
is
not
None
else
pytest
.
mark
.
ignore
@
_UMARK
class
TestCompareFacebookNest
:
def
test_nest_flatten
(
self
,
benchmark
):
benchmark
(
nest
.
flatten
,
_TREE_DATA_1
)
def
test_tv_flatten
(
self
,
benchmark
):
benchmark
(
flatten
,
_TREE_1
)
def
test_nest_pack_as
(
self
,
benchmark
):
benchmark
(
nest
.
pack_as
,
_TREE_DATA_1
,
nest
.
flatten
(
_TREE_DATA_1
))
def
test_tv_unflatten
(
self
,
benchmark
):
benchmark
(
unflatten
,
flatten
(
_TREE_1
))
def
test_nest_map
(
self
,
benchmark
):
benchmark
(
nest
.
map
,
lambda
x
:
x
**
2
,
_TREE_DATA_1
)
def
test_tv_map
(
self
,
benchmark
):
benchmark
(
mapping
,
_TREE_1
,
lambda
x
:
x
**
2
)
def
test_nest_map_many2
(
self
,
benchmark
):
def
f
(
a
,
b
):
return
a
**
b
+
a
*
b
benchmark
(
nest
.
map_many2
,
f
,
_TREE_DATA_1
,
_TREE_DATA_1
)
def
test_nest_map_many
(
self
,
benchmark
):
def
f
(
a
):
return
a
[
0
]
**
a
[
1
]
+
a
[
0
]
*
a
[
1
]
benchmark
(
nest
.
map_many
,
f
,
_TREE_DATA_1
,
_TREE_DATA_1
)
def
test_tv_treelize_call
(
self
,
benchmark
):
@
func_treelize
()
def
f
(
a
,
b
):
return
a
**
b
+
a
*
b
benchmark
(
f
,
_TREE_1
,
_TREE_1
)
def
test_tv_mapping_union
(
self
,
benchmark
):
def
f
(
a
):
return
a
[
0
]
**
a
[
1
]
def
_my_func
(
fx
,
*
v
):
return
mapping
(
union
(
*
v
),
fx
)
benchmark
(
_my_func
,
f
,
_TREE_1
,
_TREE_1
)
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录