DS-CNN网络性能调测经验总结
【摘要】 代码链接:https://gitee.com/ascend/modelzoo/tree/master/contrib/TensorFlow/Research/speech/ds-cnn/ds-cnn_tf_huangjinsaiDSCNN网络在白银赛段的时候就发现运行的性能比GPU要慢很多倍,一直没找到原因所在黄金赛段利用profiling工具终于找到原因通过分析aicpu_0_1文件感觉A...
代码链接:https://gitee.com/ascend/modelzoo/tree/master/contrib/TensorFlow/Research/speech/ds-cnn/ds-cnn_tf_huangjinsai
DSCNN网络在白银赛段的时候就发现运行的性能比GPU要慢很多倍,一直没找到原因所在
黄金赛段利用profiling工具终于找到原因
通过分析aicpu_0_1文件感觉AudioSpectrogram20210627111443_0这个算子Task执行时间有点长,但是不知道怎么去优化,所以提了一个issue:https://gitee.com/ascend/modelzoo/issues/I3YAEX
通过分析op_summary_0_1文件感觉MatMul和TransData算子时间也是需要很久,找不到好的优化方法。
也得到了回复目前正在解决中。
本来想放弃的时候,通过和测试的交流,他发现可能是数据处理的时候GPU和NPU存在差距,于是就修改了一下代码
start = time.time() #new add
train_summary, train_accuracy, cross_entropy_value, _, _ = sess.run(
[
merged_summaries, evaluation_step, cross_entropy_mean, train_step,
increment_global_step
],
feed_dict={
fingerprint_input: train_fingerprints,
ground_truth_input: train_ground_truth,
learning_rate_input: learning_rate_value,
dropout_prob: 1.0
})
avg_time_per_step = (time.time() - start) # new add
只计算运行时候的性能,这样比一下NPU比GPU要快一点了
DS-CNN精度和性能调优数据:
平台 | Acc | 速度 |
---|---|---|
论文 | 95.4% | / |
Ascend 910A | 95.89% | 0.22 seconds/step |
GPU(Tesla V100 16GB) | 96.24% | 0.31 seconds/step |
最终感觉NPU和GPU的差异应该是在数据处理那一块。
整个过程中感觉遇到profiling的时候解析和导出数据需要权限才能导出,一开始没注意所以遇到了一些报错,也提了issue,期初以为是环境没装好,但是后来发现是权限问题,使用sudo后能正常在平台进行解析导出了。
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)