概述
Poplar SDK是用于在IPU上进行图形编程的完整软件堆栈。 它包括图形编译器和支持库。
PopLibs库包含更高级别的数学和机器学习功能。 这些是Graphcore实施的行业标准ML框架(例如TensorFlow和PyTorch)的基础。 如果您正在使用这些高级框架对IPU进行编程,则无需熟悉Poplar和PopLib。
PopLibs是作为开源提供的,因此您可以使用代码来了解如何在IPU上实现功能。 您还可以扩展PopLib,以创建自己的自定义操作。 本文档介绍了如何从源代码构建PopLib。
PopLibs包含以下库:
府绸:线性代数函数(矩阵乘法,卷积)
popnn:神经网络中使用的函数(例如,非线性,池化和损失函数)
popops:控制程序中张量的操作(元素函数和归约)
poprand:使用随机数填充张量的函数
popsparse:用于操作稀疏张量的函数