[发明专利]用于加速矩阵运算的应用程序编程接口在审
| 申请号: | 202210803936.2 | 申请日: | 2021-02-19 |
| 公开(公告)号: | CN115310034A | 公开(公告)日: | 2022-11-08 |
| 发明(设计)人: | P·迈赫尔;M·哈戈格;P·范德尔莫尔斯赤 | 申请(专利权)人: | 辉达公司 |
| 主分类号: | G06F17/16 | 分类号: | G06F17/16;G06F9/448;G06F7/575 |
| 代理公司: | 北京市磐华律师事务所 11336 | 代理人: | 高伟 |
| 地址: | 美国加利*** | 国省代码: | 暂无信息 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 用于 加速 矩阵 运算 应用程序 编程 接口 | ||
1.一种机器可读介质,其上存储有应用程序编程接口API,所述API如果由一个或更多个处理器执行,则使所述一个或更多个处理器至少:
至少部分地基于由所述API接收的参数从多个矩阵到矩阵乘法GEMM实现中选择要执行的通用GEMM实现,其中所述API使用附加参数来指示:
矩阵的行数;
所述矩阵的列数;
所述矩阵的主维度;
要执行的变换运算;和
输出位置。
2.根据权利要求1所述的机器可读介质,其中所述输出位置识别用于存储要执行的所述GEMM实现的结果的缓冲区。
3.根据权利要求1所述的机器可读介质,其中所述输出位置包括用于识别用于存储要执行的所述GEMM实现的结果的位置的指针。
4.根据权利要求1所述的机器可读介质,其中由所述API接收的参数包括用于指示所述矩阵的数据,并且所述GEMM实现至少部分地基于所述矩阵的格式而被选择。
5.根据权利要求1所述的机器可读介质,其中所述API如果由所述一个或更多个处理器执行,则使所述一个或更多个处理器通过执行来自包括所述API的软件库的指令集来执行所述GEMM实现。
6.根据权利要求1所述的机器可读介质,其中所述变换运算是要对所述矩阵执行的,并且所述矩阵包括对所述GEMM实现的输入数据。
7.根据权利要求1所述的机器可读介质,其中所述GEMM实现的输入包括所述矩阵和另一矩阵,并且所述附加参数还指示:
所述另一矩阵的行数;
所述另一矩阵的列数;
所述另一矩阵的主维度;和
要对所述另一矩阵执行的变换运算。
8.根据权利要求1所述的机器可读介质,其中所述矩阵包括浮点数据。
9.根据权利要求1所述的机器可读介质,还包括指令,所述指令如果由所述一个或更多个处理器执行,则使所述一个或更多个处理器响应于所述API而执行所述GEMM实现。
10.一种方法,包括:
响应于应用程序编程接口API,至少部分地基于由所述API接收的参数从多个矩阵到矩阵乘法GEMM实现中选择要执行的通用GEMM实现,其中所述API使用附加参数来指示:
矩阵的行数;
所述矩阵的列数;
所述矩阵的主维度;
要执行的变换运算;和
输出位置。
11.根据权利要求10所述的方法,其中由所述API接收的参数包括用于指示所述矩阵的数据,并且所述API用于使得至少部分地基于所述矩阵的布局来选择所述GEMM实现。
12.根据权利要求10所述的方法,其中所述输出位置包括用于识别用于存储要执行的所述GEMM实现的结果的位置的指针。
13.根据权利要求10所述的方法,还包括:响应于所述API执行所述变换运算,其中所述变换运算用于对所述矩阵的数据进行变换,并且所述参数用于指示所述矩阵。
14.根据权利要求10所述的方法,还包括:对所述矩阵执行所述GEMM实现,其中所述矩阵包括浮点数据。
15.根据权利要求10所述的方法,其中所述API如果被执行,则使得来自包括所述API的软件库的指令集被执行。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于辉达公司,未经辉达公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210803936.2/1.html,转载请声明来源钻瓜专利网。





