10. embedding+mlp精排模型
? 原训练框架:
? 单机训练性能:4.5kW样本,100维特征 + 11维label,
训练2轮耗时15分钟 (10w样本/s)
? GPU方案:
? GPU V100单卡
? 训练2轮耗时1.07分钟
? 单机性能比原框架精排模型提升14倍(140w样本/s)
E
M
B
E
D
D
I
N
G
1
2
48
……
1
2
48
……
1
11
……
loss
FC+ Relu FC+ Relu FC
GPU方案性能测试
11. 训练一个迭代各计算单元耗时占比:
计算单元 time(us) fp/bp percentage(%)
opt_adam_kernel 1830 bp 15.1
sgemm_fc_layer_fp 1746 fp 14.4
sgemm_fc_layer_bp 1660 bp 13.7
value_count_kernel 1248 bp 10.3
backward_sum_kernel 1183 bp 9.8
get_insert_kernel 1164 fp/bp 9.6
forward_sum_kernel 1020 fp 8.4
MemCpy(D->D) 998 fp 8.2
MemCpy(D->D) 980 bp 8.1
sgemm_fc_layer_grad 770 bp 6.4
DeviceRadixSort_Downsweep 482 bp 4.0
update_kernel 383 bp 3.2
DeviceRadixSort_Scan 130.4 bp 1.1
DeviceRadixSort_Upsweep 124 bp 1.0
计算单元 time(us) fp/bp percentage(%)
opt_adam_kernel 1827 bp 16.7
sgemm_fc_layer_fp 1785 fp 16.3
sgemm_fc_layer_bp 1662 bp 15.2
value_count_kernel 1244 bp 11.3
get_insert_kernel 1164 fp/bp 10.6
forward_sum_kernel 1020 fp 9.3
sgemm_fc_layer_grad 778 bp 7.1
DeviceRadixSort_Downsweep 490 bp 4.5
update_kernel 383 bp 3.5
DeviceRadixSort_Scan 130 bp 1.2
DeviceRadixSort_Upsweep 124 bp 1.1
优化
优化点:
? 通 过 网 络 结 构 的 优 化 合 并 去 掉 一 些 不 必 要 的 计 算 单 元 操 作
(backward_sum_kernel)
? 通过对数据结构的优化,去掉耗时较大数据传输io操作: MemCpy(D->D)
性能提升:
? 性能比优化前版本有25%+的提升
? 单机性能比原框架精排模型提升18倍+
GPU方案单机性能极致追求
20. Model server
Model client
ctr ver.1
ctr ver.2
ctr ver.3
Model server
cvr ver.1
cvr ver.2
cvr ver.3
Model server
at ver.1
at ver.2
at ver.3
在线预测
All: ver.1
ver.2
ver.3
Latest: ver.3
specified: ver.2
Tf-serving在线服务 Tensorflow
Train
pb model
HugeCTR如何兼容在线服务系统
特点:
①在线服务框架:tfserving
②训练框架:tensorflow
③训练数据格式:tfrecord
广告粗排在线服务系统介绍