一个简单的opencl内核自动测试框架
mokt的Python项目详细描述
内核测试硕士
mokt是一个用于opencl内核的数据驱动测试的库。它获得有效 TensorFlow模型的输入和输出-这样,您可以很容易地获得广泛的测试数据 各种机器学习操作,包括 ReLU 和element-wise addition 到整个子图,例如resnet的瓶颈块。
安装
使用pip安装:
pip install mokt
请注意,仅支持Python3。
用法
签出examples 看莫克的行动。
数据提取
建议您阅读 data extraction design note熟悉mokt与tensorflow的交互方式。
高级数据api的用法如下:
@TestData(tf_checkpoint_dir='/path/to/checkpoint/dir',tf_values={'input':'operation/name:0','output':'another/op:0'})defmy_test_func(test_data):print(type(test_data['input']))# <class 'numpy.ndarray'>my_test_func()
使用TensorBoard可以更轻松地为测试选择正确的节点, 使计算图可视化并显示有用信息,如张量形状、操作名称等。
运行opencl内核
在TestEnvironment中执行, 它方便地包装主机状态并处理数据转换(阅读类文档了解更多信息)。
当然,您可以选择编写自己的专用实现,并仅将此库用于数据提取。