【技术实现步骤摘要】
用于组合操作的技术
[0001]至少一个实施例涉及用于执行和促进人工智能的处理资源。例如,至少一个实施例涉及根据本文描述的各种新颖技术使用神经网络用于执行训练和/或推理的处理器或计算系统。
技术介绍
[0002]训练神经网络和/或使用神经网络推理可能使用大量的存储器、时间或计算资源。用于训练神经网络和/或使用神经网络推理的存储器、时间或计算资源的量可以得到改进。
附图说明
[0003]图1是示出根据至少一个实施例的、用于组合操作的系统的框图;
[0004]图2是示出根据至少一个实施例的操作图的框图;
[0005]图3是示出根据至少一个实施例的、用于执行包括组合操作的指令的系统的框图;
[0006]图4是根据至少一个实施例的、生成包括组合操作的指令的技术的流程图;
[0007]图5是根据至少一个实施例的组合操作的技术的流程图;
[0008]图6是根据至少一个实施例的、生成包括组合操作的指令的技术的流程图;
[0009]图7A示出了根据至少一个实施例的推理和/或训练 ...
【技术保护点】
【技术特征摘要】
1.一种处理器,包括:一个或更多个电路,所述一个或更多个电路用于使两个或更多个依赖的归约操作被组合到软件内核中。2.根据权利要求1所述的处理器,其中所述两个或更多个依赖的归约操作包括第一归约操作和依赖于所述第一归约操作的第二归约操作,并且所述一个或更多个电路使得所述第二归约操作的输入张量的一个或更多个元素的坐标被生成,并且使得所述两个或更多个依赖的归约操作至少部分地基于所生成的坐标而被组合。3.根据权利要求1所述的处理器,其中所述两个或更多个依赖的归约操作包括平均操作、求和操作、积操作、最小值操作或最大值操作中的两个或更多个。4.根据权利要求1所述的处理器,其中所述一个或更多个电路使一个或更多个线程被分配给由所述两个或更多个依赖的归约操作使用的张量的元素,并且使得所述两个或更多个依赖的归约操作至少部分地基于分配的一个或更多个线程而被组合到所述软件内核中。5.根据权利要求1所述的处理器,其中所述一个或更多个电路使向量与一组数据之间的一个或更多个乘法操作被一组替换操作替换,并且使所述两个或更多个依赖的归约操作与所述一组替换操作被组合到所述软件内核中。6.根据权利要求1所述的处理器,其中所述两个或更多个依赖的归约操作包括第一归约操作和依赖于所述第一归约操作的第二归约操作,并且所述软件内核将在并行处理单元上执行。7.一种处理器,包括:一个或更多个电路,所述一个或更多个电路用于执行包括两个或更多个依赖的归约操作的软件内核。8.根据权利要求7所述的处理器,其中至少部分地基于由所述两个或更多个依赖的归约操作中的一个或更多个归约操作所使用的张量的坐标,所述两个或更多个依赖的归约操作已由编译器组合到所述软件内核中。9.根据权利要求7所述的处理器,其中所述两个或更多个依赖的归约操作与一个或更多个逐元素操作已由编译器组合到所述软件内核中。10.根据权利要求7所述的处理器,其中所述两个或更多个依赖的归约操作与一个或更多个复制操作已由编译器组合到所述软件内核中。11.根据权利要求7所述的处理器,其中所述两个或更多个依赖的归约操作包括平均操作、求和操作、积操作、最小值操作或最大值操作中的两个或更多个。12.根据权利要求7所述的处理器,其中所述一个或更多个电路用于在从主机计算机系统接收到内核启动命令之后执行所述软件内核。13.一种机器可读介质,其具有存储在其上的一组指令,所述一组指令如果由处理器执行,则使所述处理器至少:执行包括两个或更多个依赖的归约操作的软件内核。14.根据权利要求13所述的机器可读介质,其中所述两个或更多个依赖的归约操作由编译器组合到所述软件内核中。15.根据权利要求13所述的机器可读介质,其中所述两个或更多个依赖的归约操作与逐元素操作或复制操作中的一个或更多个由编译器组合到所述软件内核中。16.根据权利要求13所述的机器可读介质,其中所述软件内核包括将并行执行的指令,并且至少部分地基于被分配给由所述两个或更多个依赖的归约操作中的一个或更多个使
用的一个或更多个张量的多个线程,所述两个或更多个依赖的归约操作由编译器组合到所述软件内核中,其中所述多个线程用于并行执行一个或更多个操作。17.根据权利要求13所述的机器可读介质,其中所述两个或更多个依赖的归约操作包括平均操作、求和操作、积操作、最小值操作或最大值操作中的两个或更多个。18.根据权利要求13所述的机器可读介质,其中所述软件内核将在并行处理单元或图形处理单元上被执行。19.一种方法,包括:将两个或更多个依赖的归约操作组合到软件内核中。20.根据权利要求19所述的方法,还包括:生成由所述两个或更多个依赖的归约操作中的一个或更多个使用的一个或更多个张量的一个或更多个元素...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。