Patents by Inventor Pramod Vasant Argade
Pramod Vasant Argade has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 12197533Abstract: A processing device is provided which comprises memory configured to store data and a processor configured to receive a portion of data of a first matrix comprising a first plurality of elements and receive a portion of data of a second matrix comprising a second plurality of elements. The processor is also configured to determine values for a third matrix by dropping a number of products from products of pairs of elements of the first and second matrices based on approximating the products of the pairs of elements as a sum of the exponents of the pairs of elements and performing matrix multiplication on remaining products of the pairs of elements of the first and second matrices.Type: GrantFiled: March 26, 2021Date of Patent: January 14, 2025Assignee: Advanced Micro Devices, Inc.Inventors: Pramod Vasant Argade, Swapnil P. Sakharshete, Maxim V. Kazakov, Alexander M. Potapov
-
Patent number: 12072952Abstract: A processing device is provided which comprises memory configured to store data and a processor. The processor comprises a plurality of MACs configured to perform matrix multiplication of elements of a first matrix and elements of a second matrix. The processor also comprises a plurality of logic devices configured to sum values of bits of product exponents values of the elements of the first matrix and second matrix and determine keep bit values for product exponents values to be kept for matrix multiplication. The processor also comprises a plurality of multiplexor arrays each configured to receive bits of the elements of the first matrix and the second matrix and the keep bit values and provide data for selecting which elements of the first matrix and the second matrix values are provided to the MACs for matrix multiplication.Type: GrantFiled: March 26, 2021Date of Patent: August 27, 2024Assignee: Advanced Micro Devices, Inc.Inventors: Swapnil P. Sakharshete, Pramod Vasant Argade, Maxim V. Kazakov, Alexander M. Potapov
-
Patent number: 12067640Abstract: Techniques for managing register allocation are provided. The techniques include detecting a first request to allocate first registers for a first wavefront; first determining, based on allocation information, that allocating the first registers to the first wavefront would result in a condition in which a deadlock is possible; in response to the first determining, refraining from allocating the first registers to the first wavefront; detecting a second request to allocate second registers for a second wavefront; second determining, based on the allocation information, that allocating the second registers to the second wavefront would result in a condition in which deadlock is not possible; and in response to the second determining, allocating the second registers to the second wavefront.Type: GrantFiled: March 26, 2021Date of Patent: August 20, 2024Assignee: Advanced Micro Devices, Inc.Inventors: Pramod Vasant Argade, Martin G. Sarov, Milind N. Nemlekar
-
Publication number: 20220309126Abstract: A processing device is provided which comprises memory configured to store data and a processor configured to receive a portion of data of a first matrix comprising a first plurality of elements and receive a portion of data of a second matrix comprising a second plurality of elements. The processor is also configured to determine values for a third matrix by dropping a number of products from products of pairs of elements of the first and second matrices based on approximating the products of the pairs of elements as a sum of the exponents of the pairs of elements and performing matrix multiplication on remaining products of the pairs of elements of the first and second matrices.Type: ApplicationFiled: March 26, 2021Publication date: September 29, 2022Applicant: Advanced Micro Devices, Inc.Inventors: Pramod Vasant Argade, Swapnil P. Sakharshete, Maxim V. Kazakov, Alexander M. Potapov
-
Publication number: 20220309125Abstract: A processing device is provided which comprises memory configured to store data and a processor. The processor comprises a plurality of MACs configured to perform matrix multiplication of elements of a first matrix and elements of a second matrix. The processor also comprises a plurality of logic devices configured to sum values of bits of product exponents values of the elements of the first matrix and second matrix and determine keep bit values for product exponents values to be kept for matrix multiplication. The processor also comprises a plurality of multiplexor arrays each configured to receive bits of the elements of the first matrix and the second matrix and the keep bit values and provide data for selecting which elements of the first matrix and the second matrix values are provided to the MACs for matrix multiplication.Type: ApplicationFiled: March 26, 2021Publication date: September 29, 2022Applicant: Advanced Micro Devices, Inc.Inventors: Swapnil P. Sakharshete, Pramod Vasant Argade, Maxim V. Kazakov, Alexander M. Potapov
-
Publication number: 20220309606Abstract: Techniques for managing register allocation are provided. The techniques include detecting a first request to allocate first registers for a first wavefront; first determining, based on allocation information, that allocating the first registers to the first wavefront would result in a condition in which a deadlock is possible; in response to the first determining, refraining from allocating the first registers to the first wavefront; detecting a second request to allocate second registers for a second wavefront; second determining, based on the allocation information, that allocating the second registers to the second wavefront would result in a condition in which deadlock is not possible; and in response to the second determining, allocating the second registers to the second wavefront.Type: ApplicationFiled: March 26, 2021Publication date: September 29, 2022Applicant: Advanced Micro Devices, Inc.Inventors: Pramod Vasant Argade, Martin G. Sarov, Milind N. Nemlekar
-
Patent number: 11394396Abstract: Techniques are disclosed for compressing data. The techniques include identifying, in data to be compressed, a first set of values, wherein the first set of values include a first number of two or more consecutive identical non-zero values; including, in compressed data, a first control value indicating the first number of non-zero values and a first data item corresponding to the consecutive identical non-zero values; identifying, in the data to be compressed, a second value having an exponent value included in a defined set of exponent values; including, in the compressed data, a second control value indicating the exponent value and a second data item corresponding to a portion of the second value other than the exponent value; and including, in the compressed data, a third control value indicating a third set of one or more consecutive zero values in the data to be compressed.Type: GrantFiled: September 25, 2020Date of Patent: July 19, 2022Assignee: Advanced Micro Devices, Inc.Inventors: Pramod Vasant Argade, Swapnil P. Sakharshete, Daniel N. Peroni
-
Publication number: 20220103183Abstract: Techniques are disclosed for compressing data. The techniques include identifying, in data to be compressed, a first set of values, wherein the first set of values include a first number of two or more consecutive identical non-zero values; including, in compressed data, a first control value indicating the first number of non-zero values and a first data item corresponding to the consecutive identical non-zero values; identifying, in the data to be compressed, a second value having an exponent value included in a defined set of exponent values; including, in the compressed data, a second control value indicating the exponent value and a second data item corresponding to a portion of the second value other than the exponent value; and including, in the compressed data, a third control value indicating a third set of one or more consecutive zero values in the data to be compressed.Type: ApplicationFiled: September 25, 2020Publication date: March 31, 2022Inventors: Pramod Vasant Argade, Swapnil P. Sakharshete, Daniel N. Peroni
-
Patent number: 10706494Abstract: A method for processing data in a graphics processing unit including receiving an indication that all threads of a warp in a graphics processing unit (GPU) are to execute a same branch in a first set of instructions, storing one or more predicate bits in a memory as a single set of predicate bits, wherein the single set of predicate bits applies to all of the threads in the warp, and executing a portion of the first set of instructions in accordance with the single set of predicate bits. Executing the first set of instructions may include executing the first set of instruction in accordance with the single set of predicate bits using a single instruction, multiple data (SIMD) processing core and/or executing the first set of instruction in accordance with the single set of predicate bits using a scalar processing unit.Type: GrantFiled: August 14, 2018Date of Patent: July 7, 2020Assignee: QUALCOMM IncorporatedInventors: Andrew Evan Gruber, Pramod Vasant Argade, Jing Wu
-
Publication number: 20190050958Abstract: A method for processing data in a graphics processing unit including receiving an indication that all threads of a warp in a graphics processing unit (GPU) are to execute a same branch in a first set of instructions, storing one or more predicate bits in a memory as a single set of predicate bits, wherein the single set of predicate bits applies to all of the threads in the warp, and executing a portion of the first set of instructions in accordance with the single set of predicate bits. Executing the first set of instructions may include executing the first set of instruction in accordance with the single set of predicate bits using a single instruction, multiple data (SIMD) processing core and/or executing the first set of instruction in accordance with the single set of predicate bits using a scalar processing unit.Type: ApplicationFiled: August 14, 2018Publication date: February 14, 2019Inventors: Andrew Evan Gruber, Pramod Vasant Argade, Jing Wu
-
Patent number: 10115175Abstract: A method for processing data in a graphics processing unit including receiving an indication that all threads of a warp in a graphics processing unit (GPU) are to execute a same branch in a first set of instructions, storing one or more predicate bits in a memory as a single set of predicate bits, wherein the single set of predicate bits applies to all of the threads in the warp, and executing a portion of the first set of instructions in accordance with the single set of predicate bits. Executing the first set of instructions may include executing the first set of instruction in accordance with the single set of predicate bits using a single instruction, multiple data (SIMD) processing core and/or executing the first set of instruction in accordance with the single set of predicate bits using a scalar processing unit.Type: GrantFiled: February 19, 2016Date of Patent: October 30, 2018Assignee: QUALCOMM IncorporatedInventors: Andrew Evan Gruber, Pramod Vasant Argade, Jing Wu
-
Publication number: 20170243320Abstract: A method for processing data in a graphics processing unit including receiving an indication that all threads of a warp in a graphics processing unit (GPU) are to execute a same branch in a first set of instructions, storing one or more predicate bits in a memory as a single set of predicate bits, wherein the single set of predicate bits applies to all of the threads in the warp, and executing a portion of the first set of instructions in accordance with the single set of predicate bits. Executing the first set of instructions may include executing the first set of instruction in accordance with the single set of predicate bits using a single instruction, multiple data (SIMD) processing core and/or executing the first set of instruction in accordance with the single set of predicate bits using a scalar processing unit.Type: ApplicationFiled: February 19, 2016Publication date: August 24, 2017Inventors: Andrew Evan Gruber, Pramod Vasant Argade, Jing Wu
-
Patent number: 9645792Abstract: At least one processor may emulate a fused multiply-add operation for a first operand, a second operand, and a third operand. The at least one processor may determine an intermediate value based at least in part on multiplying the first operand with the second operand, determine at least one of an upper intermediate value or a lower intermediate value, wherein determining the upper intermediate value comprises rounding, towards zero, the intermediate value by a specified number of bits, and wherein determining the lower intermediate value comprises subtracting the intermediate value by the upper intermediate value, determine an upper value and a lower value based at least in part on adding or subtracting the third operand to one of the upper intermediate value or the lower intermediate value, and determine an emulated fused multiply-add result by adding the upper value and the lower value.Type: GrantFiled: August 18, 2014Date of Patent: May 9, 2017Assignee: QUALCOMM IncorporatedInventors: Pramod Vasant Argade, Andrew Evan Gruber, Chiente Ho, Stewart Griffin Hall, Lin Chen
-
Publication number: 20160048374Abstract: At least one processor may emulate a fused multiply-add operation for a first operand, a second operand, and a third operand. The at least one processor may determine an intermediate value based at least in part on multiplying the first operand with the second operand, determine at least one of an upper intermediate value or a lower intermediate value, wherein determining the upper intermediate value comprises rounding, towards zero, the intermediate value by a specified number of bits, and wherein determining the lower intermediate value comprises subtracting the intermediate value by the upper intermediate value, determine an upper value and a lower value based at least in part on adding or subtracting the third operand to one of the upper intermediate value or the lower intermediate value, and determine an emulated fused multiply-add result by adding the upper value and the lower value.Type: ApplicationFiled: August 18, 2014Publication date: February 18, 2016Inventors: Pramod Vasant Argade, Andrew Evan Gruber, Chiente Ho, Stewart Griffin Hall, Lin Chen
-
Publication number: 20160019027Abstract: At least one processor may receive components of a vector, wherein each of the components of the vector comprises at least an exponent. The at least one processor may further determine a maximum exponent out of respective exponents of the components of the vector, and may determine a scaling value based at least in part on the maximum exponent. An arithmetic logic unit of the at least one processor may scale the vector, by subtracting the scaling value from each of the respective exponents of the components of the vector.Type: ApplicationFiled: July 15, 2014Publication date: January 21, 2016Inventors: Lin Chen, Andrew Evan Gruber, Guofang Jiao, Chiente Ho, Pramod Vasant Argade
-
Publication number: 20080295114Abstract: A method for execution control of a user application program utilizing control program and management software is provided. This execution control is provided without a need to modify or recompile the user application program. The invention provides ability to save states during the execution of an application program and provides a means to jump between them. The invention also provides a means for multiple remote users to interact with the user program and also provide means to control the user application via script and share common portions of execution among multiple execution instances of the same user application program. The invention enables attaching a debugger to a state, maintaining debug context for all the saved states, and means to jump to a state saved at an earlier point in execution to help debug user application programs.Type: ApplicationFiled: May 7, 2008Publication date: November 27, 2008Inventors: Pramod Vasant Argade, Shridhar Narayan Daithankar
-
Patent number: 6151386Abstract: In a telephone answering system, announcements are pre-recorded to elicit from a caller one or more attributes and details of a message. Such attributes may include the identity of the caller, the purpose of the call, etc. Information concerning each attribute of the message is stored in the system separate from the message details. By reviewing at least one attribute of each message saved on the system, the called party is able to identify any messages of interest before listening to any message details. The called party may then retrieve the message details of each identified message.Type: GrantFiled: February 5, 1997Date of Patent: November 21, 2000Assignee: Lucent Technologies Inc.Inventor: Pramod Vasant Argade
-
Patent number: 5724505Abstract: A digital microprocessor having a processor core is provided with trace recording hardware capable of receiving, analyzing and temporarily storing data indicative of program instructions (i.e., instruction types) executed by the processor core and of their respective addresses. The trace recording hardware outputs an abbreviated real-time program trace, containing minimum data necessary to reconstruct a full program trace, via a JTAG port to an external debug host computer where a user may reconstruct the full program trace with reference to a program listing. The abbreviation scheme used by the trace recording hardware is preferably achieved by comparing instruction types received from the processor core to at least one pre-defined instruction type, and abbreviating or discarding the corresponding address information as a function of the particular instruction type. The trace recording hardware may be set into one of two modes by the user.Type: GrantFiled: May 15, 1996Date of Patent: March 3, 1998Assignee: Lucent Technologies Inc.Inventors: Pramod Vasant Argade, Michael Richard Betker, Shaun Patrick Whalen
-
Patent number: 5651055Abstract: A telephone answering machine and method of use utilizes speech recognition to identify a caller from a pre-defined list of possible callers. The list may be generated by various input techniques, including a spoken voice at the called party's location, and keyboard or graphical input techniques. If the caller is identified as being on the list, the machine allows the call to progress along a first sequence, which includes ringing the called phone. If the called phone does not answer, the first sequence may provide for responding with a customized message for the calling party. If the caller is not identified as being on the list, the machine allows the call to progress along a second sequence, which includes responding with a standard recorded message. In either case, the caller is typically allowed to record a message for the called party. Additional pre-defined lists may be provided, as for determining the context of a call.Type: GrantFiled: June 29, 1995Date of Patent: July 22, 1997Assignee: Lucent Technologies Inc.Inventor: Pramod Vasant Argade