Pytorch Profiler+ Tensorboard + VS Code

本文详细介绍了如何在PyTorch代码中集成PyTorchProfiler进行性能分析,并通过TensorBoard可视化结果,以及如何利用VSCode便捷地启动TensorBoard。教程包括设置步骤、使用示例和实用技巧,适合深度学习开发者提升代码效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Pytorch Profiler+ Tensorboard + VS Code

Pytorch Profiler

其实用起来不是很麻烦,就是在原来的代码里插入一些即可,例如

with torch.profiler.profile(
    activities=[
        torch.profiler.ProfilerActivity.CPU,
        torch.profiler.ProfilerActivity.CUDA],
    schedule=torch.profiler.schedule(wait=1, warmup=1, active=3, repeat=2),
    on_trace_ready=torch.profiler.tensorboard_trace_handler('./visual/bs3000'),
    record_shapes=True,
    profile_memory=True,  # This will take 1 to 2 minutes. Setting it to False could greatly speedup.
    with_stack=True
) as prof:
    for step, batch_data in enumerate(train_loader):
        if step >= (1 + 1 + 3) * 2:
            break
        train(batch_data)
        prof.step()  # Need call this at the end of each step to notify profiler of steps' boundary.

这里使用的的on_trace使用的是tensorboard的trace_handle,一会儿生成的.json文件就可以使用tensorboard打开
非常好的英文blog,强烈推荐

tensorboard

可以在服务器上打开tensorboard,然后把本地端口和Server的tensorboard的端口绑定一下即可在本地打开
具体可参考这个blog

Vs Code打开Tensorboard

这个更简单了,在

import torch.profiler

下面会出现一个launch tensorboard的按钮,点一下基本上就可以傻瓜式操作,同时可以把log的目录放在一个大目录下,这样就可以同时查看多个profiler,在tensorboard中还有一个Diff按钮,可以比较不同profile文件的异同,非常好用!

### 关于VSCode中的模型分析插件 在Visual Studio Code (VSCode)环境中,存在多种插件能够帮助开发者进行模型分析工作。这些工具不仅限于特定类型的模型,而是广泛适用于机器学习、深度学习以及其他数据科学领域内的各种模型。 #### 使用ModelAnalyzer插件进行模型性能评估 为了更好地理解模型的行为并优化其表现,`ModelAnalyzer`是一个非常有用的扩展选项。通过安装此插件,用户可以获得详细的图表展示以及统计数据来直观地查看训练过程中的各项指标变化情况[^1]。 ```json { "name": "model-analyzer", "displayName": "Model Analyzer", "description": "Analyze and visualize machine learning models.", "publisher": "ml-tools" } ``` #### TensorFlow TensorBoard可视化支持 对于TensorFlow框架下的项目来说,集成官方提供的`TensorBoard`插件可以极大地方便对神经网络架构及其参数更新情况进行监控与调试。它允许实时跟踪损失函数值、绘制计算图结构等操作[^2]。 ```bash pip install tensorboard code --install-extension ms-tensorflow.tensorboard ``` #### PyTorch Profiler增强版 针对PyTorch用户的特殊需求,有专门设计用来剖析程序运行时资源消耗状况的`pytorch-profiler-enhanced`插件。这有助于识别潜在瓶颈所在之处从而采取相应措施加以改进[^3]。 ```python import torch.profiler as profiler with profiler.profile( activities=[profiler.ProfilerActivity.CPU], record_shapes=True, with_stack=True ) as prof: # Your model training or inference code here... pass print(prof.key_averages().table(sort_by="cpu_time_total")) ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值