【技术实现步骤摘要】
数据处理方法、装置以及电子设备
本申请涉及计算机
,更具体地,涉及一种数据处理方法、装置以及电子设备。
技术介绍
深度学习的飞速发展伴随着移动端神经网络计算引擎的快速迭代,深度学习的算法一般都是具有大计算量的特点,尤其是矩阵乘法这类超大计算量的算子往往占据着深度学习算法算力需求的一大半。但是,在相关的矩阵乘法实施方式中,还存在矩阵乘法的运算效率有待提升的问题。
技术实现思路
鉴于上述问题,本申请提出了一种数据处理方法、装置以及电子设备,以改善上述问题。第一方面,本申请提供了一种数据处理方法,应用于电子设备,所述方法包括:获取进行矩阵乘法的待计算矩阵;将所述待计算矩阵所在内存块进行分块,得到多个子分块,所述子分块的尺寸小于所述内存块的尺寸;获取矩阵对应的内存排布方式;基于所述内存排布方式,将所述待计算矩阵的元素对应于所述多个子分块进行重新排列,得到重新排序后的待计算矩阵,其中,进行所述分块后,基于所述内存排布方式,从内存中读取所述重新排序后的待计算矩阵的元素时进行元素读取的次数,小于读取重新排 ...
【技术保护点】
1.一种数据处理方法,其特征在于,应用于电子设备,所述方法包括:/n获取进行矩阵乘法的待计算矩阵;/n将所述待计算矩阵所在内存块进行分块,得到多个子分块,所述子分块的尺寸小于所述内存块的尺寸;/n获取矩阵对应的内存排布方式;/n基于所述内存排布方式,将所述待计算矩阵的元素对应于所述多个子分块进行重新排列,得到重新排序后的待计算矩阵,其中,进行所述分块后,基于所述内存排布方式,从内存中读取所述重新排序后的待计算矩阵的元素时进行元素读取的次数,小于读取重新排序前的所述待计算矩阵的元素时进行元素读取的次数;/n基于所述重新排序后的待计算矩阵执行所述矩阵乘法。/n
【技术特征摘要】
1.一种数据处理方法,其特征在于,应用于电子设备,所述方法包括:
获取进行矩阵乘法的待计算矩阵;
将所述待计算矩阵所在内存块进行分块,得到多个子分块,所述子分块的尺寸小于所述内存块的尺寸;
获取矩阵对应的内存排布方式;
基于所述内存排布方式,将所述待计算矩阵的元素对应于所述多个子分块进行重新排列,得到重新排序后的待计算矩阵,其中,进行所述分块后,基于所述内存排布方式,从内存中读取所述重新排序后的待计算矩阵的元素时进行元素读取的次数,小于读取重新排序前的所述待计算矩阵的元素时进行元素读取的次数;
基于所述重新排序后的待计算矩阵执行所述矩阵乘法。
2.根据权利要求1所述的方法,其特征在于,所述基于所述内存排布方式,将所述待计算矩阵的元素对应于所述多个子分块进行重新排列,得到重新排序后的待计算矩阵,包括:
在内存中为所述待计算矩阵分配与所述多个子分块的尺寸相同的多个新的子内存块;
基于所述内存排布方式,在所述多个新的子内存块中对所述待计算矩阵的元素的存储序列进行重新排列,得到重新排序后的待计算矩阵;
所述基于所述重新排序后的待计算矩阵执行所述矩阵乘法,包括:
从所述多个新的内存块中读取所述重新排序后的待计算矩阵的元素,以执行所述矩阵乘法。
3.根据权利要求1所述的方法,其特征在于,所述重新排序后的待计算矩阵的数量为两个,所述基于所述重新排序后的待计算矩阵执行所述矩阵乘法,包括:
基于所述重新排序后的待计算矩阵生成多层循环嵌套计算式,其中,每层所述循环嵌套计算式的循环次数基于所述重新排序后的待计算矩阵的尺寸得到;
基于所述多层循环嵌套计算式执行所述矩阵乘法。
4.根据权利要求3所述的方法,其特征在于,所述基于所述重新排序后的待计算矩阵生成多层循环嵌套计算式之前还包括:基于OpenMP方式建立多个线程;
所述基于所述多层循环嵌套计算式执行所述矩阵乘法,包括:
基于所述多个线程并行执行所述多层循环嵌套计算式,以执行所述矩阵乘法。
5.根据权利要求4所述的方法,其特征在于,所述基于OpenMP方...
【专利技术属性】
技术研发人员:陈伟,
申请(专利权)人:OPPO广东移动通信有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。