Systems, apparatuses, and methods for chained fused multiply add

    公开(公告)号:US11487541B2

    公开(公告)日:2022-11-01

    申请号:US17107134

    申请日:2020-11-30

    申请人: Intel Corporation

    摘要: Embodiments of systems, apparatuses, and methods for chained fused multiply add. In some embodiments, an apparatus includes a decoder to decode a single instruction having an opcode, a destination field representing a destination operand, a first source field representing a plurality of packed data source operands of a first type that have packed data elements of a first size, a second source field representing a plurality of packed data source operands that have packed data elements of a second size, and a field for a memory location that stores a scalar value. A register file having a plurality of packed data registers includes registers for the plurality of packed data source operands that have packed data elements of a first size, the source operands that have packed data elements of a second size, and the destination operand. Execution circuitry executes the decoded single instruction to perform iterations of packed fused multiply accumulate operations by multiplying packed data elements of the sources of the first type by sub-elements of the scalar value, and adding results of these multiplications to an initial value in a first iteration and a result from a previous iteration in subsequent iterations.

    Interruptible and restartable matrix multiplication instructions, processors, methods, and systems

    公开(公告)号:US10275243B2

    公开(公告)日:2019-04-30

    申请号:US15201442

    申请日:2016-07-02

    申请人: Intel Corporation

    IPC分类号: G06F9/30 G06F9/38

    摘要: A processor of an aspect includes a decode unit to decode a matrix multiplication instruction. The matrix multiplication instruction is to indicate a first memory location of a first source matrix, is to indicate a second memory location of a second source matrix, and is to indicate a third memory location where a result matrix is to be stored. The processor also includes an execution unit coupled with the decode unit. The execution unit, in response to the matrix multiplication instruction, is to multiply a portion of the first and second source matrices prior to an interruption, and store a completion progress indicator in response to the interruption. The completion progress indicator to indicate an amount of progress in multiplying the first and second source matrices, and storing corresponding result data to the third memory location, that is to have been completed prior to the interruption.

    Systems, apparatuses, and methods for chained fused multiply add

    公开(公告)号:US10146535B2

    公开(公告)日:2018-12-04

    申请号:US15299420

    申请日:2016-10-20

    申请人: Intel Corporation

    IPC分类号: G06F9/30 G06F7/544

    摘要: Embodiments of systems, apparatuses, and methods for chained fused multiply add. In some embodiments, an apparatus includes a decoder to decode a single instruction having an opcode, a destination field representing a destination operand, a first source field representing a plurality of packed data source operands of a first type that have packed data elements of a first size, a second source field representing a plurality of packed data source operands that have packed data elements of a second size, and a field for a memory location that stores a scalar value. A register file having a plurality of packed data registers includes registers for the plurality of packed data source operands that have packed data elements of a first size, the source operands that have packed data elements of a second size, and the destination operand. Execution circuitry executes the decoded single instruction to perform iterations of packed fused multiply accumulate operations by multiplying packed data elements of the sources of the first type by sub-elements of the scalar value, and adding results of these multiplications to an initial value in a first iteration and a result from a previous iteration in subsequent iterations.

    Generational Thread Scheduler
    8.
    发明申请
    Generational Thread Scheduler 审中-公开
    生成线程调度程序

    公开(公告)号:US20170031729A1

    公开(公告)日:2017-02-02

    申请号:US15290375

    申请日:2016-10-11

    申请人: Intel Corporation

    IPC分类号: G06F9/52

    CPC分类号: G06F9/52 G06F2209/5014

    摘要: Disclosed herein is a generational thread scheduler. One embodiment may be used with processor multithreading logic to execute threads of executable instructions, and a shared resource to be allocated fairly among the threads of executable instructions contending for access to the shared resource. Generational thread scheduling logic may allocate the shared resource efficiently and fairly by granting a first requesting thread access to the shared resource allocating a reservation for the shared resource to each other requesting thread of the executing threads and then blocking the first thread from re-requesting the shared resource until every other thread that has been allocated a reservation, has been granted access to the shared resource. Generation tracking state may be cleared when each requesting thread of the generation that was allocated a reservation has had their request satisfied.

    摘要翻译: 这里公开的是一代代线程调度器。 一个实施例可以与处理器多线程逻辑一起使用以执行可执行指令的线程,以及在竞争访问共享资源的可执行指令的线程之间公平分配的共享资源。 生成线程调度逻辑可以通过向共享资源授予对共享资源的预留的第一请求线程访问来对其执行线程的请求线程,然后阻止第一线程重新请求 共享资源,直到已分配了预留的每个其他线程已被授予对共享资源的访问权限。 当分配了预约的生成的每个请求线程已经满足了请求时,可以清除生成跟踪状态。

    PACKED FINITE IMPULSE RESPONSE (FIR) FILTER PROCESSORS, METHODS, SYSTEMS, AND INSTRUCTIONS
    10.
    发明申请
    PACKED FINITE IMPULSE RESPONSE (FIR) FILTER PROCESSORS, METHODS, SYSTEMS, AND INSTRUCTIONS 有权
    包装有限冲突响应(FIR)过滤器,方法,系统和说明

    公开(公告)号:US20160328233A1

    公开(公告)日:2016-11-10

    申请号:US14704633

    申请日:2015-05-05

    申请人: INTEL CORPORATION

    IPC分类号: G06F9/30 H03H17/02

    摘要: A processor includes a decode unit to decode a packed finite impulse response (FIR) filter instruction that indicates one or more source packed data operands, a plurality of FIR filter coefficients, and a destination storage location. The source operand(s) include a first number of data elements and a second number of additional data elements. The second number is one less than a number of FIR filter taps. An execution unit, in response to the packed FIR filter instruction being decoded, is to store a result packed data operand. The result packed data operand includes the first number of FIR filtered data elements that each is to be based on a combination of products of the plurality of FIR filter coefficients and a different corresponding set of data elements from the one or more source packed data operands, which is equal in number to the number of FIR filter taps.

    摘要翻译: 处理器包括解码单元,用于解码指示一个或多个源打包数据操作数,多个FIR滤波器系数和目的地存储位置的压缩有限脉冲响应(FIR)滤波器指令。 源操作数包括第一数量的数据元素和第二数量的附加数据元素。 第二个数字是少于FIR滤波器抽头的数量。 响应于被解码的打包FIR滤波器指令,执行单元是存储结果打包数据操作数。 结果打包数据操作数包括第一数量的FIR滤波数据元素,每个FIR滤波数据元素将基于多个FIR滤波器系数的乘积和来自一个或多个源打包数据操作数的不同对应的数据元素的组合, 其数量与FIR滤波器抽头的数量相等。