面向AI芯片高级语言的自动测试框架技术
发布时间:2022-01-09 23:19
在这个技术飞速发展的时代,如果某一款产品想在市场上具有强大的竞争力,就必须在开发过程中具有快速的高质量的交付能力,因此,开发过程中的自动化测试就显得举足轻重了,如果在开发过程中,采用大量的手动测试,可能会导致测试任务不能及时完成,增加项目不能按时交付的风险,所以要采用自动测试框架技术,它是手动测试的延续,可以减少手动测试中的重复性工作,大大提高测试效率。本课题中的自动测试框架一共分为两部分,一个是面向Bangc的内置函数的测试集的自动测试框架,另一个是面向深度学习算子的自动测试框架,是针对某公司平台芯片MLU(Machine Learning Unit)编译器设计的,MLU是面向深度学习的的AI芯片。论文主要工作包括:(1)手动构建面向BangC的内置函数的测试集,确保内置函数的实现的正确性,构建测试集的描述文件,文件中的每一行包含内置函数名称以及内置函数所需的参数和参数大小。之后使用python语言设计自动化脚本实现测试集用例的函数调用形式,最后使用python语言和shell脚本语言实现测试集的自动测试框架,完成框架的测试与验证。(2)提取几个常用的深度学习算子,完成MLU端算子的...
【文章来源】:中国科学院大学(中国科学院大学人工智能学院)北京市
【文章页数】:66 页
【学位级别】:硕士
【部分图文】:
图2.1?MLU硬件架构图??Figure?2.1?MLU?hardware?architecture?diagram??
?|????!?_?|?I?/;?i|;|?ssiss????i?K'rae?Klr.^!?:::L——i?s?:???二:二?\[?j?|!?Core-2?Core-3?|??\?|丨丨?Registers?Registers?i??\?|||?|NRAMl?IWKAMl?|NRAM||ffRAM|?|??\!i!?^==j[i=y?丨??1!L?L_—三―—1」?11???'!??ll?-1?二——一:_=一????丨」??图2.1?MLU硬件架构图??Figure?2.1?MLU?hardware?architecture?diagram??其次,MLU设计了非常有针对性的存储架构,由于计算机访问片外的存储相??比于访问片内存储会慢好几个数量级,所以尽量的降低计算机对于片外数据的存??储就是一个优化的重要方向。MLU在内存设计上就采取了非常有针对性的内存方??案,针对祌经网络计算的特点,避免了?CPU和GPU在计算时频繁的读写内存??带来的访存瓶颈问题。总而言之,公司平台芯片提供对神经网络计算的针对性设??计和独特的内置函数集合系统,收获了优越的性能,获得了比GPU高数倍的性??能提升,如下图2.2所示的MLU与传统设备的性能比较。??MLU????GPU????FPGA????CPU????????1?10?100?1000??效能比(对数坐标)GOPS/W??图2.2?MLU相比于传统计算设备的性能比较??Figure?2.1?Performance?Comparison?Of?MLU?With?Tradit
el函数的函数名称、任务大孝参数、任务类??型和队列发给cnrt,通过cnrtInvokeKemel〇函数调用MLU的kernel函数进行计??算,调用的时候需要传递kernel参数,我们需要将计算结果返回给CPU,此时??kernel函数调用己经完成,需要对相关资源进行释放,主要就是stream以及MLU??上DDR数据,调用CNRTDestroyG函数对CNRT运行的资源进行释放,CPU端??将计算结果与正确结果进行比较,如果一致该测试用例通过,否则测试用例失败??[13],下图2.3所示的Host端调用kernel程序的流程图。??C开始)??Ho?st端启动设备??孑旨定ke?rne?1?今亍队歹ij??指定kerne?1Y壬务规I模??丄??准备MLU端数据???N????向MLU端传递数据???MLU端计算完之后4每数据拷贝回??CPU端??y?????输出FAILED,重新调??等??"?试程序??输出PASSED??-1-?、^??c结束)??图2.3?Host端程序调用kerne丨程序流程??Figure?2.3?The?Process?Of?Host?Side?Program?Calling?Kernel?Program??10??
【参考文献】:
期刊论文
[1]一种基于LabVIEW技术的电能质量仪器自动化测试框架[J]. 黄铮,杨恬,周洁. 工业控制计算机. 2019(04)
[2]基于quartz的编译自动测试系统的设计与实现[J]. 沈宇杰. 湖南工程学院学报(自然科学版). 2019(01)
[3]通用接口自动化测试框架设计与应用[J]. 张鲁珊. 电子技术与软件工程. 2019(06)
[4]基于CUDA架构图像处理并行算法实验研究[J]. 费华英. 铜仁学院学报. 2017(06)
[5]基于Python语言的自动化测试系统的设计与实现[J]. 黄建军,李宥谋,刘婧,周欢. 现代电子技术. 2017(04)
[6]人工神经网络处理器[J]. 陈云霁,陈天石. 中国科学:生命科学. 2016(02)
[7]一个支持持续集成的移动应用功能测试框架[J]. 林小捷,陆璐. 计算机与数字工程. 2015(03)
[8]基于Python的智能家居自动化测试脚本设计及实现[J]. 沈杰,潘科,刘昕,范雨晓. 电视技术. 2015(05)
[9]基于脚本的流程自适应自动化测试研究[J]. 王游,冯曙明,何金陵,方泉. 计算机与现代化. 2015(02)
[10]一种软件测试需求建模及测试用例生成方法[J]. 杨波,吴际,徐珞,毕考,刘超. 计算机学报. 2014(03)
硕士论文
[1]基于Python的自动化测试框架的分析与设计[D]. 王聪颖.北京邮电大学 2017
[2]基于QTP自动化测试框架的研究与应用[D]. 吴琼.中国科学院大学(工程管理与信息技术学院) 2015
[3]软件测试自动化工具的设计与实现[D]. 薛润光.东北大学 2012
[4]软件测试技术的应用及其发展趋势[D]. 杜源.四川大学 2005
本文编号:3579622
【文章来源】:中国科学院大学(中国科学院大学人工智能学院)北京市
【文章页数】:66 页
【学位级别】:硕士
【部分图文】:
图2.1?MLU硬件架构图??Figure?2.1?MLU?hardware?architecture?diagram??
?|????!?_?|?I?/;?i|;|?ssiss????i?K'rae?Klr.^!?:::L——i?s?:???二:二?\[?j?|!?Core-2?Core-3?|??\?|丨丨?Registers?Registers?i??\?|||?|NRAMl?IWKAMl?|NRAM||ffRAM|?|??\!i!?^==j[i=y?丨??1!L?L_—三―—1」?11???'!??ll?-1?二——一:_=一????丨」??图2.1?MLU硬件架构图??Figure?2.1?MLU?hardware?architecture?diagram??其次,MLU设计了非常有针对性的存储架构,由于计算机访问片外的存储相??比于访问片内存储会慢好几个数量级,所以尽量的降低计算机对于片外数据的存??储就是一个优化的重要方向。MLU在内存设计上就采取了非常有针对性的内存方??案,针对祌经网络计算的特点,避免了?CPU和GPU在计算时频繁的读写内存??带来的访存瓶颈问题。总而言之,公司平台芯片提供对神经网络计算的针对性设??计和独特的内置函数集合系统,收获了优越的性能,获得了比GPU高数倍的性??能提升,如下图2.2所示的MLU与传统设备的性能比较。??MLU????GPU????FPGA????CPU????????1?10?100?1000??效能比(对数坐标)GOPS/W??图2.2?MLU相比于传统计算设备的性能比较??Figure?2.1?Performance?Comparison?Of?MLU?With?Tradit
el函数的函数名称、任务大孝参数、任务类??型和队列发给cnrt,通过cnrtInvokeKemel〇函数调用MLU的kernel函数进行计??算,调用的时候需要传递kernel参数,我们需要将计算结果返回给CPU,此时??kernel函数调用己经完成,需要对相关资源进行释放,主要就是stream以及MLU??上DDR数据,调用CNRTDestroyG函数对CNRT运行的资源进行释放,CPU端??将计算结果与正确结果进行比较,如果一致该测试用例通过,否则测试用例失败??[13],下图2.3所示的Host端调用kernel程序的流程图。??C开始)??Ho?st端启动设备??孑旨定ke?rne?1?今亍队歹ij??指定kerne?1Y壬务规I模??丄??准备MLU端数据???N????向MLU端传递数据???MLU端计算完之后4每数据拷贝回??CPU端??y?????输出FAILED,重新调??等??"?试程序??输出PASSED??-1-?、^??c结束)??图2.3?Host端程序调用kerne丨程序流程??Figure?2.3?The?Process?Of?Host?Side?Program?Calling?Kernel?Program??10??
【参考文献】:
期刊论文
[1]一种基于LabVIEW技术的电能质量仪器自动化测试框架[J]. 黄铮,杨恬,周洁. 工业控制计算机. 2019(04)
[2]基于quartz的编译自动测试系统的设计与实现[J]. 沈宇杰. 湖南工程学院学报(自然科学版). 2019(01)
[3]通用接口自动化测试框架设计与应用[J]. 张鲁珊. 电子技术与软件工程. 2019(06)
[4]基于CUDA架构图像处理并行算法实验研究[J]. 费华英. 铜仁学院学报. 2017(06)
[5]基于Python语言的自动化测试系统的设计与实现[J]. 黄建军,李宥谋,刘婧,周欢. 现代电子技术. 2017(04)
[6]人工神经网络处理器[J]. 陈云霁,陈天石. 中国科学:生命科学. 2016(02)
[7]一个支持持续集成的移动应用功能测试框架[J]. 林小捷,陆璐. 计算机与数字工程. 2015(03)
[8]基于Python的智能家居自动化测试脚本设计及实现[J]. 沈杰,潘科,刘昕,范雨晓. 电视技术. 2015(05)
[9]基于脚本的流程自适应自动化测试研究[J]. 王游,冯曙明,何金陵,方泉. 计算机与现代化. 2015(02)
[10]一种软件测试需求建模及测试用例生成方法[J]. 杨波,吴际,徐珞,毕考,刘超. 计算机学报. 2014(03)
硕士论文
[1]基于Python的自动化测试框架的分析与设计[D]. 王聪颖.北京邮电大学 2017
[2]基于QTP自动化测试框架的研究与应用[D]. 吴琼.中国科学院大学(工程管理与信息技术学院) 2015
[3]软件测试自动化工具的设计与实现[D]. 薛润光.东北大学 2012
[4]软件测试技术的应用及其发展趋势[D]. 杜源.四川大学 2005
本文编号:3579622
本文链接:https://www.wllwen.com/kejilunwen/dianzigongchenglunwen/3579622.html