TensorFlow框架中OpenCL核函数的测试验证方案设计与实现

作者:陈禹乔; 孙羽菲*; 程大果; 张玉志; 周建宇; 隋轶丞; 石昌青
来源:数据与计算发展前沿, 2022, 4(02): 17-28.

摘要

【目的】TensorFlow是人工智能领域最具代表性的深度学习框架。国产加速设备需要一个支持OpenCL的TensorFlow才能发挥其加速性能,为此需要将TensorFlow框架下的CUDA代码向OpenCL转换。如何验证OpenCL核函数的正确性,是研发任务面对的重要问题。【方法】基于TensorFlow动态链接库自定义算子和raw_ops测试接口,本文提出了一套OpenCL核函数的测试解决方案,包括自定义算子的源码设计规范、测试代码规范、代码审核方法和测试流程。【结果】本文实现了对135个OpenCL核函数代码的审核与测试,在各种数据类型及多种数据规模下进行了测试对比,完成了OpenCL核函数正确性的验证,及其与CUDA核函数的性能比较。【结论】本文为TensorFlow下OpenCL核函数的测试提供了可靠而有效的解决方案。