首页
/ Tenstorrent/tt-metal v0.58.0-rc3版本技术解析

Tenstorrent/tt-metal v0.58.0-rc3版本技术解析

2025-07-10 06:27:56作者:薛曦旖Francesca

Tenstorrent/tt-metal是一个专注于高性能计算和AI加速的开源项目,它提供了针对Tenstorrent硬件架构优化的底层计算库和工具链。该项目通过精细的硬件控制和高效的算法实现,为深度学习推理和训练提供了强大的加速能力。

本次发布的v0.58.0-rc3版本带来了多项重要改进和新功能,主要集中在性能优化、功能增强和系统稳定性方面。下面我们将详细解析这些技术更新。

核心架构改进

本次版本对系统底层架构进行了重要调整,移除了DispatchMemMap单例模式,将其所有权转移至MetalContext。这一改动使得内存映射管理更加清晰,减少了全局状态带来的复杂性,提高了系统的可维护性和可扩展性。

在设备管理方面,修复了多N150设备环境下ttnn.CreateDevice的问题,确保在多设备场景下能够正确初始化和管理硬件资源。同时,数据库中的设备ID跟踪机制也得到了优化,确保测试运行间的隔离性。

性能优化与硬件控制

新版本引入了DRAM预取器的性能模式支持,允许根据不同的工作负载特点选择最优的预取策略,从而提升内存访问效率。针对WH/BH架构,实现了原地Halo多播功能,优化了数据在核心间的传输效率。

在硬件控制层面,修正了RISCV_SOFT_RESET_0_BRISC的值偏移问题,确保软复位操作能够正确执行。同时,移除了RMS中持久性缓冲区tt_stats的释放操作,避免了潜在的内存管理问题。

深度学习模型支持

本次更新显著增强了对计算机视觉模型的支持,特别是YOLO系列模型。新增了yolov8s_world模型的演示功能,并优化了yolov8x和yolov9c模型的跟踪性能。这些改进使得Tenstorrent硬件能够更高效地运行这些流行的目标检测模型。

在算子支持方面,增加了对整数类型零比较操作的支持,扩展了系统的数值处理能力。同时实现了单核排序功能(ttnn.sort),为数据处理流程提供了更多灵活性。

多设备与分布式计算

一个重要的架构演进是TTNN与TT-Mesh的集成,通过暴露原生多设备后端给TTNN,使得分布式计算能力能够更直接地被上层框架利用。这一改进为大规模模型训练和推理提供了更好的支持。

针对6U系统,新增了完整的网格带宽测试,帮助开发者更好地理解和优化大规模硬件配置下的通信性能。同时,改进了多核argmax操作的实现,使其能够支持任意维度和形状的输入张量。

开发工具与测试改进

在开发工具方面,新版本限制了xtensor-blas依赖的范围,减少了不必要的依赖关系。同时,改进了性能分析工具,能够生成每个核心的操作到操作时间CSV,为性能调优提供了更详细的数据。

测试基础设施也得到了增强,包括将FD测试迁移到CIv2环境,调整了测试超时设置,以及改进了测试固件代码的去重处理,提高了测试的可靠性和可维护性。

总结

Tenstorrent/tt-metal v0.58.0-rc3版本通过底层架构优化、性能提升和功能扩展,进一步强化了其作为高性能AI加速平台的能力。特别是对YOLO系列模型的深度支持和多设备计算能力的增强,使其在计算机视觉和分布式计算场景下表现更加出色。这些改进为开发者提供了更强大、更稳定的硬件加速能力,同时也为未来的功能扩展奠定了坚实的基础。

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