Graphcore(拟未)最新发布的Poplar SDK 2.3提供了显著的性能优化、更高的易用性和对生产工作负载的实用支持。
Poplar SDK 2.3的新功能
得益于SDK 2.3中的许多新功能和新优化,开发人员将受益于更快的训练和推理速度、更高的模型效率和更好的大型模型和数据中心规模应用程序的性能。
性能优化
- 对推理应用程序进行加速的新优化
- 为复制张量切分(Replicated Tensor Sharding,RTS)添加LAMB优化器
- 用于大型横向扩展系统的多POD复制张量切分
用户体验提升
- 加速编译时间
- 减少主机存储使用
- 改进的日志和错误处理
- 支持Debian 10.7操作系统(预览)
PopVision工具和平台支持
- 性能改善
- 线程固定
- 交换变量
如欲了解这些新功能的更多信息,请参阅我们的SDK 2.3.0发行说明。
性能和优化
新的优化和性能改善已经被添加进SDK 2.3,以支持更大型的工作负载和生产的横向扩展。
每个新的Poplar版本都会带来实质性的性能改进。使用SDK 2.3的开发人员将受益于BERT-Large的1.6x、卷积神经网络EfficientNet-B4的1.6x和ResNet-50的2.4x的训练加速。

用于推理应用程序的新优化确保了时延的优化和一致性,最大限度地提高推理性能。
TensorFlow现在完全支持优化器状态的复制张量切分(RTS)。这可以增加复制模型的吞吐量,其中优化器状态被卸载到外部流存储。由于此版本的改进,LAMB优化器使开发人员能够使用更大的批尺寸,并在当前可与RTS兼容。阅读我们的《在IPU上训练BERT-Large详述》以了解更多信息,或查看我们在GitHub上的BERT TensorFlow实施演练。
对于大规模生产工作负载,RTS现在可以在多个IPU-POD系统(IPU-POD128及以上)上部署。阅读《IPU-POD系列又一个里程碑:IPU-POD128和IPU-POD256》,了解有关IPU-POD128和IPU-POD256及其在数据中心规模创新能力方面的更多信息。
提升易用性
使用我们最新版本的Poplar软件栈来加速您的模型和对IPU进行编程,这比以往任何时候都更容易。
SDK 2.3 进一步改进了编译时间,BERT、ResNet-50和EfficientNet的速度提高了10%或更多,包括框架和图形构建时间。NLP模型BERT的主机内存利用率也降低了6.8%,并于12月在SDK 2.4下进行了额外的增强。
凭借添加对Debian 10.7的预览支持,该操作系统可用于从证券交易所到超级对撞机的广泛场景。
通过改进错误和日志处理,开发人员现在能够更轻松地解决问题。
我们的PopVision工具有哪些新功能?
在最新版本的PopVision计算图分析器和系统分析器工具中,我们添加了新功能以提高性能并使我们的工具更易于使用。作为更新的一部分,我们还包含了软件以通知用户有可用的新版本,以及具有立即开始更新或推迟更新的选项。此版本PopVision中的主要新功能详述如下。
随着模型变得更大,支持工作负载的IPU数量增加,分析信息的大小也在增加。我们在PopVision计算图分析器中发布了执行跟踪报告的重大更新,现在支持大10倍的配置文件,从而提高性能和易用性。
为了帮助开发人员更深入地了解tile之间以及IPU与主机之间的交换,计算图分析器中添加了查看交换中涉及哪些变量的选项。
在PopVision系统分析器中,开发人员现在可以选择线程或计算图,并将它们固定在报告的顶部,以便于比较它们。
开发人员资源
查看我们的开发者门户,即可访问所有最新的文档、教程、代码示例、网络研讨会、视频、研究论文和更多IPU编程资源。