【技术实现步骤摘要】
程序信息的处理方法和装置
本专利技术实施例涉及计算机技术,尤其涉及一种程序信息的处理方法和装置。
技术介绍
图像处理相关算法的应用领域广泛,在移动智能终端、物联网和人工智能等领域都有着广泛应用。在移动智能终端方面,游戏、社交、安全和金融支付领域都会使用图像处理相关算法;在物联网方面,智能交通和智慧城市也经常用到图像处理算法;在人工智能方面,例如人脸识别等技术也在最近获得较大进步。图像处理算法在很多应用中有时间约束限制、实时性要求以及功耗限制,图形处理器(英文:GraphicProcessingUnit,简称:GPU)平台具有强大的计算能力,同时其功耗还比较低,以GPU技术为基础搭建的异构加速计算平台的应用领域变得越来越广泛,在由GPU构建的计算平台上编写程序,目前多使用开放平台(英文:ComputeUnifiedDeviceArchitecture,简称:CUDA)或开放运算语言(英文:OpenComputingLanguage,简称:OpenCL)编写程序,CUDA和OpenCL均为异构并行编程模型。OpenCL可以使用在任意GPU平台上,因此OpenCL的适应 ...
【技术保护点】
一种程序信息的处理方法,其特征在于,包括:获取待处理程序信息中的适合硬件平台的至少一个算法片段;根据预先配置的计算模式库,为每个算法片段选择对应的第一优化方案;所述计算模式库中包括计算模式与优化方案的映射关系;根据硬件平台和每个算法片段对应的第一优化方案将所述至少一个算法片段转换成开放运算语言OpenCL代码。
【技术特征摘要】
1.一种程序信息的处理方法,其特征在于,包括:获取待处理程序信息中的适合硬件平台的至少一个算法片段;根据预先配置的计算模式库,为每个算法片段选择对应的第一优化方案;所述计算模式库中包括计算模式与优化方案的映射关系;根据硬件平台和每个算法片段对应的第一优化方案将所述至少一个算法片段转换成开放运算语言OpenCL代码。2.根据权利要求1所述的方法,其特征在于,所述硬件平台为GPU平台,所述获取待处理程序信息中的适合硬件平台的至少一个算法片段,包括:将所述待处理程序信息转换成具有高层语义的中转程序信息;将所述中转程序信息中能够满足所述GPU平台,且在主机端和加速器端满足收益评估模型的算法程序片段作为所述至少一个算法片段。3.根据权利要求2所述的方法,其特征在于,所述根据预先配置的计算模式库,为每个算法片段选择对应的第一优化方案,包括:根据预先定义的计算模式,确定每个算法片段所属的第一计算模式;根据每个算法片段所属的所述第一计算模式,查询所述计算模式库中的计算模式与优化方案的所述映射关系,获取每个算法片段对应的所述第一优化方案。4.根据权利要求3所述的方法,其特征在于,所述第一优化方案包括以下优化中的至少一种:并行化归约、向量化并行、共享内存优化、局部同步优化、通信优化、向量化访存、访存合并优化和边界处理向量并行化。5.根据权利要求3或4所述的方法,其特征在于,所述根据硬件平台和每个算法片段对应的第一优化方案将所述至少一个算法片段转换成开放运算语言OpenCL代码,包括:确定算法特征参数空间和硬件平台特征参数空间;根据所述算法特征参数空间和所述硬件平台特征参数空间,将每个算法片段对应的第一优化方案实例化得到第二优化方案;根据每个算法片段对应的第二优化方案,将...
【专利技术属性】
技术研发人员:卢兴敬,
申请(专利权)人:华为技术有限公司,中国科学院计算技术研究所,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。