Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Greenplum
DeepSpeed
提交
a4763f55
D
DeepSpeed
项目概览
Greenplum
/
DeepSpeed
上一次同步 大约 1 年
通知
10
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
DeepSpeed
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
a4763f55
编写于
12月 12, 2020
作者:
C
carefree0910
提交者:
GitHub
12月 11, 2020
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Supported customizing kwargs for lr_scheduler (#584)
Co-authored-by:
N
Jeff Rasley
<
jerasley@microsoft.com
>
上级
66268bd3
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
6 addition
and
6 deletion
+6
-6
deepspeed/runtime/engine.py
deepspeed/runtime/engine.py
+4
-4
deepspeed/runtime/pipe/engine.py
deepspeed/runtime/pipe/engine.py
+2
-2
未找到文件。
deepspeed/runtime/engine.py
浏览文件 @
a4763f55
...
...
@@ -979,7 +979,7 @@ class DeepSpeedEngine(Module):
torch
.
nn
.
utils
.
clip_grad_norm_
(
parameters
=
self
.
module
.
parameters
(),
max_norm
=
self
.
gradient_clipping
())
def
_take_model_step
(
self
):
def
_take_model_step
(
self
,
lr_kwargs
):
if
self
.
gradient_clipping
()
>
0.0
:
if
not
self
.
fp16_enabled
()
and
not
self
.
amp_enabled
():
self
.
clip_fp32_gradients
()
...
...
@@ -1010,14 +1010,14 @@ class DeepSpeedEngine(Module):
self
.
skipped_steps
+=
1
else
:
if
self
.
lr_scheduler
is
not
None
:
self
.
lr_scheduler
.
step
()
self
.
lr_scheduler
.
step
(
**
(
lr_kwargs
or
{})
)
if
report_progress
and
(
self
.
global_steps
+
1
)
%
self
.
steps_per_print
()
==
0
:
self
.
_report_progress
(
self
.
global_steps
+
1
)
self
.
global_steps
+=
1
self
.
global_samples
+=
self
.
train_batch_size
()
def
step
(
self
):
def
step
(
self
,
lr_kwargs
=
None
):
r
"""Execute the weight update step after forward and backward propagation
on effective_train_batch.
"""
...
...
@@ -1034,7 +1034,7 @@ class DeepSpeedEngine(Module):
if
self
.
progressive_layer_drop
:
self
.
progressive_layer_drop
.
update_state
(
self
.
global_steps
)
self
.
_take_model_step
()
self
.
_take_model_step
(
lr_kwargs
)
self
.
tput_timer
.
stop
(
report_progress
)
...
...
deepspeed/runtime/pipe/engine.py
浏览文件 @
a4763f55
...
...
@@ -940,14 +940,14 @@ class PipelineEngine(DeepSpeedEngine):
if
self
.
wall_clock_breakdown
():
self
.
timers
(
'pipe_recv_grad'
).
stop
()
def
_exec_optimizer_step
(
self
):
def
_exec_optimizer_step
(
self
,
lr_kwargs
=
None
):
if
self
.
wall_clock_breakdown
():
self
.
timers
(
'step_microstep'
).
start
()
self
.
timers
(
'step'
).
start
()
self
.
mem_status
(
'BEFORE STEP'
,
reset_max
=
True
)
self
.
_force_grad_boundary
=
True
self
.
_take_model_step
()
self
.
_take_model_step
(
lr_kwargs
)
self
.
_force_grad_boundary
=
False
self
.
mem_status
(
'AFTER STEP'
)
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录