[发明专利]重塑和广播优化以避免不必要的数据移动在审
| 申请号: | 202080033009.6 | 申请日: | 2020-04-30 |
| 公开(公告)号: | CN113767364A | 公开(公告)日: | 2021-12-07 |
| 发明(设计)人: | B.A.赫克特曼 | 申请(专利权)人: | 谷歌有限责任公司 |
| 主分类号: | G06F8/41 | 分类号: | G06F8/41;G06N20/00 |
| 代理公司: | 北京市柳沈律师事务所 11105 | 代理人: | 金玉洁 |
| 地址: | 美国加利*** | 国省代码: | 暂无信息 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 重塑 广播 优化 避免 不必要 数据 移动 | ||
1.一种由一个或多个计算机执行的方法,所述方法包括:
检测张量上的计算操作图形中的操作的原始模式,其中操作的所述原始模式返回最终输出张量并且将输入张量作为输入,其中所述原始模式包括原始重塑操作,所述原始重塑操作(i)返回原始张量并且(ii)可以被变换以使用更少存储;
利用返回小于所述原始张量的张量的一个或多个重塑操作,将操作的所述原始模式变换成操作的新模式;以及
生成特定于目标硬件平台并实现由操作的所述新模式表示的计算的可执行代码。
2.根据权利要求1所述的方法,还包括:
向所述目标硬件平台部署所生成的代码用于执行。
3.根据权利要求1或2中任一项所述的方法,其中:
操作的原始重塑模式需要数据被移动,以满足所述目标硬件平台上对于向量指令或向量存储的对齐要求。
4.根据任一前述权利要求所述的方法,其中,变换操作的所述原始模式包括:
确定由操作的所述原始模式返回的所述最终输出张量的最终输出维度;
沿着既不在所述最终输出张量中也不影响所述原始重塑操作的重塑的所述输入张量的维度来进行归约,以返回第一中间结果张量;
重塑所述第一中间结果张量以返回第二中间结果张量;以及
沿着不在来自操作的所述原始模式的所述最终输出张量的维度中的任何维度来归约所述第二中间结果张量。
5.一个或多个用指令编码的非暂时性计算机可读存储介质,当所述指令由一个或多个计算机执行时,使所述一个或多个计算机执行动作,所述动作包括:
检测张量上的计算操作图形中的操作的原始模式,其中操作的所述原始模式返回最终输出张量并且将输入张量作为输入,其中所述原始模式包括原始重塑操作,所述原始重塑操作(i)返回原始张量并且(ii)可以被变换以使用更少存储;
利用返回小于所述原始张量的张量的一个或多个重塑操作,将操作的所述原始模式变换成操作的新模式;以及
生成特定于目标硬件平台并实现由操作的所述新模式表示的计算的可执行代码。
6.根据权利要求5所述的非暂时性计算机可读存储介质,其中,所述动作还包括:
向所述目标硬件平台部署所生成的代码用于执行。
7.根据权利要求5或6中任一项所述的非暂时性计算机可读存储介质,其中:
操作的原始重塑模式需要数据被移动,以满足所述目标硬件平台上对于向量指令或向量存储的对齐要求。
8.根据权利要求5至7中任一项所述的非暂时性计算机可读存储介质,其中,变换所述原始操作模式包括:
确定由操作的所述原始模式返回的所述最终输出张量的最终输出维度;
沿着既不在所述最终输出张量中也不影响所述原始重塑操作的重塑的所述输入张量的维度来进行归约,以返回第一中间结果张量;
重塑所述第一中间结果张量以返回第二中间结果张量;以及
沿着不在来自操作的所述原始模式的所述最终输出张量的维度中的任何维度来归约所述第二中间结果张量。
9.一种系统,包括:
一个或多个计算机和其上存储有指令的一个或多个存储设备,当所述指令由所述一个或多个计算机执行时,可操作以使所述一个或多个计算机执行动作,所述动作包括:
检测张量上的计算操作图形中的操作的原始模式,其中操作的所述原始模式返回最终输出张量并且将输入张量作为输入,其中所述原始模式包括原始重塑操作,所述原始重塑操作(i)返回原始张量并且(ii)可以被变换以使用更少存储;
利用返回小于所述原始张量的张量的一个或多个重塑操作,将操作的所述原始模式变换成操作的新模式;以及
生成特定于目标硬件平台并实现由操作的所述新模式表示的计算的可执行代码。
10.根据权利要求9所述的系统,其中,所述动作还包括:
向所述目标硬件平台部署所生成的代码用于执行。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于谷歌有限责任公司,未经谷歌有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202080033009.6/1.html,转载请声明来源钻瓜专利网。





