首页
/ Tenstorrent/tt-metal v0.58.0-rc15版本技术解析与架构演进

Tenstorrent/tt-metal v0.58.0-rc15版本技术解析与架构演进

2025-07-10 18:32:35作者:苗圣禹Peter

Tenstorrent/tt-metal项目是一个专注于高性能计算和AI加速的开源项目,它提供了一套完整的软件栈来支持Tenstorrent的AI加速硬件。该项目包含了从底层硬件驱动到高层神经网络框架的全栈实现,旨在为AI工作负载提供极致的性能和效率。

核心架构改进

本次发布的v0.58.0-rc15版本带来了多项重要的架构改进,其中最值得注意的是对DRAM预取器性能模式的增强支持。这一改进允许系统根据工作负载特性动态调整预取策略,从而显著提升内存密集型应用的性能表现。

在内存管理方面,项目团队移除了DispatchMemMap单例模式,将其所有权转移至MetalContext。这一架构调整简化了内存管理模型,提高了系统的模块化程度,同时也为未来的多设备支持打下了更坚实的基础。

性能优化与功能增强

新版本在多方面进行了性能优化,包括:

  1. 6U设备支持:移除了对6U设备的限制,扩展了硬件兼容性范围,为更大规模的计算集群提供了支持。

  2. YOLO模型支持:新增了对yolov8s_world和yolov8x模型的跟踪性能支持,进一步丰富了计算机视觉应用的模型生态。

  3. TT-Mesh集成:实现了TTNN与TT-Mesh的原生多设备后端集成,为分布式计算提供了更高效的通信机制。

  4. Halo多播优化:在WH/BH架构上实现了原地Halo多播,减少了数据移动开销,提升了通信效率。

编程模型与API改进

在编程接口方面,本次更新带来了多项重要改进:

  1. 异步API清理:移除了遗留的异步模式API,简化了编程模型,使开发者能够更专注于业务逻辑。

  2. TTNN扩展

    • 新增了stack操作支持
    • 增强了upsample操作对非均匀分片的支持
    • 添加了broadcast_to实验性操作
    • 为add操作添加了uint16支持
  3. 数据类型扩展:为关系运算和零比较操作添加了整型支持,丰富了操作符的数据类型兼容性。

系统稳定性与可靠性

在系统稳定性方面,本次更新包含了多项重要修复:

  1. 设备初始化:修复了多N150设备场景下的ttnn.CreateDevice问题,提高了多设备环境的可靠性。

  2. 内存管理:移除了RMS中持久缓冲区tt_stats的释放操作,避免了潜在的内存访问问题。

  3. 硬件交互:修复了RISCV_SOFT_RESET_0_BRISC的值偏移问题,确保了硬件控制信号的准确性。

  4. 测试框架:改进了测试设备ID的跟踪机制,确保测试之间不会相互干扰。

开发者工具与调试支持

新版本增强了开发者工具链:

  1. 性能分析:新增了核心间操作时间统计功能,可以生成每个核心的操作到操作时间CSV报告。

  2. 调试支持:增加了对DRAM的noc_inline_dw_write操作的监控能力,帮助开发者识别潜在的内存访问问题。

  3. 性能追踪:为设备性能分析结果添加了强制推送到Tracy的选项,便于性能数据的集中分析。

未来展望

从本次更新可以看出,Tenstorrent/tt-metal项目正朝着以下几个方向发展:

  1. 多设备支持:通过TT-Mesh集成和多设备API改进,项目正在构建更强大的分布式计算能力。

  2. 模型生态扩展:持续增加对新模型的支持,如YOLO系列和VAE相关模型。

  3. 性能精细化:通过更细粒度的性能分析和优化,不断提升系统整体效率。

  4. 开发者体验:简化API、增强调试工具,降低开发者使用门槛。

这个版本为Tenstorrent硬件平台带来了显著的性能提升和功能扩展,同时也为未来的架构演进奠定了坚实基础。项目团队在保持系统稳定性的同时,不断推进技术创新,值得开发者关注和尝试。

登录后查看全文
热门项目推荐

热门内容推荐

最新内容推荐

项目优选

收起
ohos_react_nativeohos_react_native
React Native鸿蒙化仓库
C++
179
263
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
869
514
openGauss-serveropenGauss-server
openGauss kernel ~ openGauss is an open source relational database management system
C++
130
183
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
295
331
Cangjie-ExamplesCangjie-Examples
本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。
Cangjie
333
1.09 K
harmony-utilsharmony-utils
harmony-utils 一款功能丰富且极易上手的HarmonyOS工具库,借助众多实用工具类,致力于助力开发者迅速构建鸿蒙应用。其封装的工具涵盖了APP、设备、屏幕、授权、通知、线程间通信、弹框、吐司、生物认证、用户首选项、拍照、相册、扫码、文件、日志,异常捕获、字符、字符串、数字、集合、日期、随机、base64、加密、解密、JSON等一系列的功能和操作,能够满足各种不同的开发需求。
ArkTS
18
0
CangjieCommunityCangjieCommunity
为仓颉编程语言开发者打造活跃、开放、高质量的社区环境
Markdown
1.08 K
0
kernelkernel
deepin linux kernel
C
22
5
WxJavaWxJava
微信开发 Java SDK,支持微信支付、开放平台、公众号、视频号、企业微信、小程序等的后端开发,记得关注公众号及时接受版本更新信息,以及加入微信群进行深入讨论
Java
829
22
cherry-studiocherry-studio
🍒 Cherry Studio 是一款支持多个 LLM 提供商的桌面客户端
TypeScript
601
58