Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
PaddlePaddle
VisualDL
提交
13086db4
V
VisualDL
项目概览
PaddlePaddle
/
VisualDL
接近 2 年 前同步成功
通知
89
Star
4655
Fork
642
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
10
列表
看板
标记
里程碑
合并请求
2
Wiki
5
Wiki
分析
仓库
DevOps
项目成员
Pages
V
VisualDL
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
10
Issue
10
列表
看板
标记
里程碑
合并请求
2
合并请求
2
Pages
分析
分析
仓库分析
DevOps
Wiki
5
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
13086db4
编写于
1月 02, 2018
作者:
S
superjom
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
add with syntax
上级
ed5e6596
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
38 addition
and
2 deletion
+38
-2
visualdl/python/storage.py
visualdl/python/storage.py
+26
-2
visualdl/python/test_storage.py
visualdl/python/test_storage.py
+12
-0
未找到文件。
visualdl/python/storage.py
浏览文件 @
13086db4
...
...
@@ -9,10 +9,16 @@ dtypes = ("float", "double", "int32", "int64")
class
StorageReader
(
object
):
cur_mode
=
None
def
__init__
(
self
,
dir
,
reader
=
None
):
self
.
dir
=
dir
self
.
reader
=
reader
if
reader
else
core
.
Reader
(
dir
)
def
mode
(
self
,
mode
):
StorageReader
.
cur_mode
=
self
.
as_mode
(
mode
)
return
StorageReader
.
cur_mode
def
as_mode
(
self
,
mode
):
tmp
=
StorageReader
(
dir
,
self
.
reader
.
as_mode
(
mode
))
return
tmp
...
...
@@ -34,17 +40,29 @@ class StorageReader(object):
def
image
(
self
,
tag
):
return
self
.
reader
.
get_image
(
tag
)
def
__enter__
(
self
):
return
StorageReader
.
cur_mode
def
__exit__
(
self
,
type
,
value
,
traceback
):
pass
class
StorageWriter
(
object
):
cur_mode
=
None
def
__init__
(
self
,
dir
,
sync_cycle
,
writer
=
None
):
self
.
dir
=
dir
self
.
sync_cycle
=
sync_cycle
self
.
writer
=
writer
if
writer
else
core
.
Writer
(
dir
,
sync_cycle
)
def
mode
(
self
,
mode
):
StorageWriter
.
cur_mode
=
self
.
as_mode
(
mode
)
return
StorageWriter
.
cur_mode
def
as_mode
(
self
,
mode
):
tmp
=
StorageWriter
(
self
.
dir
,
self
.
sync_cycle
,
self
.
writer
.
as_mode
(
mode
))
return
tmp
StorageWriter
.
cur_mode
=
StorageWriter
(
self
.
dir
,
self
.
sync_cycle
,
self
.
writer
.
as_mode
(
mode
))
return
StorageWriter
.
cur_mode
def
scalar
(
self
,
tag
,
type
=
'float'
):
type2scalar
=
{
...
...
@@ -56,3 +74,9 @@ class StorageWriter(object):
def
image
(
self
,
tag
,
num_samples
,
step_cycle
):
return
self
.
writer
.
new_image
(
tag
,
num_samples
,
step_cycle
)
def
__enter__
(
self
):
return
StorageWriter
.
cur_mode
def
__exit__
(
self
,
type
,
value
,
traceback
):
pass
visualdl/python/test_storage.py
浏览文件 @
13086db4
...
...
@@ -101,6 +101,18 @@ class StorageTest(unittest.TestCase):
# self.assertTrue(
# np.equal(origin_data.reshape(PIL_image_shape), data).all())
def
test_with_syntax
(
self
):
with
self
.
writer
.
mode
(
"train"
)
as
writer
:
scalar
=
writer
.
scalar
(
"model/scalar/average"
)
for
i
in
range
(
10
):
scalar
.
add_record
(
i
,
float
(
i
))
self
.
reader
=
storage
.
StorageReader
(
self
.
dir
)
with
self
.
reader
.
mode
(
"train"
)
as
reader
:
scalar
=
reader
.
scalar
(
"model/scalar/average"
)
self
.
assertEqual
(
scalar
.
caption
(),
"train"
)
if
__name__
==
'__main__'
:
unittest
.
main
()
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录