文章概览
cProfile
简介
cprofile
可以输出看到每个函数运行时间、运行次数一般用于检测这一句话
output = model(input)
使用
用
cprofile
生成分析文件1
2
3import cProfile
import re
cProfile.run('re.compile("foo|bar")', 'restats')会执行
re.compile("foo|bar")
语句,保存在restats
(无后缀)中用
snakeviz
可视化cmd里直接
snakeviz restats
。会弹出一个网页
torch Profiler
使用
直接包裹
1
2
3with torch.autograd.profiler.profile(enabled=True, use_cuda=True, record_shapes=False, profile_memory=False) as prof:
output = model(input)
print(prof.table())可视化
先保存在
json
文件里1
2
3
4with torch.autograd.profiler.profile(enabled=True, use_cuda=True, record_shapes=False, profile_memory=False) as prof:
output = model(input)
print(prof.table())
prof.export_chrome_trace('./resnet_profile.json')网页地址栏输入
edge://tracing/
,选择导入json
文件- wasd操作
多想多做,发篇一作