TT-Metal v0.58.0-rc17 版本深度解析:性能优化与模型支持新进展
TT-Metal 是 Tenstorrent 公司开发的一款高性能计算框架,专注于为 AI 和机器学习工作负载提供高效的硬件加速支持。该框架通过深度优化计算图执行、内存管理和设备通信等核心组件,能够充分发挥 Tenstorrent 硬件架构的计算潜力。
本次发布的 v0.58.0-rc17 版本带来了多项重要更新,主要集中在性能优化、新模型支持以及系统稳定性提升三个方面。这些改进不仅增强了框架的功能性,也为开发者提供了更高效、更稳定的开发体验。
核心性能优化
本次版本在性能优化方面做出了多项重要改进。最值得注意的是新增了 DRAM 预取器的性能模式支持,这一特性可以显著提升内存密集型应用的执行效率。通过智能预取数据,减少了处理器等待数据的时间,特别适合处理大规模张量运算。
另一个关键优化是针对 Llama SDPA 解码过程的改进。新版本采用了 16x32 的瓦片布局,并移除了不必要的 copy_blocks 操作,这使得解码过程的计算密度更高,内存访问模式更加高效。对于自然语言处理任务,这种优化可以带来明显的端到端性能提升。
在设备初始化方面,新版本增加了对 6U 设备上 2D Torus 拓扑的支持。这种拓扑结构能够更好地匹配某些特定计算模式的通信需求,为分布式计算提供了更灵活的硬件资源配置方式。
新模型与算子支持
模型支持方面,本次更新引入了对 YOLOv8s_world 和 YOLOv9c 模型的完整支持。特别是为 YOLOv8x 模型添加了跟踪(trace)支持,这使得开发者能够更深入地分析模型在 Tenstorrent 硬件上的执行情况,便于进行针对性的优化。
在算子层面,新版本增加了多个重要功能:
- 实现了 ttnn.experimental.broadcast_to 操作,扩展了张量广播能力
- 为 ttnn.add 操作添加了 uint16 数据类型支持
- 完善了 ttnn.sort 的单核实现,提升了排序操作的执行效率
- 增加了对 0D、1D 和 0V 张量的 matmul 操作支持,扩展了矩阵乘法的应用场景
特别值得一提的是新加入的 ttnn.stack 操作实现,这个功能在构建复杂计算图时非常有用,能够更灵活地组合多个张量。
系统稳定性与可靠性增强
在系统稳定性方面,本次更新包含了多项重要修复。移除了 DispatchMemMap 单例模式,改为由 MetalContext 管理其生命周期,这一改动消除了潜在的资源管理问题,提高了长时间运行的稳定性。
针对设备通信,新版本修复了 reduce scatter 操作中接收方/发送方 ID 计算的问题,并优化了 all_gather_concat 操作对 RM(行主序)输入的支持。这些改进使得分布式计算更加可靠。
内存管理方面也有显著改进,包括更新了 DRAM 切片大小的计算逻辑,以及修复了 RMS 操作中持久性缓冲区 tt_stats 的错误释放问题。这些改动减少了内存相关错误的可能性。
开发者体验优化
为了提升开发者体验,新版本做了多项改进。增加了 ProgramDescriptor 的支持,为未来的 TTNN 通用操作奠定了基础。完善了性能分析工具,现在可以生成每个核心的操作到操作时间 CSV 报告,便于进行细粒度的性能分析。
文档方面也有更新,特别是完善了 unary 操作的文档,帮助开发者更好地理解和使用这些基础操作。此外,新版本还移除了遗留的异步模式 API,简化了编程接口。
测试与验证增强
测试覆盖方面,新版本增加了多个专项测试:
- 针对 6U 设备的全网格带宽测试
- 系统健康测试二进制文件,专门用于 6U/T3K 设备
- 更新了 SDXL 模型的 conv2d 和 group_norm 测试
- 为 Resnet50 添加了稳定性测试脚本
这些新增的测试用例有助于确保系统在各种使用场景下的可靠性和性能一致性。
总结
TT-Metal v0.58.0-rc17 版本在性能、功能和稳定性三个方面都取得了显著进展。通过引入新的性能优化技术、扩展模型和算子支持、以及增强系统可靠性,这个版本为开发者提供了更强大、更稳定的计算平台。特别是对计算机视觉模型(YOLO 系列)和基础算子的支持完善,使得框架能够更好地满足多样化的 AI 应用开发需求。这些改进将为 Tenstorrent 硬件上的高性能计算应用开发奠定更加坚实的基础。
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0152- DDeepSeek-V4-ProDeepSeek-V4-Pro(总参数 1.6 万亿,激活 49B)面向复杂推理和高级编程任务,在代码竞赛、数学推理、Agent 工作流等场景表现优异,性能接近国际前沿闭源模型。Python00
LongCat-Video-Avatar-1.5最新开源LongCat-Video-Avatar 1.5 版本,这是一款经过升级的开源框架,专注于音频驱动人物视频生成的极致实证优化与生产级就绪能力。该版本在 LongCat-Video 基础模型之上构建,可生成高度稳定的商用级虚拟人视频,支持音频-文本转视频(AT2V)、音频-文本-图像转视频(ATI2V)以及视频续播等原生任务,并能无缝兼容单流与多流音频输入。00
auto-devAutoDev 是一个 AI 驱动的辅助编程插件。AutoDev 支持一键生成测试、代码、提交信息等,还能够与您的需求管理系统(例如Jira、Trello、Github Issue 等)直接对接。 在IDE 中,您只需简单点击,AutoDev 会根据您的需求自动为您生成代码。Kotlin03
Intern-S2-PreviewIntern-S2-Preview,这是一款高效的350亿参数科学多模态基础模型。除了常规的参数与数据规模扩展外,Intern-S2-Preview探索了任务扩展:通过提升科学任务的难度、多样性与覆盖范围,进一步释放模型能力。Python00
skillhubopenJiuwen 生态的 Skill 托管与分发开源方案,支持自建与可选 ClawHub 兼容。Python0112