Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Oneflow-Inc
OneFlow-Benchmark
提交
a52f39a2
O
OneFlow-Benchmark
项目概览
Oneflow-Inc
/
OneFlow-Benchmark
上一次同步 接近 3 年
通知
1
Star
92
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
O
OneFlow-Benchmark
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
a52f39a2
编写于
6月 01, 2020
作者:
M
mir-of
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix bool argument for argparse
上级
04a16945
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
39 addition
and
14 deletion
+39
-14
cnn_e2e/config.py
cnn_e2e/config.py
+32
-6
cnn_e2e/job_function_util.py
cnn_e2e/job_function_util.py
+1
-4
cnn_e2e/of_cnn_train_val.py
cnn_e2e/of_cnn_train_val.py
+6
-4
未找到文件。
cnn_e2e/config.py
浏览文件 @
a52f39a2
...
...
@@ -12,11 +12,21 @@ from ofrecord_util import add_ofrecord_args
def
get_parser
(
parser
=
None
):
def
str_list
(
x
):
return
x
.
split
(
','
)
def
int_list
(
x
):
return
list
(
map
(
int
,
x
.
split
(
','
)))
def
float_list
(
x
):
return
list
(
map
(
float
,
x
.
split
(
','
)))
def
str2bool
(
v
):
if
v
.
lower
()
in
(
'yes'
,
'true'
,
't'
,
'y'
,
'1'
):
return
True
elif
v
.
lower
()
in
(
'no'
,
'false'
,
'f'
,
'n'
,
'0'
):
return
False
else
:
raise
argparse
.
ArgumentTypeError
(
'Unsupported value encountered.'
)
if
parser
is
None
:
parser
=
argparse
.
ArgumentParser
(
"flags for cnn benchmark"
)
...
...
@@ -30,10 +40,28 @@ def get_parser(parser=None):
help
=
'nodes ip list for training, devided by ",", length >= num_nodes'
)
parser
.
add_argument
(
"--model"
,
type
=
str
,
default
=
"vgg16"
,
help
=
"vgg16 or resnet50"
)
parser
.
add_argument
(
"--use_fp16"
,
type
=
bool
,
default
=
False
,
help
=
"fp16"
)
parser
.
add_argument
(
"--use_boxing_v2"
,
type
=
bool
,
default
=
False
,
help
=
"use boxing v2"
)
parser
.
add_argument
(
"--use_new_dataloader"
,
type
=
bool
,
default
=
False
,
help
=
"use new dataloader"
)
parser
.
add_argument
(
'--use_fp16'
,
type
=
str2bool
,
nargs
=
'?'
,
const
=
True
,
help
=
'Whether to use use fp16'
)
parser
.
add_argument
(
'--use_boxing_v2'
,
type
=
str2bool
,
nargs
=
'?'
,
const
=
True
,
help
=
'Whether to use boxing v2'
)
parser
.
add_argument
(
'--use_new_dataloader'
,
type
=
str2bool
,
nargs
=
'?'
,
const
=
True
,
help
=
'Whether to use new dataloader'
)
# train and validaion
parser
.
add_argument
(
'--num_epochs'
,
type
=
int
,
default
=
90
,
help
=
'number of epochs'
)
parser
.
add_argument
(
"--model_load_dir"
,
type
=
str
,
default
=
None
,
help
=
"model load directory if need"
)
...
...
@@ -54,8 +82,7 @@ def get_parser(parser=None):
## snapshot
parser
.
add_argument
(
"--model_save_dir"
,
type
=
str
,
#default="./output/model_save-{}".format(str(datetime.now().strftime("%Y%m%d%H%M%S"))),
default
=
"./output/snapshots"
,
default
=
"./output/snapshots/model_save-{}"
.
format
(
str
(
datetime
.
now
().
strftime
(
"%Y%m%d%H%M%S"
))),
help
=
"model save directory"
,
)
...
...
@@ -67,7 +94,6 @@ def get_parser(parser=None):
default
=
1
,
help
=
"print loss every n iteration"
,
)
#add_dali_args(parser)
add_ofrecord_args
(
parser
)
add_optimizer_args
(
parser
)
return
parser
...
...
cnn_e2e/job_function_util.py
浏览文件 @
a52f39a2
...
...
@@ -28,12 +28,9 @@ def get_train_config(args):
if
args
.
use_boxing_v2
:
train_config
.
use_boxing_v2
(
True
)
train_config
.
prune_parallel_cast_ops
(
True
)
train_config
.
train
.
model_update_conf
(
get_optimizer
(
args
))
#if args.use_fp16:
# train_config.enable_auto_mixed_precision()
train_config
.
enable_inplace
(
True
)
return
train_config
...
...
cnn_e2e/of_cnn_train_val.py
浏览文件 @
a52f39a2
...
...
@@ -16,9 +16,11 @@ from util import Snapshot, Summary, InitNodes, Metric
import
ofrecord_util
from
job_function_util
import
get_train_config
,
get_val_config
import
oneflow
as
flow
#import vgg_model
import
alexnet_model
import
vgg_model
import
resnet_model
#import alexnet_model
total_device_num
=
args
.
num_nodes
*
args
.
gpu_num_per_node
...
...
@@ -31,8 +33,8 @@ num_val_steps = int(args.num_val_examples / val_batch_size)
model_dict
=
{
"resnet50"
:
resnet_model
.
resnet50
,
#
"vgg16": vgg_model.vgg16,
#
"alexnet": alexnet_model.alexnet,
"vgg16"
:
vgg_model
.
vgg16
,
"alexnet"
:
alexnet_model
.
alexnet
,
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录